Paths
Node.js
Node.js is a JavaScript runtime that uses a non-blocking I/O model that makes it lightweight, efficient and very popular among JavaScript developers who also need to write... Read more
Beginner
The courses in this section will introduce you to fundamental topics including basic Node.js syntax, NPM package management, and creating your own development environment.
Learning To Program - Part 1: Getting Started
Beginner • 3h 12m
Description
Learning to Program gives you an introduction to computer programming using the worlds most popular programming language - JavaScript. In the course we'll work with different JavaScript programs and learn how to control the flow of a program, manage multiple source code files, understand boolean logic, and by the end even build a simple web server.
Table of contents
- Learning To Program - An Introduction20m 25s
- Learning To Program - Editors and Code Files24m 36s
- Learning To Program - Variables and Types21m 52s
- Learning To Program - Functions22m 34s
- Learning To Program - Branch And Loop29m 35s
- Learning To Program - Objects26m 57s
- Learning To Program - Tests28m 50s
- Learning To Program - Final18m 7s
NPM Playbook
Beginner • 58m
Description
NPM is not just for Node developers - it has become the default package manager for front end JavaScript developers as well. This course will take you from knowing nothing about NPM to being an expert in using NPM to manage the dependencies for your project. Additionally, you will learn how to publish packages for other developers to use in their own projects, how to keep those packages updated, and how to coordinate them with your github repository.
Table of contents
- Course Overview1m 13s
- NPM Basics29m 49s
- Advanced NPM13m 21s
- Publishing Your Own Package13m 50s
Building a JavaScript Development Environment
Beginner • 5h 19m
Description
Hello! My name is Cory, and welcome to Building a JavaScript Development Environment. In this course, you will explore the long list of decisions and patterns for building your own JavaScript development from scratch using modern tooling. You will get there by learning about major topics like transpiling, bundling, testing, and npm scripts for automation. By the end of this course, you will be able to create a rapid feedback JavaScript development experience that suits your team's unique preferences. Before you begin, make sure you are already familiar with JavaScript and HTML. After this course, you'll be ready to move on to building applications in a wide array of technologies including Angular, React, Node.js, and Electron. I hope you'll join me, and I look forward to helping you on your learning journey here at Pluralsight.
Table of contents
- Course Overview1m 30s
- You Need a Starter Kit19m 38s
- Editors and Configuration8m 8s
- Package Management10m 38s
- Development Web Server19m 26s
- Automation15m 14s
- Transpiling18m 47s
- Bundling30m 24s
- Linting26m 11s
- Testing and Continuous Integration42m 44s
- HTTP Calls44m 22s
- Project Structure9m 47s
- Production Build46m 1s
- Production Deploy26m 40s
Intermediate
The courses in this section cover some of the more nuanced topics in including integrating Node.js with Express, asynchronous code, and working with RESTful web services.
Introduction to Node.js
Intermediate • 2h 48m
Description
In this course we begin with Node's background, concepts and strategies for writing asynchronous code. We then examine Node's module system, including built-in modules, application modularization as well as the NPM third party module registry. From there we tackle EventEmitters and Streams, as well as utilities for interacting with the local file system. Next we look at using Node to write both client and server web applications, as well as real time integration with Socket.IO. We cover writing unit tests using both the built-in assert module and third party frameworks. We wrap up with a look at launching child processes in Node and writing scalable applications with the "cluster" module.
Table of contents
- Getting Started with Node.js36m 14s
- Modules, require() and NPM17m 43s
- Events and Streams26m 35s
- Accessing the Local System17m 20s
- Interacting with the Web21m 40s
- Testing and Debugging27m 38s
- Scaling Your Node Application20m 57s
Building Web Applications with Node.js and Express 4.0 (UPDATE)
Intermediate • 5h 12m
Description
Node.js is a simple and powerful tool for backend JavaScript development. In this course, Building Web Applications with Node.js and Express 4.0 (UPDATE), you will learn everything you need to know to get started in web development with Node.js. First, you will cover the basics of Node.js and how to select an IDE. Second, you will explore template engines and how to render in HTML out of Express. Next, you will learn all aspects of routing, including express middleware. Finally, you will work with multiple databases and backend APIs and will cover local security with Passport.js. By the end of this course, you will have all of the tools you need to build a full-stack web application with Node.js and Express.
Table of contents
- Course Overview1m 43s
- Getting Started34m 12s
- First Page37m 53s
- Setting up Tooling35m 54s
- Templating Engines25m 9s
- Routing31m 57s
- Databases1h 5m 39s
- Authentication52m 58s
- Structure and Third-party APIs26m 58s
RESTful Web Services with Node.js and Express
Intermediate • 2h 4m
Description
Node.js is a simple and powerful tool for backend development. When combined with express, you can create lightweight, fast, scalable APIs quickly and simply. In this course, we will walk through how to stand up a lightweight Express server serving truly RESTful services using Node.js, Mongoose, and MongoDB. We will implement all of the RESTful verbs to get, add, and update data from our service. We will also spend some time working through unit and end to end integration tests for our services.
Table of contents
- What Is REST?18m 54s
- Getting Data20m 30s
- Posting Data17m 30s
- Updating Data20m 9s
- Testing33m 40s
- HATEOAS13m 51s
Advanced
In these advanced courses you will learn advanced topics such as testing, application patterns, and Node.js module structure.
Node.js Testing Strategies
Intermediate • 2h 39m
Description
Testing with Node.js and JavaScript can be intimidating. In this course, Rob Conery will offer tips and techniques he's used over the years for testing and maintaining large Node applications.
Table of contents
- Introduction31m 43s
- Simple Tests with Node.js and Mocha49m 15s
- Data Access Considerations32m 15s
- External APIs46m 34s
Node Application Patterns
Intermediate • 2h 30m
Description
In this course, Rob Conery takes you beyond the simple demo with Node.js and talks about ways you can structure your application, your code, and your tests. Along the way he'll discuss various JavaScript patterns and Node toolsets.
Table of contents
- Introduction40m 58s
- Setting Up Your Project22m 32s
- Building a Registration Module49m 13s
- Building an Authentication Module at Full Speed24m 39s
- Integrating Our Module into a Web App13m 33s
Advanced Node.js
Advanced • 3h 45m
Description
Hello, and welcome to Advanced Node.js, part of the Node.js Learning Path here at Pluralsight. My name is Samer Buna, and I’m looking forward to helping you understand how the Node runtime work and learn about all the powerful built-in features that you can use in every Node process. Along the way, you’re going to be learning about things like modules management, V8, concurrency and event loop, streams, child processes, and clusters. You’ll also be using npm and Node's event-driven modules for networking and HTTP web servers. You’ll want to make sure you’re already up to speed on modern JavaScript and the basics of Node.js. So if you’re ready to get started, Advanced Node.js is waiting for you. Thanks again for visiting me here at Pluralsight!
Table of contents
- Course Overview1m 41s
- Node != JavaScript1h 2m 24s
- Concurrency Model and Event Loop20m 47s
- Node's Event-driven Architecture21m 14s
- Node for Networking19m 10s
- Node for Web19m 48s
- Node's Common Built-in Libraries19m 54s
- Working with Streams19m 52s
- Clusters and Child Processes38m 13s
- Course Wrap Up2m 39s
What you will learn
- Strategies for writing asynchronous code
- EventEmitters and Streams
- Real time integration with Socket.IO
- Using Express.js
- Data access in Node.js
- Building APIs with Node.js
- Modular JavaScript
- Performance tips
- Testing
- Common tools, patterns, and best practices
Pre-requisites
No prior programming knowledge required, but a background in JavaScript will help speed your progress.
Register for FREE. Get your Pluralsight IQ.
You’ll get unlimited access to adaptive skill assessments that help you validate your skills in as little as 5 minutes, and you'll get to see the Pluralsight platform first-hand.
