Book Image

Node.js 6.x Blueprints

By : Fernando Monteiro
Book Image

Node.js 6.x Blueprints

By: Fernando Monteiro

Overview of this book

Node.js is the most popular framework to create server-side applications today. Be it web, desktop, or mobile, Node.js comes to your rescue to create stunning real-time applications. Node.js 6.x Blueprints will teach you to build these types of projects in an easy-to-understand manner. The key to any Node.js project is a strong foundation on the concepts that will be a part of every project. The book will first teach you the MVC design pattern while developing a Twitter-like application using Express.js. In the next chapters, you will learn to create a website and applications such as streaming, photography, and a store locator using MongoDB, MySQL, and Firebase. Once you’re warmed up, we’ll move on to more complex projects such as a consumer feedback app, a real-time chat app, and a blog using Node.js with frameworks such as loopback.io and socket.io. Finally, we’ll explore front-end build processes, Docker, and continuous delivery. By the end of book, you will be comfortable working with Node.js applications and will know the best tools and frameworks to build highly scalable desktop and cloud applications.
Table of Contents (16 chapters)
Node.js 6.x Blueprints
Credits
About the Author
About the Reviewer
www.PacktPub.com
Preface

Adding routes and a controller to the application


We will edit the app.js file to add routes to the band-list.html view and also their respective controller:

  1. Open app.js and add the following lines after the index controller import:

          // Inject band controller 
          var bands = require('./controllers/band'); 
          // Inject user controller 
          var users = require('./controllers/user'); 
    
  2. Add the following code after the index route app.get('/', index.show);:

          // Defining route to list and post 
          app.get('/bands', bands.list); 
          // Get band by ID 
          app.get('/band/:id', bands.byId); 
          // Create band 
          app.post('/bands', bands.create); 
          // Update 
          app.put('/band/:id', bands.update); 
          // Delete by id 
          app.delete('/band/:id', bands.delete); 
          // Defining route to list and post users 
          app.get('/users', users.list); 
          app.post('/users', users.create); 
    

    At this moment, we have almost all of the application working; let's...