Hi Billy, yeah, that's a good read too! Didn't read it front to back, but read 
parts when needed. The accompanying video series is worth watching - building 
out an email client if I have the right title to video accessories from memory. 
Still learning every day, and I was definitely reassured to see your list of 
recommendations as they matched my own experiences with best resources 
discovered to date. Thanks for sharing.



On 26 Apr 2014, at 13:22, Billy Figueroa <[email protected]> wrote:

> Thanks Richard I ll have to look into that book with the longest title ever 
> lol
> 
> Right now I m about 1/3 of the way through "ng-book"
> 
> On Friday, April 25, 2014 11:35:57 PM UTC-4, Richard Seldon wrote:
> Billy, 
> 
> Nice recommendations list - certainly all links that I used in the early days 
> too (2 months ago, lol). Was tasked with writing a large scale production 
> system using Angular recently, i found those resources good for getting some 
> ideas. The David Mosher video on security was nice as a starting point.
> 
> However, to take things further, and actually get productive writing a robust 
> commercial application, I'd like to add two more resources:
> 
> 1). PluralSight training videos - there are some excellent video and 
> downloadable code resources here. Set up a free trial account to get a sense 
> of what it is all about. See the Joe Eames course on MEAN Stack - even if 
> only interested in the Angular sections.
> 
> 2). The book "Mastering Web Application Development with AngularJS -Build 
> single-page web applications using the power of AngularJS" by Pawel Kozlowski 
> and Peter Bacon Darwin is a must read imho. (I think the authors might 
> contribute to this forum occasionally too...) That covers security in depth, 
> Internationalization, and especially how to structure a larger application 
> and break it up into testable Modules. This is where I find not enough 
> attention - you can study endless small hello world type applications but 
> until you write a sizeable application don't get a sense of what works and 
> what doesn't in terms of project structure. This book provided one way to do 
> it that works. Perhaps even more valuable is the source code example 
> application that accompanies the book - available for download 
> athttp://www.packtpub.com/support  Lots of nice, easy to copy approaches that 
> likely many projects can benefit from. Since I was writing a MEAN stack 
> application, the code had even more relevance as some of the server side 
> concepts were also valuable.
> 
> Cheers,
> 
> 
> 
> 
> On 26 Apr 2014, at 12:24, Joberto Diniz <[email protected]> wrote:
> 
>> Nice stuff, thanks.
>> Well, actually all the user management is done by https://www.userapp.io/ 
>> which has built-in angular library. So I decided to give it a try instead of 
>> write my own.
>> 
>> On Saturday, April 26, 2014 12:17:03 AM UTC-3, Billy Figueroa wrote:
>> Checkout this link
>> 
>> https://github.com/jmcunningham/AngularJS-Learning
>> 
>> and read through the authentication tutorials. It will give you a better 
>> idea than anything I can describe here.
>> 
>> also look for examples of Dan Wahlin's sample app. Here it is...
>> 
>> https://github.com/DanWahlin/CustomerManagerStandard/tree/master/CustomerManager/app/customersApp
>> 
>> look through his AuthService and inspect the app.js file to see how he uses 
>> a service to keep track of if users are signed in
>> 
>> There are a few things to keep track off. You will most likely need to do 
>> your handling of the data on the back end for sessions etc. You could do it 
>> on the front end but its not as secure. So you will need some service to 
>> create some sort of session or cookie with (i.e. php) or some other way 
>> (node etc). Then you will have to write logic to restrict which routes an 
>> authenticated user vs non authenticated user can view.
>> 
>> Next you have to understand that angular will not persist data by default. 
>> If someone reloads or refreshes their page while they are "signed in" their 
>> data will disapear so you will have to keep track of this your self on the 
>> sever side or use some sort of library to persist the data on the front end 
>> (i.e. localStorage, webStorage, breeze.js, persistence.js etc)
>> 
>> overall, I m not sure how "fast" you need to get this done but angular 
>> forces you to think differently than you are probably used to when writing 
>> apps. Take some time to read through some of those links in the github 
>> learning angularjs or go to egghead.io and watch their screencast tutorials.
>> 
>> You can also watch David Mosher's videos on youtube
>> 
>> https://www.youtube.com/user/vidjadavemo/videos
>> 
>> or this introduction video by Dan Wahlin
>> 
>> https://www.youtube.com/watch?v=i9MHigUZKEM
>> 
>> its prob the best video to start 
>> 
>> 
>> https://github.com/DanWahlin/CustomerManagerStandard/tree/master/CustomerManager/app/customersApp
>> 
>> On Friday, April 25, 2014 8:47:20 PM UTC-4, Joberto Diniz wrote:
>> How do you guys handle this public site -> login -> logged site steps in a 
>> SPA application?
>> Am I in the wrong direction here?
>> 
>> On Friday, April 25, 2014 2:36:38 PM UTC-3, Joberto Diniz wrote:
>> Hi. My question is quite simple, and what I found out so far didn't delight 
>> me.
>> I have an Index.html that is the main page for logged users. Inside it there 
>> is a menu and ng-view directive that handles the partials. That's fine.
>> However, when the user Is not logged, I show the Home.html partial, but this 
>> html is completely different from Index.html. It shouldn't be rendered in 
>> the ng-view. It should be rendered like a normal page. The same applies for 
>> the Login.html. It's completely different, that is, there are no nav bar. 
>> The structure is different, and use ng-hide/show seems awkward.
>> 
>> What should I do?
>> 
>> app.js
>> var scoreApp = angular.module('scoreApp', ['ngRoute', 'angularMoment', 
>> 'UserApp', 'UserApp.facebook-picture', 'ui.bootstrap', 'underscore'])
>>     .config(['$routeProvider', '$locationProvider', function 
>> ($routeProvider, $locationProvider) {
>>         $routeProvider.when('/', { templateUrl: '/app/partials/Home.html', 
>> public: true });
>>         $routeProvider.when('/Votacao', { templateUrl: 
>> '/app/partials/Voting.html', controller: 'VotingController' });
>>         $routeProvider.when('/Login', { templateUrl: 
>> '/app/partials/Login.html', login: true });
>>         $routeProvider.otherwise({ redirectTo: '/' });
>>         $locationProvider.html5Mode(true);
>>     }])
>> 
>> Index.html
>> <!DOCTYPE html>
>> <html lang="pt-br" ng-app="scoreApp">
>> <head>
>>     <meta charset="utf-8" />
>>     <title>Awesome Score App</title>
>>     <meta name="viewport" content="width=device-width, initial-scale=1.0" />
>> 
>>     <link 
>> href="//netdna.bootstrapcdn.com/bootstrap/3.1.1/css/bootstrap.min.css" 
>> rel="stylesheet" />
>>     <link 
>> href="//netdna.bootstrapcdn.com/font-awesome/4.0.3/css/font-awesome.css" 
>> rel="stylesheet" />
>>     <link href="//fonts.googleapis.com/css?family=Open+Sans:400,300" 
>> rel="stylesheet" />
>>     <link href="app/css/bootstrap-social.css" rel="stylesheet" />
>>     <link href="app/css/app.css" rel="stylesheet" />
>> </head>
>> <body>
>>     <div class="container">
>>         <nav class="navbar navbar-default navbar-fixed-top ng-cloak" 
>> role="navigation" ng-cloak ng-controller="MenuController">
>>             <div class="navbar-header">
>>                 <a class="navbar-brand" href="/">Score App</a>
>>             </div>
>>             <div class="navbar-collapse collapse">
>>                 <ul class="nav navbar-nav" ng-show="user.authenticated">
>>                     <li><a href="/Votacao">Votação <span class="badge" 
>> ng-hide="scoresToVote == 0">{{scoresToVote}}</span></a></li>
>>                 </ul>
>>                 <ul class="nav pull-right" style="margin-right:10px;" 
>> ng-show="user.authenticated">
>>                     <li class="dropdown">
>>                         <a class="dropdown-toggle" data-toggle="dropdown" 
>> href="#">
>>                             <img class="nav-user-photo" ua-facebook-picture 
>> />
>>                             <span class="user-info">
>>                                 {{user.first_name}}
>>                             </span>
>>                             <i class="fa fa-caret-down"></i>
>>                         </a>
>>                         <ul class="dropdown-menu">
>>                             <li><a href="#" ua-logout><i class="fa 
>> fa-power-off"></i>Logout</a></li>
>>                         </ul>
>>                     </li>
>>                 </ul>
>>             </div>
>>         </nav>
>> 
>>         <ng-view></ng-view>
>> 
>>     </div>
>> 
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "AngularJS" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email [email protected].
>> To post to this group, send email to [email protected].
>> Visit this group at http://groups.google.com/group/angular.
>> For more options, visit https://groups.google.com/d/optout.
> 
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "AngularJS" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/angular.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"AngularJS" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/angular.
For more options, visit https://groups.google.com/d/optout.

Reply via email to