Mastering JavaScript Single Page Application Development

An in-depth guide to exploring the design, architecture, and techniques behind building sophisticated, scalable, and maintainable single-page applications in JavaScript
Preview in Mapt

Mastering JavaScript Single Page Application Development

Philip Klauzinski, John Moore

4 customer reviews
An in-depth guide to exploring the design, architecture, and techniques behind building sophisticated, scalable, and maintainable single-page applications in JavaScript
Mapt Subscription
FREE
$29.99/m after trial
eBook
$25.20
RRP $35.99
Save 29%
Print + eBook
$44.99
RRP $44.99
What do I get with a Mapt Pro subscription?
  • Unlimited access to all Packt’s 5,000+ eBooks and Videos
  • Early Access content, Progress Tracking, and Assessments
  • 1 Free eBook or Video to download and keep every month after trial
What do I get with an eBook?
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with Print & eBook?
  • Get a paperback copy of the book delivered to you
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with a Video?
  • Download this Video course in MP4 format
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
$0.00
$25.20
$44.99
$29.99p/m after trial
RRP $35.99
RRP $44.99
Subscription
eBook
Print + eBook
Start 30 Day Trial

Frequently bought together


Mastering JavaScript Single Page Application Development Book Cover
Mastering JavaScript Single Page Application Development
$ 35.99
$ 25.20
Mobile Application Development: JavaScript Frameworks Book Cover
Mobile Application Development: JavaScript Frameworks
$ 59.99
$ 42.00
Buy 2 for $35.00
Save $60.98
Add to Cart
Subscribe and access every Packt eBook & Video.
 
  • 5,000+ eBooks & Videos
  • 50+ New titles a month
  • 1 Free eBook/Video to keep every month
Start Free Trial
 

Book Details

ISBN 139781785881640
Paperback452 pages

Book Description

Single-page web applications—or SPAs, as they are commonly referred to—are quickly becoming the de facto standard for web app development. The fact that a major part of the app runs inside a single web page makes it very interesting and appealing. Also, the accelerated growth of browser capabilities is pushing us closer to the day when all apps will run entirely in the browser.

This book will take your JavaScript development skills to the next level by teaching you to create a single-page application within a full-stack JavaScript environment. Using only JavaScript, you can go from being a front-end developer to a full-stack application developer with relative ease.

You will learn to cross the boundary from front-end development to server-side development through the use of JavaScript on both ends. Use your existing knowledge of JavaScript by learning to manage a JSON document data store with MongoDB, writing a JavaScript powered REST API with Node.js and Express, and designing a front-end powered by AngularJS.

This book will teach you to leverage the MEAN stack to do everything from document database design, routing REST web API requests, data-binding within views, and adding authentication and security to building a full-fledged, complex, single-page web application.

In addition to building a full-stack JavaScript app, you will learn to test it with JavaScript-powered testing tools such as Mocha, Karma, and Jasmine. Finally, you will learn about deployment and scaling so that you can launch your own apps into the real world.

Table of Contents

Chapter 1: Getting Organized with NPM, Bower, and Grunt
What is Node Package Manager?
Bower
Grunt
Summary
Chapter 2: Model-View-Whatever
The original MVC pattern
MVP and MVVM
VIPER and other variations of MVW
AngularJS and MVW
Using the MVW pattern in an SPA
Summary
Chapter 3: SPA Essentials – Creating the Ideal Application Environment
The JSON data format
The differences between SQL and NoSQL databases
When to use SQL versus NoSQL databases
Methods of presenting an SPA container
Managing layouts
Summary
Chapter 4: REST is Best – Interacting with the Server Side of Your App
Understanding the fundamentals of REST
Benefits of REST
RESTful web services
Writing basic REST API endpoints
Alternatives to REST
Summary
Chapter 5: Its All About the View
JavaScript templating engines
Underscore.js
Mustache.js
Handlebars.js
Other differences in Handlebars from Mustache templates
Pure.js
Pug
Embedded JavaScript (EJS)
Optimizing your application layout
Summary
Chapter 6: Data Binding, and Why You Should Embrace It
What is data binding?
Data binding with modern JavaScript frameworks
Implementing data binding with native JavaScript
Why use data binding?
Summary
Chapter 7: Leveraging the MEAN Stack
The Node.js environment
Getting started with Express
Exploring MongoDB
Starting with AngularJS
Summary
Chapter 8: Managing Data Using MongoDB
Exploring the NoSQL database model
Commanding MongoDB
Incorporating MongoDB into the SPA
MongoDB database performance
Summary
Chapter 9: Handling Web Requests with Express
Examining Express in detail
Developing a RESTful API
Summary
Chapter 10: Displaying Views
Setting up our dashboard
Implementing AngularJS
Talking to the backend
Summary
Chapter 11: Adding Security and Authentication
Adding authentication with Passport
Authenticating requests
Securing Express
Summary
Chapter 12: Connecting the App to Social Media
Connecting to Facebook
Connecting to Twitter
Sharing giftlists
Summary
Chapter 13: Testing with Mocha, Karma, and More
Types of testing
Summary
Chapter 14: Deploying and Scaling the SPA
Packaging for deployment
Setting up a cloud database
Deploying the application to Heroku
Scaling the SPA
Summary

What You Will Learn

  • Organize your development environment using the command line with NPM, Bower, and Grunt
  • Choose an accurate design pattern for your app
  • Understand modular JavaScript programming and Node.js
  • interact with a REST API using JavaScript and AJAX with practical examples
  • Build a single page application using the MEAN stack
  • Connect your app across popular social media platforms such as Facebook, Twitter, and LinkedIn
  • Test your app, both on the server side and in views
  • Prepare your app for the real world and deploy it to Heroku

Authors

Table of Contents

Chapter 1: Getting Organized with NPM, Bower, and Grunt
What is Node Package Manager?
Bower
Grunt
Summary
Chapter 2: Model-View-Whatever
The original MVC pattern
MVP and MVVM
VIPER and other variations of MVW
AngularJS and MVW
Using the MVW pattern in an SPA
Summary
Chapter 3: SPA Essentials – Creating the Ideal Application Environment
The JSON data format
The differences between SQL and NoSQL databases
When to use SQL versus NoSQL databases
Methods of presenting an SPA container
Managing layouts
Summary
Chapter 4: REST is Best – Interacting with the Server Side of Your App
Understanding the fundamentals of REST
Benefits of REST
RESTful web services
Writing basic REST API endpoints
Alternatives to REST
Summary
Chapter 5: Its All About the View
JavaScript templating engines
Underscore.js
Mustache.js
Handlebars.js
Other differences in Handlebars from Mustache templates
Pure.js
Pug
Embedded JavaScript (EJS)
Optimizing your application layout
Summary
Chapter 6: Data Binding, and Why You Should Embrace It
What is data binding?
Data binding with modern JavaScript frameworks
Implementing data binding with native JavaScript
Why use data binding?
Summary
Chapter 7: Leveraging the MEAN Stack
The Node.js environment
Getting started with Express
Exploring MongoDB
Starting with AngularJS
Summary
Chapter 8: Managing Data Using MongoDB
Exploring the NoSQL database model
Commanding MongoDB
Incorporating MongoDB into the SPA
MongoDB database performance
Summary
Chapter 9: Handling Web Requests with Express
Examining Express in detail
Developing a RESTful API
Summary
Chapter 10: Displaying Views
Setting up our dashboard
Implementing AngularJS
Talking to the backend
Summary
Chapter 11: Adding Security and Authentication
Adding authentication with Passport
Authenticating requests
Securing Express
Summary
Chapter 12: Connecting the App to Social Media
Connecting to Facebook
Connecting to Twitter
Sharing giftlists
Summary
Chapter 13: Testing with Mocha, Karma, and More
Types of testing
Summary
Chapter 14: Deploying and Scaling the SPA
Packaging for deployment
Setting up a cloud database
Deploying the application to Heroku
Scaling the SPA
Summary

Book Details

ISBN 139781785881640
Paperback452 pages
Read More
From 4 reviews

Read More Reviews

Recommended for You

Learning Angular 2 Book Cover
Learning Angular 2
$ 31.99
$ 22.40
Mastering Web Application Development with AngularJS Book Cover
Mastering Web Application Development with AngularJS
$ 26.99
$ 5.40
Angular 2 By Example Book Cover
Angular 2 By Example
$ 35.99
$ 25.20
Node.js Design Patterns - Second Edition Book Cover
Node.js Design Patterns - Second Edition
$ 39.99
$ 28.00
Object-Oriented JavaScript - Second Edition Book Cover
Object-Oriented JavaScript - Second Edition
$ 29.99
$ 21.00
Responsive Web Design with HTML5 and CSS3 - Second Edition Book Cover
Responsive Web Design with HTML5 and CSS3 - Second Edition
$ 31.99
$ 22.40