Get Programming with Node.js
Summary
Get Programming with Node.js teaches you to build web servers using JavaScript and Node. In this engaging tutorial, you'll work through eight complete projects, from writing the code for your first web server to adding live chat to a web app. Your hands will stay on the keyboard as you explore the most important aspects of the Node development process, including security, database management, authenticating user accounts, and deploying to production. You'll especially appreciate the easy-to-follow discussions, illuminating diagrams, and carefully explained code!

Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.

About the Technology
Node.js delivers the speed and reliability you need for ecommerce, social media, and gaming applications. It comes with thousands of prebuilt packages to help you get started immediately. If you want to use JavaScript on the server, Node.js is your choice.

What's inside
  • New features from ES2015 and later
  • Writing asynchronous code
  • Creating data models
  • Debugging JavaScript modules

About the Reader
Written for front-end web developers with intermediate JavaScript skills.

Table of Contents
GETTING SET UP
Lesson 0 - Setting up Node.js and the JavaScript engine
Lesson 1 - Configuring your environment
Lesson 2 - Running a Node.js application
UNIT 1 - GETTING STARTED WITH NODE.JS
Lesson 3 - Creating a Node.js module
Lesson 4 - Building a simple web server in Node.js
Lesson 5 - Handling incoming data
Lesson 6 - Writing better routes and serving external files
Lesson 7 - Capstone: Creating your first web application
UNIT 2 - EASIER WEB DEVELOPMENT WITH EXPRESS.JS
Lesson 8 - Setting up an app with Express.js
Lesson 9 - Routing in Express.js
Lesson 10 - Connecting views with templates
Lesson 11 - Configurations and error handling
Lesson 12 - Capstone: Enhancing the Confetti Cuisine site with Express.js
UNIT 3 - CONNECTING TO A DATABASE
Lesson 13 - Setting up a MongoDB database
Lssson 14 - Building models with Mongoose
Lesson 15 - Connecting controllers and models Using promises with Mongoose
Lesson 16 - Capstone: Saving user subscriptions
UNIT 4 - BUILDING A USER MODEL
Lesson 17 - Improving your data models
Lesson 18 - Building the user model
Lesson 19 - Creating and reading your models
Lesson 20 - Updating and deleting your models
Lesson 21 - Capstone: Adding CRUD models to Confetti Cuisine Creating controllers
UNIT 5 - AUTHENTICATING USER ACCOUNTS
Lesson 22 - Adding sessions and flash messages
Lesson 23 - Building a user login and hashing passwords
Lesson 24 - Adding user authentication
Lesson 25 - Capstone: Adding user authentication to Confetti Cuisine
UNIT 6 - BUILDING AN API
Lesson 26 - Adding an API to your application
Lesson 27 - Accessing your API from your application
Lesson 28 - Adding API security
Lesson 29 - Capstone: Implementing an API
UNIT 7 - ADDING CHAT FUNCTIONALITY
Lesson 30 - Working with Socket.io
Lesson 31 - Saving chat messages
Lesson 32 - Adding a chat notification indicator
UNIT 8 - DEPLOYING AND MANAGING CODE IN PRODUCTION
Lesson 33 - Capstone: Adding a chat feature to Confetti Cuisine
Lesson 34 - Deploying your application
Lesson 35 - Managing in production
Lesson 36 - Testing your application
Lesson 37 - Capstone: Deploying Confetti Cuisine

 
 
1126999339
Get Programming with Node.js
Summary
Get Programming with Node.js teaches you to build web servers using JavaScript and Node. In this engaging tutorial, you'll work through eight complete projects, from writing the code for your first web server to adding live chat to a web app. Your hands will stay on the keyboard as you explore the most important aspects of the Node development process, including security, database management, authenticating user accounts, and deploying to production. You'll especially appreciate the easy-to-follow discussions, illuminating diagrams, and carefully explained code!

Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.

About the Technology
Node.js delivers the speed and reliability you need for ecommerce, social media, and gaming applications. It comes with thousands of prebuilt packages to help you get started immediately. If you want to use JavaScript on the server, Node.js is your choice.

What's inside
  • New features from ES2015 and later
  • Writing asynchronous code
  • Creating data models
  • Debugging JavaScript modules

About the Reader
Written for front-end web developers with intermediate JavaScript skills.

Table of Contents
GETTING SET UP
Lesson 0 - Setting up Node.js and the JavaScript engine
Lesson 1 - Configuring your environment
Lesson 2 - Running a Node.js application
UNIT 1 - GETTING STARTED WITH NODE.JS
Lesson 3 - Creating a Node.js module
Lesson 4 - Building a simple web server in Node.js
Lesson 5 - Handling incoming data
Lesson 6 - Writing better routes and serving external files
Lesson 7 - Capstone: Creating your first web application
UNIT 2 - EASIER WEB DEVELOPMENT WITH EXPRESS.JS
Lesson 8 - Setting up an app with Express.js
Lesson 9 - Routing in Express.js
Lesson 10 - Connecting views with templates
Lesson 11 - Configurations and error handling
Lesson 12 - Capstone: Enhancing the Confetti Cuisine site with Express.js
UNIT 3 - CONNECTING TO A DATABASE
Lesson 13 - Setting up a MongoDB database
Lssson 14 - Building models with Mongoose
Lesson 15 - Connecting controllers and models Using promises with Mongoose
Lesson 16 - Capstone: Saving user subscriptions
UNIT 4 - BUILDING A USER MODEL
Lesson 17 - Improving your data models
Lesson 18 - Building the user model
Lesson 19 - Creating and reading your models
Lesson 20 - Updating and deleting your models
Lesson 21 - Capstone: Adding CRUD models to Confetti Cuisine Creating controllers
UNIT 5 - AUTHENTICATING USER ACCOUNTS
Lesson 22 - Adding sessions and flash messages
Lesson 23 - Building a user login and hashing passwords
Lesson 24 - Adding user authentication
Lesson 25 - Capstone: Adding user authentication to Confetti Cuisine
UNIT 6 - BUILDING AN API
Lesson 26 - Adding an API to your application
Lesson 27 - Accessing your API from your application
Lesson 28 - Adding API security
Lesson 29 - Capstone: Implementing an API
UNIT 7 - ADDING CHAT FUNCTIONALITY
Lesson 30 - Working with Socket.io
Lesson 31 - Saving chat messages
Lesson 32 - Adding a chat notification indicator
UNIT 8 - DEPLOYING AND MANAGING CODE IN PRODUCTION
Lesson 33 - Capstone: Adding a chat feature to Confetti Cuisine
Lesson 34 - Deploying your application
Lesson 35 - Managing in production
Lesson 36 - Testing your application
Lesson 37 - Capstone: Deploying Confetti Cuisine

 
 
38.99 In Stock
Get Programming with Node.js

Get Programming with Node.js

by Jonathan Wexler
Get Programming with Node.js

Get Programming with Node.js

by Jonathan Wexler

eBook

$38.99 

Available on Compatible NOOK devices, the free NOOK App and in My Digital Library.
WANT A NOOK?  Explore Now

Related collections and offers


Overview

Summary
Get Programming with Node.js teaches you to build web servers using JavaScript and Node. In this engaging tutorial, you'll work through eight complete projects, from writing the code for your first web server to adding live chat to a web app. Your hands will stay on the keyboard as you explore the most important aspects of the Node development process, including security, database management, authenticating user accounts, and deploying to production. You'll especially appreciate the easy-to-follow discussions, illuminating diagrams, and carefully explained code!

Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications.

About the Technology
Node.js delivers the speed and reliability you need for ecommerce, social media, and gaming applications. It comes with thousands of prebuilt packages to help you get started immediately. If you want to use JavaScript on the server, Node.js is your choice.

What's inside
  • New features from ES2015 and later
  • Writing asynchronous code
  • Creating data models
  • Debugging JavaScript modules

About the Reader
Written for front-end web developers with intermediate JavaScript skills.

Table of Contents
GETTING SET UP
Lesson 0 - Setting up Node.js and the JavaScript engine
Lesson 1 - Configuring your environment
Lesson 2 - Running a Node.js application
UNIT 1 - GETTING STARTED WITH NODE.JS
Lesson 3 - Creating a Node.js module
Lesson 4 - Building a simple web server in Node.js
Lesson 5 - Handling incoming data
Lesson 6 - Writing better routes and serving external files
Lesson 7 - Capstone: Creating your first web application
UNIT 2 - EASIER WEB DEVELOPMENT WITH EXPRESS.JS
Lesson 8 - Setting up an app with Express.js
Lesson 9 - Routing in Express.js
Lesson 10 - Connecting views with templates
Lesson 11 - Configurations and error handling
Lesson 12 - Capstone: Enhancing the Confetti Cuisine site with Express.js
UNIT 3 - CONNECTING TO A DATABASE
Lesson 13 - Setting up a MongoDB database
Lssson 14 - Building models with Mongoose
Lesson 15 - Connecting controllers and models Using promises with Mongoose
Lesson 16 - Capstone: Saving user subscriptions
UNIT 4 - BUILDING A USER MODEL
Lesson 17 - Improving your data models
Lesson 18 - Building the user model
Lesson 19 - Creating and reading your models
Lesson 20 - Updating and deleting your models
Lesson 21 - Capstone: Adding CRUD models to Confetti Cuisine Creating controllers
UNIT 5 - AUTHENTICATING USER ACCOUNTS
Lesson 22 - Adding sessions and flash messages
Lesson 23 - Building a user login and hashing passwords
Lesson 24 - Adding user authentication
Lesson 25 - Capstone: Adding user authentication to Confetti Cuisine
UNIT 6 - BUILDING AN API
Lesson 26 - Adding an API to your application
Lesson 27 - Accessing your API from your application
Lesson 28 - Adding API security
Lesson 29 - Capstone: Implementing an API
UNIT 7 - ADDING CHAT FUNCTIONALITY
Lesson 30 - Working with Socket.io
Lesson 31 - Saving chat messages
Lesson 32 - Adding a chat notification indicator
UNIT 8 - DEPLOYING AND MANAGING CODE IN PRODUCTION
Lesson 33 - Capstone: Adding a chat feature to Confetti Cuisine
Lesson 34 - Deploying your application
Lesson 35 - Managing in production
Lesson 36 - Testing your application
Lesson 37 - Capstone: Deploying Confetti Cuisine

 
 

Product Details

ISBN-13: 9781638352402
Publisher: Manning
Publication date: 02/11/2019
Sold by: SIMON & SCHUSTER
Format: eBook
Pages: 480
File size: 4 MB

About the Author

Jonathan Wexler has an extensive background in computer theory and web development. Having curated a Node.js curriculum as the academic director and lead developer for The New York Code and Design Academy, Jonathan has instructed multiple intensive programs in full stack development and currently works as a senior developer for Bloomberg LP.

Table of Contents

Foreword xv

Preface xvii

Acknowledgments xix

About this book xxi

About the author xxix

Unit 0 Setting Setup 1

Lesson 0 Setting up Node.js and the JavaScript engine 3

What you're going to learn 3

Understanding Node.js 5

Why learn to develop in Node.js? 9

Preparing yourself for this book 10

Summary 11

Lesson 1 Configuring your environment 12

Installing Node.js 12

Installing a text editor 16

Setting up SCM and deployment tools 17

Working with the Node.js REPL in terminal 19

Summary 21

Lesson 2 Running a Node.js application 22

Creating a JavaScript file 23

Running your JavaScript file with Node.js 24

Running individual JavaScript commands 25

Summary 27

Unit 1 Getting Started With NODE.Js 29

Lesson 3 Creating a Node.js module 31

Running npm commands 33

Initializing a Node.js application 35

Summary 38

Lesson 4 Building a simple web server in Node.js 40

Understanding web servers 41

Initializing the application with npm 43

Coding the application 43

Running the application 47

Summary 48

Lessors 5 Handling incoming data 49

Reworking your server code 50

Analyzing request data 51

Adding routes to a web application 55

Summary 58

Lesson 6 Writing better routes and serving external files 59

Serving static files with the fs module 60

Serving assets 64

Moving your routes to another file 67

Summary 72

Lesson 7 Capstone: Creating your first web application 73

Initializing the application 74

Understanding application directory structure 75

Creating main.js and router.js 76

Creating views 79

Adding assets 80

Creating routes 81

Summary 83

Unit 2 Easier Web Development with Expresses 85

Lesson 8 Setting up an app with Expresses 87

Installing the Express.js package 88

Building your first Express.js application 90

Working your way around a web framework 92

Summary 94

Lesson 9 Routing in Expresses 95

Building routes with Expresses 96

Analyzing request data 98

Using MVC 101

Summary 105

Lesson 10 Connecting views with templates 106

Connecting a templating engine 107

Passing data from your controllers 110

Setting up partials and layouts 111

Summary 113

Lesson 11 Configurations and error handling 114

Modifying your start script 115

Handling errors with Express.js 116

Serving static files 119

Summary 119

Lesson 12 Capstone: Enhancing the Confetti Cuisine site with Express.js 121

Initializing the application 121

Building the application 123

Adding more routes 124

Routing to views 125

Serving static views 127

Passing content to the views 128

Handling the errors 129

Summary 131

Unit 3 Connection to A Database 133

Lesson 13 Setting up a MongoDB database 135

Setting up MongoDB 136

Running commands in the MongoDB shell 140

Connecting MongoDB to your application 144

Summary 146

Lesson 14 Building models with Mongoose 147

Setting up Mongoose with your Node.js application 148

Creating a schema 149

Organizing your models 151

Summary 153

Lesson 15 Connecting controllers and models 155

Creating a controller for subscribers 156

Saving posted data to a model 159

Using promises with Mongoose 162

Summary 166

Lesson 16 Capstone: Saving user subscriptions 167

Setting up the database 168

Modeling data 168

Adding subscriber views and routes 171

Summary 173

Unit 4 Building A User Model 175

Lesson 17 Improving your data models 177

Adding validations on the model 178

Testing models in REPL 182

Creating model associations 184

Populating data from associated models 188

Summary 192

Lesson 18 Building the user model 193

Building the user model 194

Adding CRUD methods to your models 199

Building the index page 202

Cleaning up your actions 205

Summary 206

Lesson 19 Creating and reading your models 208

Building the new user form 209

Creating new users from a view 211

Reading user data with show 214

Summary 218

Lesson 20 Updating and deleting your models 219

Building the edit user form 220

Updating users from a view 223

Deleting users with the delete action 226

Summary 229

Lesson 21 Capstone: Adding CRUD models to Confetti Cuisine 230

Getting set up 231

Building the models 231

Creating the views 237

Structuring routes 242

Creating controllers 243

Summary 247

Unit 5 Authenticating User Accounts 249

Lesson 22 Adding sessions and flash messages 251

Setting up flash message modules 252

Adding flash messages to controller actions 254

Summary 258

Lesson 23 Building a user login and hashing passwords 260

Implementing the user login form 261

Hashing passwords 265

Adding validation middleware with express-validator 269

Summary 272

Lesson 24 Adding user authentication 274

Implementing Passport.js 275

Modifying the create action to use passport registration 279

Authenticating users at login 280

Summary 284

Lesson 25 Capstone: Adding user authentication to Confetti Cuisine 285

Getting set up 286

Creating a login form 286

Adding encryption with Passport.js 288

Adding flash messaging 289

Adding validation middleware with express-velidator 291

Adding authentication with Passport.js 293

Logging in and out 294

Summary 296

Unit 6 Building An API 297

Lesson 26 Adding an API to your application 299

Organizing your routes 300

Creating an API 304

Calling your API from the client 306

Summary 310

Lesson 27 Accessing your API from your application 311

Applying an API namespace 312

Joining courses via modal 315

Creating an API endpoint to connect models 318

Summary 321

Lesson 28 Adding API security 323

Implementing simple security 324

Adding API tokens 325

Using JSON web tokens 328

Summary 333

Lesson 29 Capstone: Implementing an API 334

Restructuring routes 335

Adding the courses partial 338

Creating the AJAX function 339

Adding an API endpoint 341

Creating an action to enroll users 344

Summary 347

Unit 7 Adding Chat Functionality 349

Lesson 30 Working with Socket.io 351

Using socket.io 352

Creating a chat box 355

Connecting the server and client 357

Summary 360

Lesson 31 Saving chat messages 361

Connecting messages to users 362

Displaying user names in chat 366

Creating a message model 369

Summary 372

Lesson 32 Adding a chat notification indicator 373

Broadcasting to all other sockets 374

Creating a chat indicator in navigation 376

Summary 378

Lesson 33 Capstone: Adding a chat feature to Confetti Cuisine 379

Installing socket.io 380

Setting up socketio on the server 380

Setting up socket.io on the client 381

Creating a Message model 384

Loading messages on connection 386

Setting up the chat icon 387

Summary 388

Unit 8 Deploying and Managing Code In Production 388

Lesson 34 Deploying your application 391

Preparing for deployment 392

Deploying your application 394

Setting up your database in production 396

Summary 397

Lesson 35 Managing in production 398

Loading seed data 399

Linting 401

Debugging your application 404

Summary 407

Lesson 36 Testing your application 408

Basic testing with core modules 409

Testing with mocha and chai 411

Testing with a database and server 415

Summary 419

Lesson 37 Capstone: Deploying Confetti Cuisine 420

Unting and logging 421

Preparing for production 421

Deploying to Heroku 422

Setting up the database 424

Debugging in production 427

Summary 427

Appendix A JavaScript syntax introduced in ES6 429

Appendix B Logging and using Node.js global objects 436

Index 439

From the B&N Reads Blog

Customer Reviews