JavaScript Application Design video edition

Video description

In Video Editions the narrator reads the book while the content, figures, code listings, diagrams, and text appear on the screen. Like an audiobook that you can also watch as a video.

"Enjoy the ride through the process of improving your development workflow."
Addy Osmani, Google

The fate of most applications is often sealed before a single line of code has been written. How is that possible? Simply, bad design assures bad results. Good design and effective processes are the foundation on which maintainable applications are built, scaled, and improved. For JavaScript developers, this means discovering the tooling, modern libraries, and architectural patterns that enable those improvements.

JavaScript Application Design: A Build First Approach introduces techniques to improve software quality and development workflow. You'll begin by learning how to establish processes designed to optimize the quality of your work. You'll execute tasks whenever your code changes, run tests on every commit, and deploy in an automated fashion. Then you'll focus on designing modular components and composing them together to build robust applications.

  • Automated development, testing, and deployment processes
  • JavaScript fundamentals and modularity best practices
  • Modular, maintainable, and well-tested applications
  • Master asynchronous flows, embrace MVC, and design a REST API
This book/course assumes readers understand the basics of JavaScript.

Nicolas Bevacqua is a freelance developer with a focus on modular JavaScript, build processes, and sharp design. He maintains a blog at

For JavaScript developers, a must-read!
Stephen Wakely, Thomson Reuters

An excellent guide through the maze of the modern JavaScript ecosystem.
Jonas Bandi, IvoryCode GmbH

The first-ever design book for developers.
Sandeep Kumar Patel, SAP Labs

A one-stop shop introducing JavaScript developers to modern practices and tools.
Matthew Merkes, MyNeighbor


Table of contents

    1. Chapter 1. Introduction to Build First
    2. Chapter 1. Build First
    3. Chapter 1. Planning ahead with Build First
    4. Chapter 1. Build processes
    5. Chapter 1. Handling application complexity and design
    6. Chapter 1. Diving into Build First
    7. Chapter 1. Lint in the command line
    8. Chapter 2. Composing build tasks and flows
    9. Chapter 2. Setting up your first Grunt task
    10. Chapter 2. Preprocessing and static asset optimization
    11. Chapter 2. Doing LESS
    12. Chapter 2. Static asset minification
    13. Chapter 2. Setting up code integrity
    14. Chapter 2. Writing your first build task
    15. Chapter 3. Mastering environments and the development workflow
    16. Chapter 3. Configuring build distributions
    17. Chapter 3. Environment-level configuration
    18. Chapter 3. Configuring environments
    19. Chapter 3. Using encryption to harden environment configuration security
    20. Chapter 3. Automating tedious first-time setup tasks
    21. Chapter 3. A text editor that cares
    22. Chapter 4. Release, deployment, and monitoring
    23. Chapter 4. Static asset caching
    24. Chapter 4. Predeployment operations
    25. Chapter 4. Deploying to Heroku
    26. Chapter 4. Continuous integration
    27. Chapter 4. Monitoring and diagnostics
    28. Chapter 4. Debugging Node applications
    1. Chapter 5. Embracing modularity and dependency management
    2. Chapter 5. Information hiding and interfaces
    3. Chapter 5. Strict mode
    4. Chapter 5. JavaScript modules
    5. Chapter 5. Using dependency management
    6. Chapter 5. Browserify: CJS in the browser
    7. Chapter 5. Understanding package management
    8. Chapter 5. Choosing the right module system
    9. Chapter 5. Harmony: a glimpse of ECMAScript 6
    10. Chapter 6. Understanding asynchronous flow control methods in JavaScript
    11. Chapter 6. Requests upon requests
    12. Chapter 6. Using the async library
    13. Chapter 6. Asynchronous task queues
    14. Chapter 6. Making Promises
    15. Chapter 6. Controlling the flow
    16. Chapter 6. Understanding events
    17. Chapter 6. Glimpse of the future: ES6 generators
    18. Chapter 7. Leveraging the Model-View-Controller
    19. Chapter 7. Model-View-Controller in JavaScript
    20. Chapter 7. Introduction to Backbone
    21. Chapter 7. Organizing models with Backbone collections
    22. Chapter 7. Case study: the shopping list
    23. Chapter 7. Adding items to your cart
    24. Chapter 7. Using inline editing
    25. Chapter 7. A service layer and view routing
    26. Chapter 7. Backbone and Rendr: server/client shared rendering
    27. Chapter 7. A simple Rendr application
    28. Chapter 8. Testing JavaScript components
    29. Chapter 8. Tape in the browser
    30. Chapter 8. Mocks, spies, and proxies
    31. Chapter 8. Testing in the browser
    32. Chapter 8. Case study: testing DOM interaction
    33. Chapter 8. Application definition
    34. Chapter 8. Case study: unit testing the MVC shopping list
    35. Chapter 8. Automating Tape tests
    36. Chapter 8. Integration, visual, and performance testing
    37. Chapter 9. REST API design and layered service architectures
    38. Chapter 9. Learning REST API design
    39. Chapter 9. Endpoints, HTTP verbs, and versioning
    40. Chapter 9. Requests, responses, and status codes
    41. Chapter 9. Paging, caching, and throttling
    42. Chapter 9. Implementing layered service architectures
    43. Chapter 9. Consuming a REST API on the client side

Product information

  • Title: JavaScript Application Design video edition
  • Author(s): Nicolas G. Bevacqua
  • Release date: January 2015
  • Publisher(s): Manning Publications
  • ISBN: None