background preloader


Facebook Twitter

Spring and Angular JS: A Secure Single Page Application. This article originally appeared on the Spring blog, authored by Dave Syer In this article we show some nice features of Spring Security, Spring Boot and Angular JS working together to provide a pleasant and secure user experience.

Spring and Angular JS: A Secure Single Page Application

It should be accessible to beginners with Spring and Angular JS, but there also is plenty of detail that will be of use to experts in either. This is actually the first in a series of articles on Spring Security and Angular JS, with new features exposed in each one successively. We’ll improve on the application in the second and subsequent installments, but the main changes after this are architectural rather than functional.

Spring and the Single Page Application HTML5, rich browser-based features, and the “single page application” are extremely valuable tools for modern developers, but any meaningful interactions will involve a backend server, so as well as static content (HTML, CSS and JavaScript) we are going to need a backend server. Let's Build an AngularJS App! 0inShare [Recently] I had the pleasure of attending the Atlanta Code Camp.

Let's Build an AngularJS App!

It was a fantastic venue with sold out attendance and a variety of speakers covering cutting edge topics. I always try to submit a variety of topics but due to popularity, AngularJS won again! I've watched many talks that break down various facets of Angular and even some live coding demonstrations, but realized there haven't been many that cover building an actual, functional app with unit tests.

I structured the talk so that I could easily go from start to finish in stages. Here is the deck. Part Deux: A Google Calendar Gadget in Angular.js. I was on a project recently where the team was faced with a daunting list of scheduling-related backlog stories.

Part Deux: A Google Calendar Gadget in Angular.js

When looking at the entire feature, about 20% of these stories dealt with custom functionality and 80% of them dealt with issues that are common to any scheduling or calendar application: start times, end times, visibility/privacy, conflicts, notifications, etc etc. When I asked for more specific requirements on these stories, the answer was – either directly or indirectly – along the lines of “we want it to work just like Google (or Outlook) calendar.” That made sense, because those calendars work the way you would expect any calendar to work.

If code can “smell,” then so can user stories. Like any developer who has ever been asked to build something that works exactly like Facebook, I would prefer to invent something new and useful, not something unoriginal and redundant. The Proof of Concept The Google Calendar API Google Calendar has been around since 2006. Lessons Learned. AngularJS UI Development. AngularJS and its rich set of components solve many of the problems developers face when writing reliable single page applications in ways that would not be possible using other frameworks.

AngularJS UI Development

This book will help you expand your horizons by teaching you the skills needed to successfully design, customize, build, and deliver real-world applications in AngularJS. We will start off by setting up a fully automated environment to quickly scaffold, test, and deploy any application. Kickstart Your AngularJS Development with Yeoman, Grunt and Bower. Whether you love or hate it, there’s no denying that AngularJS is the framework on every developer’s lips.

Kickstart Your AngularJS Development with Yeoman, Grunt and Bower

It may not be for everybody, but AngularJS has a quirky, efficient and powerful feature set. Angular directives for Bootstrap. The $uibPosition service provides a set of DOM utilities used internally to absolute-position an element in relation to another element (tooltips, popovers, typeaheads etc...). getRawNode(element) Takes a jQuery/jqLite element and converts it to a raw DOM element. parameters element(Type: object) - The element to convert. returns (Type: element) - A raw DOM element.

Angular directives for Bootstrap

Authentication in Single Page Applications with Angular.js Part 2. As you may have gathered from the title, this is a follow-up to a post I wrote a some time ago regarding role-based authentication/authorization in single page applications.

Authentication in Single Page Applications with Angular.js Part 2

This time I'd like to highlight how I implemented routing and authorization in the Node.js server that complements my Angular client. Since you can never trust that the client code hasn’t been tampered with by the user, it’s paramount to have a good authentication/authorization strategy on the server. The client-side auth scheme I introduced earlier is simply a convenient way to customize the user interface – proper authentication/authorization should always be left up to the server-side. I am using Node.js/Express along with the excellent Passport.js authentication middleware, but hopefully it shouldn't be too much bother to apply the same patterns to other server-side frameworks.

You can see an example of this scheme implemented in this GitHub repo, and I have a live version of it running on Heroku. Project layout. How to Learn AngularJS - Your AngularJS Sherpa. Learning AngularJS can be complex.

How to Learn AngularJS - Your AngularJS Sherpa

There are an overwhelming number resources available on the web. The blog posts can be conflicting and confusing, and a simple google search can turn up 5 articles all describing the same thing in a completely different way. This guide is written to be your roadmap; your personal guide of how to learn AngularJS. We’ll we’ll through the basic concepts of AngularJS in a logical, conceptual order.

AngularJS Best Practices: I’ve Been Doing It Wrong! Part 1 of 3. Three sanity-preserving ideas that will make me and you 10x more productive with real-world AngularJS applications.

AngularJS Best Practices: I’ve Been Doing It Wrong! Part 1 of 3

This is the first in a three-part series on practical large-scale development with AngularJS. The TL;DR version is at the end of the article. I’ve been working on a large webapp that uses AngularJS for a few months now. As many developers who pick up new things as they go do, I started with the tutorial (in the state it was a few month ago), adapted the parts of its code I understood into the app, and grew it from there, gradually adding and changing the code, which over time became harder and harder to manage. Lightweight Angular.js, Javascript Wysiwyg/Text-Editor. Learning AngularJS by Example – The Customer Manager Application - Dan Wahlin. I’m always tinkering around with different ideas and toward the beginning of 2013 decided to build a sample application using AngularJS that I call Customer Manager.

Learning AngularJS by Example – The Customer Manager Application - Dan Wahlin

It’s not exactly the most creative name or concept, but I wanted to build something that highlighted a lot of the different features offered by AngularJS and how they could be used together to build a full-featured app. One of the goals of the application was to ensure that it was approachable by people new to Angular since I’ve never found overly complex applications great for learning new concepts. AngularJS. 10 Reasons Web Developers Should Learn AngularJS. There is no doubt that AngularJS – the self-proclaimed “superheroic JavaScript framework” – is gaining traction. I’ll refer to it frequently as just “Angular” in this post. I’ve had the privilege on working on an enterprise web application with a large team (almost 10 developers, soon growing to over 20) using Angular for over half of a year now.

What’s even more interesting is that we started with a more traditional MVC/SPA approach using pure JavaScript and KnockoutJS before we switched over to using the power-packed combination of TypeScript and Angular. It’s important to note that we added comprehensive testing using Jasmine but overall the team agrees the combination of technologies has increased our quality and efficiency: we are seeing far fewer bugs and delivering features far more quickly. Executive Summary: If you are familiar with Angular, this post may give you some ideas to think about you hadn’t encountered before. 1. 2. Picture Credit: Piotr Siedlecki 3. 4. 5. 6. 8. Angular Tips. Kickstart Your AngularJS Development with Yeoman, Grunt and Bower. Brian Ford. The AngularJS documentation is great for getting started and for looking up specific API calls.

However, it doesn't really tell you how to organize and manage your app as it grows to tens or hundreds of thousands of lines of code. I've collected here some of my observations and best practices for how to manage your sprawling application. First we'll take a look at organization, then move on to some tips on improving performance, and conclude with a brief summary on tools, servers, and build processes. While this post will focus on big apps in particular, there's a great video on YouTube from the December 2012 AngularJS meetup on best practices that's also worth checking out. Don't Write a Huge App The best advice about huge apps is not to make them. Organization Probably the biggest question with large apps is where to put all of that code.

Directories. A Better Way to Learn AngularJS. Congratulations on taking the plunge! This AngularJS course is built with the intent of exposing you to the best available resources on each Angular topic. Our desire is to present these topics richly, and from a variety of vantage points, in order to afford you a more complete perspective on them. The learning curve of AngularJS can be described as a hockey stick. Initially getting off the ground with apps featuring basic functionality is delightfully easy. However, when apps eventually grow large or complicated, structure without heed to Angular’s inner workings will cause development to become awkward and cumbersome.

With AngularJS, the “Ready, Fire, Aim” learning methodology of duct taping together a handful of tutorials and a cursory glance through the documentation will lead to confusion and frustration. Since AngularJS is still in its infancy relative to other JavaScript frameworks, the number of encyclopaedic resources on it is still insufficient. 7 Ways to be Successful with AngularJS. After learning and building a few projects in AngularJS, I’ve distilled my experience into these 7 ways to be successful with your AngularJS project. 1) Use Grunt.

Ultimate guide to learning AngularJS in one day. What is AngularJS? Angular is a client-side MVC/MVVM framework built in JavaScript, essential for modern single page web applications (and even websites). It's a huge leap into the future of HTML and what HTML5 brings, and is a breath of fresh air when dealing with the modern web.