Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Node js with Test Driven Development
Highest Rated
Rating: 4.5 out of 5(313 ratings)
3,273 students

Node js with Test Driven Development

Learn Node js by building a complete fully functional backend rest application with express.js an testing it with jest
Last updated 3/2024
English

What you'll learn

  • Practice Test Driven Development in a real project from beginning to the end
  • Learn the test runner, Jest and understand how to structure test modules
  • Create a fully functional application with Express js
  • Learn how to build a RestFul API
  • Make your application configurable to work in different environments
  • Make your application aware of user locale, and support internationalization, i18n
  • Use Sequelize to connect the application to RDBMS like PostgreSQL and handle all database related operations
  • Secure your application with common practices. Basic authentication, JWT and your custom token implementation
  • Use javascript on server side with Node js
  • Deploy the application to a VM in cloud
  • Experience automated deployment by pushing a commit from your machine to Github. Github Actions will do the rest.
  • Feel how the test driven development is giving confidence when refactoring, and deploying your application.
  • User Registration with email verification flow, account activation
  • Password Reset flow

Course content

19 sections105 lectures22h 3m total length
  • Introduction12:40

    Develop a backend service in Node.js using Express and test driven development. Implement validation, internationalization, caching, and database migrations via Sequelize, deploying to Heroku and Google Cloud via GitHub actions.

  • Tools2:14

    Install Node.js and npm, use Postman for testing, configure sqlite and postgres with db browser and pgadmin; develop in vscode with eslint and prettier, deploy to heroku using git.

  • Methodology1:09

    Master test driven development by writing tests before implementing requirements, cycling through red, green, and refactor phases to run tests, validate behavior, and keep existing functionality clean and reusable.

  • Creating Project9:01

    Create a node project with npm init, set up package.json and app.js, install express for an app on port 3000, then configure npm scripts, jest, and git for testing.

  • Development Environment Dependencies15:03

    Establish eslint and prettier for consistent code in Node.js, configure ecma version 6 and node environment, integrate prettier with eslint, add lint script, and enable nodemon for auto restarts.

  • Web Client5:42

    a practical web client helps visualize user flows for a node js backend, showing http-server setup, port forwarding to the express backend, and basic login and signup.

  • Project Source Code0:09

Requirements

  • Experience with JavaScript required

Description

In this course we will be building a fully functional backend service with express of node js. we will call our application as hoaxify.

while building this application, we will learn

  • how we can build a restful web service with express js, with all necessary functionalities like validationinternationalization, static resource serving, caching, json manipulation, interacting with external services

  • how we can handle database operations with orm package, sequelize.

  • how we can manage database version history and migrations

and we will see

  • how test driven development works.

  • how it's affecting our code quality, reusability

  • how it's giving us the confidence about refactoring our implementation

  • how we can deploy the application to heroku

  • how we can create an instance in google cloud and deploy our application to it

  • and how we can automate the deployment with github actions.

This course is purely built on practice. Each code piece we write, will be for our actual application implementation.

In each section we will gradually build our application. We will not jump ahead and add functionality not needed for that moment. We will implement one requirement at a time. Each implementation will bring the next requirement to us.

And following this practice, will help you to get a solid foundation about overall rest web services requirements and how to implement one of them with node js by following test driven development methodology.

Who this course is for:

  • Developer who wants to see Test Driven Development in action
  • Developers who are interested in with Node's Express framework
  • Developers who want deploy node js application to cloud