About the Author |
|
xiii | |
About the Technical Reviewer |
|
xv | |
Acknowledgments |
|
xvii | |
|
Chapter 1 Code Dependencies |
|
|
1 | (26) |
|
|
1 | (10) |
|
|
3 | (4) |
|
|
7 | (1) |
|
|
7 | (3) |
|
|
10 | (1) |
|
|
11 | (1) |
|
|
12 | (1) |
|
|
13 | (1) |
|
|
14 | (1) |
|
|
14 | (1) |
|
Integrated Development Environment |
|
|
15 | (10) |
|
Installing a Free Open Source IDE |
|
|
22 | (2) |
|
|
24 | (1) |
|
|
25 | (2) |
|
Chapter 2 Rollout Servers |
|
|
27 | (24) |
|
|
27 | (4) |
|
SSH Connection and Upgrade Servers |
|
|
31 | (2) |
|
Install and Update Software |
|
|
33 | (2) |
|
|
34 | (1) |
|
|
34 | (1) |
|
|
34 | (1) |
|
|
35 | (1) |
|
|
35 | (4) |
|
|
36 | (1) |
|
Create IPs and Associate Servers |
|
|
37 | (1) |
|
|
37 | (1) |
|
|
38 | (1) |
|
|
39 | (3) |
|
|
40 | (1) |
|
Install and Configure MongoDB Database |
|
|
40 | (1) |
|
|
41 | (1) |
|
|
42 | (8) |
|
Connect to Database and Dump MySQL Database |
|
|
44 | (2) |
|
|
46 | (1) |
|
Create Your First Database and Table |
|
|
47 | (3) |
|
|
50 | (1) |
|
|
51 | (24) |
|
|
51 | (1) |
|
|
52 | (6) |
|
|
57 | (1) |
|
|
57 | (1) |
|
|
57 | (1) |
|
|
58 | (1) |
|
|
58 | (1) |
|
|
58 | (1) |
|
Create Your Own First Node Modules |
|
|
59 | (4) |
|
Create a GitHub Project Repository |
|
|
59 | (1) |
|
|
59 | (1) |
|
|
60 | (1) |
|
|
61 | (2) |
|
|
63 | (1) |
|
|
64 | (1) |
|
|
64 | (2) |
|
Configure Package.json File |
|
|
66 | (2) |
|
|
67 | (1) |
|
Create Markdown Home Page File |
|
|
68 | (2) |
|
Markdown Plugin in WebStorm |
|
|
70 | (1) |
|
|
70 | (3) |
|
|
73 | (2) |
|
Chapter 4 Cordova, PhoneGap & Ionic |
|
|
75 | (26) |
|
|
75 | (11) |
|
|
76 | (1) |
|
Running Your App in Cordova |
|
|
77 | (2) |
|
Cordova Platform Deployment |
|
|
79 | (3) |
|
|
82 | (4) |
|
|
86 | (1) |
|
|
86 | (7) |
|
|
86 | (1) |
|
Install PhoneGap Mobile App |
|
|
87 | (1) |
|
|
87 | (1) |
|
Preview Your PhoneGap App |
|
|
88 | (1) |
|
|
89 | (4) |
|
|
93 | (7) |
|
|
96 | (1) |
|
|
96 | (1) |
|
|
96 | (3) |
|
|
99 | (1) |
|
|
100 | (1) |
|
|
100 | (1) |
|
|
101 | (30) |
|
|
102 | (2) |
|
|
104 | (1) |
|
|
105 | (3) |
|
|
108 | (1) |
|
|
108 | (1) |
|
|
109 | (5) |
|
|
114 | (3) |
|
Template Expanding Directive |
|
|
115 | (2) |
|
|
117 | (1) |
|
|
118 | (1) |
|
|
118 | (10) |
|
|
118 | (6) |
|
|
124 | (1) |
|
|
124 | (4) |
|
|
128 | (1) |
|
|
129 | (1) |
|
|
129 | (2) |
|
Chapter 6 CSS, Bootstrap, & Responsive Design |
|
|
131 | (34) |
|
CSS Classes Used by AngularJS |
|
|
131 | (33) |
|
|
132 | (1) |
|
|
132 | (2) |
|
ng-dirty, ng-invalid, and ng-pristine |
|
|
134 | (3) |
|
|
137 | (1) |
|
|
138 | (5) |
|
Creating a Custom UI Bootstrap Build |
|
|
143 | (1) |
|
|
144 | (3) |
|
Responsive CSS Media Queries |
|
|
147 | (4) |
|
CSS Responsive Design Utilizing a Break Point |
|
|
151 | (6) |
|
Bootstrap Responsive Tables |
|
|
157 | (3) |
|
Bootstrap CSS Common Styles |
|
|
160 | (2) |
|
Angular-Responsive Library |
|
|
162 | (2) |
|
|
164 | (1) |
|
Chapter 7 Write Services Once |
|
|
165 | (32) |
|
|
165 | (3) |
|
|
165 | (2) |
|
|
167 | (1) |
|
|
168 | (1) |
|
Pugjs, Previously Known as Jade |
|
|
168 | (10) |
|
Setting Up a Service Layer |
|
|
170 | (2) |
|
Setting Up a POST Service |
|
|
172 | (2) |
|
MongoDB Database Integration |
|
|
174 | (2) |
|
|
176 | (1) |
|
|
177 | (1) |
|
Read Results from MongoDB into our Express App |
|
|
178 | (2) |
|
|
178 | (1) |
|
|
178 | (1) |
|
|
179 | (1) |
|
|
180 | (2) |
|
|
180 | (1) |
|
|
180 | (1) |
|
Update Users Service to Include Socket.IO |
|
|
181 | (1) |
|
Retrieve a Socket.IO Event Using MongoDB Results |
|
|
182 | (1) |
|
|
182 | (1) |
|
|
182 | (12) |
|
|
185 | (1) |
|
|
186 | (2) |
|
Creating a MongoDB GUI Client |
|
|
188 | (1) |
|
Connect Front-End Application to Service |
|
|
189 | (4) |
|
|
193 | (1) |
|
node-email-templates Library |
|
|
194 | (2) |
|
|
196 | (1) |
|
|
197 | (24) |
|
Config AngularJS Redirect Settings |
|
|
197 | (6) |
|
Start a New AngularJS Seed Project |
|
|
197 | (1) |
|
AngularJS HTML Mode and Hashbang |
|
|
198 | (5) |
|
|
203 | (7) |
|
Install and Config PhantomJS |
|
|
203 | (1) |
|
|
204 | (1) |
|
|
205 | (4) |
|
|
209 | (1) |
|
|
210 | (1) |
|
|
210 | (6) |
|
Update Metadata Using a Service Module |
|
|
211 | (2) |
|
Update Metadata with ngMeta |
|
|
213 | (3) |
|
|
216 | (1) |
|
|
216 | (1) |
|
Robots Exclusion Protocol |
|
|
216 | (1) |
|
|
216 | (1) |
|
|
217 | (1) |
|
|
217 | (2) |
|
|
218 | (1) |
|
Ensure Successful Page Submission |
|
|
219 | (1) |
|
|
219 | (2) |
|
|
221 | (28) |
|
|
221 | (5) |
|
Create a New Node.js Module |
|
|
221 | (2) |
|
|
223 | (1) |
|
Compile a Browserify Bundle File |
|
|
223 | (1) |
|
Using a Node.js Module in an AngularJS Project |
|
|
224 | (2) |
|
|
226 | (3) |
|
|
227 | (1) |
|
Setting Babel in WebStorm |
|
|
227 | (1) |
|
|
228 | (1) |
|
|
229 | (5) |
|
|
229 | (1) |
|
Install Grunt Babel Plugins |
|
|
230 | (1) |
|
|
230 | (1) |
|
Grunt Babelify & Browserify Task |
|
|
231 | (2) |
|
|
233 | (1) |
|
|
234 | (2) |
|
Differences Between Grunt and Gulp |
|
|
234 | (1) |
|
|
234 | (1) |
|
|
235 | (1) |
|
|
236 | (1) |
|
|
236 | (1) |
|
|
236 | (4) |
|
|
236 | (1) |
|
Creating Webpack Config File |
|
|
237 | (1) |
|
|
237 | (1) |
|
Webpack Transpiling ES6 Code |
|
|
238 | (1) |
|
|
239 | (1) |
|
|
240 | (7) |
|
Installing Vagrant & Virtual Machine |
|
|
241 | (1) |
|
|
242 | (1) |
|
|
243 | (2) |
|
|
245 | (1) |
|
Provision AngularJS Projects |
|
|
246 | (1) |
|
|
247 | (2) |
|
Chapter 10 Platform Deployment |
|
|
249 | (32) |
|
|
249 | (7) |
|
Connect to Node.js Ubuntu Server |
|
|
250 | (1) |
|
|
251 | (3) |
|
|
254 | (2) |
|
|
256 | (9) |
|
Web Deployment with Grunt |
|
|
259 | (1) |
|
|
260 | (3) |
|
Web Deployment with Webpack |
|
|
263 | (2) |
|
|
265 | (1) |
|
|
265 | (1) |
|
|
266 | (1) |
|
Build Your App on Different Platforms |
|
|
266 | (3) |
|
|
269 | (5) |
|
Creating an Ionic Project |
|
|
270 | (1) |
|
Set Up Ionic Project in WebStorm |
|
|
270 | (1) |
|
|
270 | (1) |
|
|
271 | (1) |
|
|
271 | (3) |
|
Continuous Integration with Travis CI |
|
|
274 | (5) |
|
|
274 | (1) |
|
Integration of Travis CI and GitHub Projects |
|
|
275 | (2) |
|
Customize and Configure Travis CI |
|
|
277 | (1) |
|
Generating a Status Badge on Travis CI |
|
|
277 | (2) |
|
|
279 | (2) |
Index |
|
281 | |