O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Learning Path: Server-Side Programming with Node.js

Video Description

Start building practical real-world server applications using Node.js

In Detail

The lightweight and efficient platform for building server applications, Node.js, has become the go-to tool for web developers working on the server-side. If you’re a web developer looking to move toward the server-side, this Learning Path is for you. You will embark on a journey from being a novice to becoming a fullstack developer. You’ll build light and robust server-side applications by the end of this Learning Path.

Prerequisites: A core understanding of JavaScript

Resources: Code downloads and errata:

  • The Complete Guide to Node.js

  • Node.js Projects

  • RESTful Web API Design with Node.js

  • PATH PRODUCTS

    This path navigates across the following products (in sequential order):

  • The Complete Guide to Node.js (4h 47m)

  • Node.js Projects (2h 12m)

  • RESTful Web API Design with Node.js (2h 2m)

  • Table of Contents

    1. Chapter 1 : The Complete Guide to Node.js
      1. The Course Overview 00:02:30
      2. Installing Node.js 00:07:05
      3. Node.js REPL 00:05:25
      4. Node.js is JavaScript 00:07:01
      5. Installing a Package with npm 00:06:57
      6. require() 00:09:53
      7. Module Exports 00:09:04
      8. Package.json Walkthrough 00:05:33
      9. Using package.json to Manage Dependencies 00:07:17
      10. Using npm run 00:06:50
      11. Creating Our Own Package 00:07:21
      12. Node.js is Asynchronous 00:07:07
      13. The Event Loop 00:07:53
      14. Callback Pattern 00:07:55
      15. Promises Instead of Callbacks 00:08:32
      16. Error Handling 00:06:56
      17. Event Emitters 00:04:24
      18. Adding and Removing Events 00:09:42
      19. Creating Our Own Event Emitter 00:05:36
      20. Everything is a Stream 00:05:39
      21. Readable Streams 00:06:30
      22. Writable Streams 00:06:14
      23. Network Streams 00:05:18
      24. Piping Streams 00:10:58
      25. The Node.js HTTP Server 00:06:23
      26. Making Client Requests 00:06:04
      27. Handling Requests 00:09:40
      28. Handling Responses 00:08:46
      29. Installing Express 00:06:03
      30. Routing Basics 00:13:55
      31. Middleware Basics 00:10:31
      32. Handling Errors 00:06:48
      33. Debugging in Express 00:08:38
      34. Templating in Express 00:10:25
      35. Creating a Protected Page 00:10:27
      36. Creating a Login Page 00:07:01
      37. Passport and Authentication 00:09:33
      38. Where to go after the completion of the course? 00:05:50
    2. Chapter 2 : Node.js Projects
      1. Installing Node.js and Express Generator 00:03:02
      2. Building the Baseline 00:04:47
      3. Changing the Application's Structure 00:04:02
      4. Restructuring the Views Folder Using Partials 00:03:11
      5. Adding Templates for Login, Sign-Up, and Profile 00:02:13
      6. Refactoring the app.js File with the New Middleware 00:02:12
      7. Adding Config and Passport Files 00:00:49
      8. Creating Models Folder, Adding a User Schema, and Protecting Routes 00:01:50
      9. Creating the Controllers Folder 00:01:55
      10. Running the Application and Adding Comments 00:01:58
      11. Baseline Application and Swig Template Engine 00:03:22
      12. Refactoring the Views Folder and Creating a Controllers Folder 00:03:07
      13. Adding Partials Files and Dealing with Sequelize-CLI 00:03:03
      14. Editing the config.js File with Database Credentials 00:00:57
      15. Creating User Scheme and Band Schema 00:02:22
      16. Creating the Database on MySQL and Checking Database Tables 00:03:30
      17. Creating Application Controllers, Templates, and Views 00:01:50
      18. Adding Style, Routes, and a Controller to the Application 00:02:04
      19. Adding Database Content and Creating Bands Form 00:03:00
      20. Creating and Editing Models with Command Line 00:04:23
      21. Creating a Data Source and Connecting Models to It 00:02:21
      22. Using the API Explorer 00:03:12
      23. Adding Database Relations 00:01:25
      24. Dealing with LoopBack Boot Files 00:01:43
      25. Consuming the API 00:02:26
      26. Creating React Components 00:03:40
      27. Creating New Feedbacks 00:02:48
      28. Creating the Baseline Application 00:07:58
      29. Refactoring the Application Folder 00:05:51
      30. Refactoring the Client Folder 00:02:23
      31. Creating the AngularJS Application 00:02:45
      32. Adding Content to the Application 00:01:12
      33. Creating the Building Tasks and Using It with Individual Commands 00:05:44
      34. Deploying to Heroku Cloud 00:04:30
      35. Baseline Application 00:06:17
      36. Baseline Application (Continued) 00:09:14
      37. Creating a GitHub and Heroku Free Account 00:02:23
      38. Creating a MongoLab Free Sandbox Account 00:02:13
      39. Initializing a Git Repository and Pushing to GitHub 00:01:51
      40. Creating a Heroku Application Using Heroku Dashboard 00:02:24
      41. Creating a Codeship Free Account 00:06:57
    3. Chapter 3 : RESTful Web API Design with Node.js
      1. The Course Overview 00:02:26
      2. What Is an API? 00:02:24
      3. Communication via HTTP 00:06:51
      4. Identifying REST Resources 00:04:29
      5. Properties of RESTful APIs 00:06:51
      6. Setting Up the Environment 00:07:08
      7. A Look at OAuth 1.0a 00:05:23
      8. Creating an OAuth Login Request 00:05:34
      9. Getting an Access Token 00:02:58
      10. Exploring Twitter’s REST API 00:10:43
      11. Saving Data in MongoDB 00:07:03
      12. Designing the API Specifications 00:03:36
      13. Creating the API Handlers 00:07:17
      14. Acceptance Testing with Postman 00:11:32
      15. Load Testing and Going Multicore 00:07:31
      16. Facebook Graph API 00:07:09
      17. GitHub API 00:05:08
      18. IFTTT 00:03:05
      19. Security Considerations 00:03:46
      20. Documentation 00:04:33
      21. Versioning 00:02:09
      22. Caching 00:05:15