3.97 out of 5
3.97
1288 reviews on Udemy

Beginner API development in Node, Express, ES6, & MongoDB

REST API backend development. Build Node API and restful express API
Instructor:
Mark Price
10,939 students enrolled
English [Auto-generated]
Build APIs that iOS apps & Android apps can talk to
Deploy APIs in Node to live servers
Deploy live MongoDB instances on servers that the APIs can talk to
Write code in ES6 for API development or for general programming

Beginner API development in Node, Express, ES6, & MongoDB

Are you a mobile app developer that needs a backend API & database?

Do you have an mobile product idea?

Do you want to create your own startup? 

Or do you want to become a backend developer?

This is THE course for you.

We have taught over 50,000 students how to code and so many of them have the same question, “How can I build a server for my mobile apps?”

What you will learn:

  • Node
  • Express
  • MongoDB
  • ES6 & Javascript
  • API development
  • CRUD & REST
  • How to get an iOS app to talk to your API
  • How to get an Android app to talk to your API
  • Tooling & automation
  • Professional coding tips & practices
  • And so much more….

This course is for ANYONE – but we specifically designed it to take mobile developers to the next level by helping them build their own APIs for their apps!

API Course Intro

1
Intro to API Course

An overview of this node course and what you will be learning. We'll talk about node, express, MongoDB, and our general path for API development.

2
What is a REST API

Learn why you would create a RESTful API and also why you would use Node js to develop the API for your iOS apps, Android apps, or web apps.

Setup for Node, MongoDB, Postman, and other API tools

1
API Tooling Intro for Node API

A quick overview of the tools we'll need to get up and running with REST API development with node

2
Installing Atom - Code editor for API development

Learn how to install an IDE - Atom so we can start writing ES6 code for our API in Node

3
Installing Nodejs & node version manager

You will install node js and the node version manager (NVM) to start working on your API

4
Installing MongoDB - noSQL database

What is the point of having a node API if it doesn't have a database to talk to. In this lesson we'll learn how to install MongoDB

5
Installing Postman - Client to test node API

Postman is a client app that allows us to test our node api. You can use postman to make restful API post, update, delete, and get requests.

6
Installing Node js packages with NPM

Node package manager is a dependency manager that makes it super easy to install node packages for your API

7
Quiz

Hello API

1
Hello World API Example Code Along in Node

In this lesson, we skip ahead and go ahead and create a simple node api just so you can see what the process looks like. At this point, we don't expect you to understand everything, the point is just to give you a glimpse of where we are going using node, express, and es6

2
Quiz

JavaScript Basics

1
Intro - Why Javascript for node API development
2
ECMAScript Standards and ES6

In this lesson, we define ECMA, ECMAScript, ES6, ES2015 and what this all has to do with JavaScript and Node.js for API 

3
ES6 Variables
4
ES6 Strings
5
ES6 Operators
6
ES6 Conditionals and Loops
7
ES6 Functions
8
ES6 JavaScript Objects
9
ES6 Arrays
10
ES6 Array Helpers
11
ES6 'this' and 'bind'
12
ES6 'Call'
13
ES6 'import' and 'require'
14
Exercise
15
Quiz

Creating our REST API

1
Node REST API Section Intro

In this introduction, we talk about what we are going to build with node in this section and where we will end up.

2
Setting up our Node Project Skeleton

In this lesson, we set up the project skeleton so we can build our REST API. We install some of the dependencies we will need with node & npm and set up tools such as Babel so that we can use ES6 features such as `import` with Node.js

3
Setting up MongoDB for Node API

In this lesson, we start building our app, configure and connect to our Mongo Database. We start off with a very simple restaurant API in node that only has a name of each restaurant. We will refactor and add features after we get the basics down.

4
Adding Data (POST requests in Node)

In this lesson, we set up our first API node endpoint. Since we have no data in our database initially, we make this a POST request so that we can add a restaurant.

5
Retrieving Data (GET requests in Node)

In this lesson, we now have some data in our database, so we create another node endpoint so that we can retrieve data. In this case, we retrieve all restaurants listed in the database as well as a single restaurant by its ID.

6
Updating Data (PUT requests in Node)

In this lesson, we set up another nodeendpoint so that we can modify an existing record (restaurant) in the database.

7
Deleting Data (DELETE requests in Node)

In this lesson, we set up one final node endpoint so that we can delete a particular restaurant by its ID.

8
Adding features to our Node API and refactoring

In this very in depth lesson, we start with the basics we have created and then refactor to make this a more robust node API. We first refactor from a restaurant api and turn it into a foodtruck api. We add properties into our data model, as well as add a second data model and show you how to store references in each, so that we avoid nested data in our database as much as possible.

9
Exercise
10
Quiz

Authentication and Security

1
Setting up our User Model for Authentication in Node

In this lesson, we go through the process of adding another data model so that we can incorporate Authentication/Authorization into our API in node.

2
Authentication Middleware and Securing Resources in Node

In this lesson, we setup authentication middleware using passport so that we can authenticate users. We also set up json web tokens, so that we can pass a token back to the user to be used for secured endpoints. Finally we walk through the process of securing some of our node endpoints while leaving others open for unauthenticated use.

3
Exercise
4
Quiz

Deploying Our Node API To A Live Server

1
Node deployment: Intro

An overview about how we will deploy our node server so we can have a public API

2
Node deployment: Spinning up a Digital Ocean droplet for our Node API

In this lesson, we spin up a Digital Ocean Droplet (Ubuntu 16.04) and get the basic server set up and running. Having our own server will allow us to have a Node server that is running continually.

3
Node deployment: Digital Ocean droplet part 2

In this lesson, we add a domain name to our droplet, upload our Node API to the server and get everything up and running.

4
Node deployment: Digital Ocean droplet part 3

In this lesson, we set up Nginx to act as a proxy for our Node API. We continue by getting a free ssl certificate and setting it up so that we can use secure https with our API.

Creating an iOS app to make use of our Node REST API

1
Building an iOS client Intro

In this introduction, we discuss the iOS client application we will be building throughout this section.

2
API Adjustments

In this lesson, we make a few small adjustments to our API to structure things in a better way for our clients.

3
Data Models

In this lesson, we begin our application by creating our data models for the api data we will be interacting with.

4
DataService

In this lesson, we construct a data service to interact with our api. This will allow us to keep our data and presentation logic separate.

5
AuthService

In this lesson, we construct an auth service to handle user registrations and logins.

6
Main ViewController

In this lesson, we begin building out our user interface by creating our Main ViewController and hooking it up to our Data Service.

7
LogIn ViewController

In this lesson, we create a LogIn ViewController in the form of a xib file and learn how to load it up to handle registration and login.

8
AddFoodTruck ViewController

In this lesson, we create another ViewController to add the ability to add new Food Trucks to our database through our api.

9
Details ViewController

In this lesson, we create a Details ViewController to show the details of a single Food Truck that was selected from our main table view. We also add a map in this controller so that we can show the exact location of the Food Truck.

10
Reviews ViewController

In this lesson, we add a ViewController to show reviews for a specific Food Truck

11
AddReview ViewController

In this lesson, we wrap up this section by adding the ability to add new reviews for a Food Truck.

12
Exercise - Extending our iOS API Client

Creating an Android app to make use of our Node REST API

1
Intro to Section

In this section we will be building an Android client app with the API you have built.

2
API Adjustments
3
Set up the Data Model

Create the FoodTruck data model and make your first API call.

4
Create the Recycler View

Use a recycler view to display your FoodTrucks.

5
Create FoodTruck detail view

Create a new activity to display the FoodTruck details.

6
FoodTruck detail view Part 2

Continue creating the detail view.

7
Retrieve FoodTruck reviews

Create and execute the API call to retrieve reviews.

8
Create the reviews Recycler View

Use a recycler view to display your reviews.

9
Create the Login Screen

Use Login Screen template to build a Login Screen.

10
User registration

Create and execute the Register API call

11
User login

Create and execute the Login API call.

12
Add FoodTruck review

Create and execute the API call to add a new review.

13
Add new FoodTruck

Create and execute the API call to add a new FoodTruck.

You can view and review the lecture materials indefinitely, like an on-demand channel.
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don't have an internet connection, some instructors also let their students download course lectures. That's up to the instructor though, so make sure you get on their good side!
4
4 out of 5
1288 Ratings

Detailed Rating

Stars 5
693
Stars 4
354
Stars 3
144
Stars 2
58
Stars 1
39
5f4d93dab199d005c3c6bcff9640cc14
30-Day Money-Back Guarantee

Includes

18 hours on-demand video
4 articles
Full lifetime access
Access on mobile and TV
Certificate of Completion