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

Creating the controller's files


Now let's create the controller's files in server/controllers:

  1. Create a file called auth.js and add the following code:

          // get gravatar icon from email 
          var gravatar = require('gravatar'); 
          var passport = require('passport'); 
     
          // Signin GET 
          exports.signin = function(req, res) { 
              // List all Users and sort by Date 
          res.render('login', { title: 'Login Page', message:
          req.flash('loginMessage') }); 
          }; 
          // Signup GET 
          exports.signup = function(req, res) { 
              // List all Users and sort by Date 
          res.render('signup', { title: 'Signup Page', message:
          req.flash('signupMessage') }); 
     
          }; 
          // Profile GET 
          exports.profile = function(req, res) { 
              // List all Users and sort by Date 
          res.render('profile', { title: 'Profile Page', user : req.user,
          avatar:gravatar.url(req.user.email ,  {s: '100', r: 'x', d: 'retro'},
          true) }); 
          };...