All about NodeJS
Create & Deploy High Performance Node JS Apps on the Cloud and More !
What you’ll learn
- Build High Performance and Scalable Apps using NodeJS
- Learn about ES6 with my free eBook – ECMAScript 6 QuickBytes
- Use NodeJS Streams to write a Web Server
- Use the Node Package Manager (NPM) for managing dependencies
- Use the Express 4 Framework for building NodeJS Apps
- Use the EJS templating language
- Understand MongoDB as a NoSQL Database
- Create & Use MongoDB Databases using services like MongoLab
- Create Realtime Apps that use Web Sockets
- Upload & Resize Images using NodeJS
- Integrate Authentication using Social Media Sites like Facebook
- Structure the NodeJS app into modules
- Create and Deploy EC2 Cloud Server Instances on Amazon Web Services
- Create and Use Amazon’s S3 Storage Service with NodeJS
- Use Amazon’s Cloudfront Service
- Using Amazon’s Elastic IP
- Configure Security Groups, Ports & Forwarding on Amazon EC2
- Deploy a NodeJS app on the EC2 Instance
- Deploy a NodeJS app on Heroku
- Deploy a NodeJS app on Digital Ocean
- Install & Deploy NGINX as a Reverse Proxy Server for NodeJS Apps
- Configure NGINX as a Load Balancer
- Learn about Enterprise Integration
- Create an app using the incredible Hapi framework
- Learn more about logging using the Hapi framework
- Learn to use ES6 with Nodejs
- Install & Deploy Apache Apollo MQ with Nodejs and a Python Script
- Basic Working knowledge of an image editing application such as Adobe Photoshop would also help, but is not necessarily needed.
About this Course
With Node JS, you can take this knowledge back on the server, where usually you would expect to see the likes of PHP, Ruby, ASP dot NET etc. But that’s only a small portion of the reason why NodeJS is so cool. The fact that you can write full blown networked applications (think chat servers, collaborative tools, real-time data visualisation apps) with just a few lines of code is more than reason enough to not only look at NodeJS, but deep dive into it !
But I know PHP ? Why should I learn NodeJS ? Well, for starters, learning something new never hurts. But most importantly, learning NodeJS is great because :
- Node allows you to write highly scalable networked apps deployed on the cloud !
- You’re working at a different level of application design per se with Node and that means that you’re not writing an app that sits on top of a stack, you design the stack from the server up. And while that may sound daunting, it really is not and you’ll see why.
- You code in the same language, both on the server and on the front end ! We’re all polyglots (we use multiple programming languages and syntax in most of our projects), but managing code in the same language on the back-end and the front-end never hurts and in-fact can be a huge time saver when debugging.
The Real Problem
So, NodeJS sounds pretty interesting so far, but what really hit me in the face when I was learning all about Node was the fact that, with any new platform, framework or technology, you need to take baby steps, all the way through, to making real world examples, if you have to get to the grips of it. And that leads us to why you’re here.
In this course, we’ll go from absolute scratch, all the way up to building and deploying full blown NodeJS app on the Cloud !
Project Oriented Learning
With NodeJS, we will build two full blown apps. We will go all the from concept creation, UI/UX design to coding and deploying our app on the cloud.
A. ChatCAT – One of the fun things that you can do with NodeJS is build realtime apps that allow a high number of concurrent users to interact with each other. Examples of this kind include Chat Servers, Gaming Servers, Collaborative Tools etc. We will build a multi-room chat server that allows users to login via Facebook, Create Chatrooms of their choice and Chat in realtime. We will not only create this app, but also deploy it on Heroku and Digital Ocean !
You will learn all about using Websockets, Structuring your App in an efficient manner, creating and using development & production configurations, Authentication using Facebook, Setting up an App on Facebook, Managing Sessions, Querying & Using a Hosted MongoDB Database, Using Heroku & Digital Ocean’s Cloud Services and lots more…
B. PhotoGRID – The second complete app that we will build in this course is a Photo Gallery app which lets users upload images into a gallery with the ability to vote up the images that they like. This NodeJS app lets users upload files, which are then resized to thumbnails on the server and stored in an Amazon S3 Bucket for optimal delivery to the front end interface. The entire app runs on an Amazon EC2 Cloud Server which we will create from scratch and configure for use.
You will learn about managing file uploads using NodeJS & AJAX, Resizing Images on the Server, Accessing & Storing files in an S3 Bucket, Querying & Using a Hosted MongoDB Database, Using Amazon’s Elastic IP Service & Cloudfront distribution, ensuring your NodeJS app runs automatically even if the server is restarted and lots more…
In the projects above, we leave no stone unturned in terms of execution. This is a complete hands-on course that is not just limited to NodeJS but to the ecosystem that needs attention when a NodeJS app is built and deployed. My intent is hand hold you all the way from writing your first app to deploying production level apps on the cloud.
And I’m always available to personally help you out, should you get stuck.
BONUS :: Here’s the best thing about this course. The curriculum that you see gets you up and running with NodeJS & Cloud Deployment. However, there is so much more that you can do with NodeJS, which is why I will keep adding new lectures and sections to this course on an ongoing basis. There is so much more that you will get with full lifetime access to lectures and all updates !!
So, join in the fun !
Who this course is for:
- Understand the inner workings of NodeJS
- Software Developers who want to build high performance network applications.
- Anyone who wishes to get hands-on training with setting up an Amazon EC2 Instance with a host of other services like Cloudfront, Elastic IP and S3
- Anyone who wishes to get hands-on training with deploying a NodeJS app on the cloud
- Computer Engineering students
- Tech Entrepreneurs who want to get their hands down and dirty with Web Coding & App Development.
- Anyone who wishes to stay on the forefront of technology !
- PHP, ASPnet, Perl, Java & Ruby coders wanting to leap onto the NodeJs bandwagon.