React, NodeJS, Express & MongoDB - The MERN Fullstack Guide
Build fullstack React.js applications with Node.js, Express.js & MongoDB (MERN) with this project-focused course.
Build fullstack React.js applications with Node.js, Express.js & MongoDB (MERN) with this project-focused course.
We built the bestselling React course on Udemy - this course now allows you to take your React knowledge to the next level and build fullstack web apps based on React, NodeJS, MongoDB and Express!
Building fullstack applications (i.e. frontend + backend) with the MERN stack is very popular - in this course, you will learn it from scratch at the example of a complete project!
MERN stands for MongoDB, Express.js, React.js and Node.js - and combined, these four technologies allow you to build amazing web applications.
In this course, we'll build an entire project and you will learn how these different technologies work together step by step. We'll first have a look at all the individual building blocks, so that we then can also combine them all into one amazing application by the end of the course.
This course also doesn't stop after the basics - instead, you'll also learn how to add file upload, authentication, authorization and how to deploy your application in different ways to different hosting services.
This course is taught by two instructors - Max (React.js, Node/ Express) and Manuel (MongoDB) who have years of experience of working with these technologies and teaching them to other people. We took and combined our experiences to deliver you the best possible MERN stack course you can find out there.
In detail, this course offers:
Brief refreshers on the core technologies (React, Node, Express, MongoDB)
Project sections for each technology where the theoretic knowledge is applied
Detailed theory about the MERN stack and the different ways of combining the technologies
A complete course project where all the technologies come together into one application
File (image) upload in both React.js (sending the file) and Node/ Express (receiving the file)
User authentication (signup + login)
User authorization (controlling access to certain resources)
Detailed deployment instructions - including different ways of deploying the application
Tons of quizzes and extra resources!
By the end of this course, you'll feel comfortable building your own MERN stack applications and you can build up on all the knowledge taught throughout this course to dive into your own projects and use-cases.
What are the requirements for taking this course?
NO prior MERN stack knowledge is required
Basic React.js knowledge is strongly recommended - a refresher is provided as part of the course but this course is NOT meant to teach React from the ground up
Basic Node + Express knowledge is recommended but not a must-have
As always, this course comes with a 30-day money-back guarantee.
We'd love to dive into this course together with you!
FAQ area empty
Module Introduction
Xem trướcUnderstanding the Big Picture
Xem trướcDiving Into the Frontend
Xem trướcUnderstanding the Backend
Xem trướcREST vs GraphQL
Xem trướcConnecting Node & React
Xem trướcMERN - Essentials
Xem trướcCreating our Development Environment & the Development Servers
Xem trướcDiving Deeper Into the Code
Xem trướcUseful Resources & Links
Module Introduction
Xem trướcWhat is React?
Xem trướcA Note About The NodeJS Version
React 18
Setting Up a Starting Project
Xem trướcUnderstanding JSX
Xem trướcUnderstanding Components
Xem trướcWorking with Multiple Components
Xem trướcUsing Props to pass Data between Components
Xem trướcRendering Lists of Data
Xem trướcHandling Events
Xem trướcEfficient Child<=>Parent Communication
Xem trướcWorking with "State"
Xem trướcMore on State
Xem trướcFetching User Input (Two-way Binding)
Xem trướcReact.js Basics
Wrap Up
Xem trướcUseful Resources & Links
Module Introduction
Xem trướcImportant: Use React Script v5
Starting Setup, Pages & Routes
Xem trướcAdding a UsersList Page / Component
Xem trướcAdding a UserItem Component
Xem trướcStyling our App & More Components
Xem trướcPresentational vs Stateful Components
Xem trướcAdding a Main Header
Xem trướcAdding Navlinks
Xem trướcImplementing a Basic Desktop & Mobile Navigation
Xem trướcUnderstanding Portals
Xem trướcHandling the Drawer State
Xem trướcAnimating the Sidedrawer
Xem trướcRendering User Places & Using Dynamic Route Segments
Xem trướcGetting Route Params
Xem trướcAdding Custom Buttons
Xem trướcAdding a Modal
Xem trướcRendering a Map with Google Maps
Xem trướcContinuing without a Credit Card
Optional: More on the useEffect() Hook
Adding a Custom Form Input Component
Xem trướcManaging State in the Input Component
Xem trướcAdding Input Validation
Xem trướcSharing Input Values & Adding Multiple Inputs
Xem trướcManaging Form-wide State
Xem trướcFinishing the "Add Place" Form
Xem trướcStarting Work on the "Update Place" Page
Xem trướcAdjusting the Input Component
Xem trướcCreating a Custom Form Hook (useForm)
Xem trướcOptional: More on (Custom) React Hooks
Adjusting the Form Hook
Xem trướcFixing Minor Issues
Xem trướcShowing a Deletion Warning
Xem trướcAdding an "Auth" Page & Login Form
Xem trướcAdding Signup + "Switch Mode" Button
Xem trướcAdding Auth Context for App-wide State Management
Xem trướcListening to Context Changes
Xem trướcAdding Authenticated & Unauthenticated Routes
Xem trướcMore Auth Context Usage
Xem trướcWrap Up
Xem trướcUseful Resources & Links
Module Introduction
Xem trướcWhat is Node.js?
Xem trướcWriting our First Node.js Code
Xem trướcSending Requests & Responses
Xem trướcWhat is Express.js?
Xem trướcAdding Express.js
Xem trướcUnderstanding the Advantages of Express.js
Xem trướcHow Code Execution Works
Xem trướcNode & Express Basics
Useful Resources & Links
Module Introduction
Xem trướcSetting up our Project
Xem trướcImplementing Basic Routing
Xem trướcAdding Place-Specific Routes
Xem trướcGetting a Place By User ID
Xem trướcHandling Errors
Xem trướcAdding our own Error Model
Xem trướcAdding Controllers
Xem trướcAdding a POST Route & Using Postman
Xem trướcHandling Errors for Unsupported Routes
Xem trướcAdding Patch Routes to Update Places
Xem trướcDeleting Places
Xem trướcFinalizing the "Get Places by User ID" Resource
Xem trướcSetting Up the User Routes (Signup, Login, Get Users)
Xem trướcValidating API Input (Request Bodies)
Xem trướcValidating Patch Requests & User Routes
Xem trướcUsing Google's Geocoding API to Convert an Address Into Coordinates
Xem trướcWrap Up
Xem trướcUseful Resources & Links
Module Introduction
Xem trướcWhat is MongoDB?
Xem trướcSQL vs NoSQL
Xem trướcConnecting React to a Database?
Xem trướcSetting Up MongoDB
Xem trướcCreating a Simple Backend & Connecting it to the Database
Xem trướcCreating a Document with MongoDB
Xem trướcGetting Data from the Database
Xem trướcInstalling Mongoose
Xem trướcUnderstanding Models & Schemas
Xem trướcCreating a Product
Xem trướcConnecting to the Database & Saving the Product
Xem trướcGetting Products
Xem trướcUnderstanding the ObjectID
Xem trướcWrap Up
Xem trướcUseful Resources & Links
Module Introduction
Xem trướcInstalling Mongoose & Connecting our Backend to MongoDB
Xem trướcCreating the Place Schema & Model
Xem trướcCreating & Storing Documents in the Database
Xem trướcGetting Places by the PlaceID
Xem trướcGetting Places by the UserID
Xem trướcUpdating Places
Xem trướcDeleting Places
Xem trướcHow Users & Places are Related
Xem trướcCreating the User Model
Xem trướcUsing the User Model for Signup
Xem trướcAdding the User Login
Xem trướcGetting Users
Xem trướcAdding the Relation between Places & Users
Xem trướcCreating Places & Adding it to a User
Xem trướcDeleting Places & Removing it From the User
Xem trướcGetting Places - An Alternative
Xem trướcCleaning Up our Code
Xem trướcWrap Up
Xem trướcUseful Resources & Links
Module Introduction
Xem trướcInitial Setup
Xem trướcSending a POST Request to the Backend
Xem trướcOptional: The fetch() API
Handling CORS Errors
Xem trướcGetting Started with Error Handling
Xem trướcProper Error Handling in the Frontend
Xem trướcSending a Login Request
Xem trướcGetting Users with a GET Request
Xem trướcCreating a Custom Http Hook
Xem trướcImproving the Custom Http Hook
Xem trướcUsing the Http Hook to GET Users
Xem trướcAdding Places (POST)
Xem trướcLoading Places by User Id
Xem trướcUpdating Places
Xem trướcDeleting Places
Xem trướcFixing NavLinks & "My Places"
Xem trướcFinal Adjustments
Xem trướcUseful Resources & Links
Module Introduction
Xem trướcBuilding an ImageUpload Component
Xem trướcFinishing & Using the ImageUpload Component (in a Form)
Xem trướcOn the Backend: Using Multer to Save Files
Xem trướcFiltering Files on the Backend (Images Only!)
Xem trướcWiring Frontend and Backend Up
Xem trướcConnecting Users to Images
Xem trướcServing Images Statically
Xem trướcUploading Images for New Places
Xem trướcDeleting Images When Places Get Deleted
Xem trướcWrap Up
Xem trướcUseful Resources & Links
Module Introduction
Xem trướcHow Authentication Works (in a MERN App)
Xem trướcHashing the User Password
Xem trướcLogging Users In (with Hashed Passwords)
Xem trướcGenerating Tokens (JWT) on the Backend
Xem trướcOptional: More on JSON Web Tokens
Backend Route Protection with Auth Middleware
Xem trướcUsing & Attaching JWT (Tokens) in React
Xem trướcUsing Tokens to Update and Delete Places
Xem trướcAdding Authorization
Xem trướcAuthorization on "Delete Places"
Xem trướcStoring the Token in the Browser Storage
Xem trướcAdding Auto-Login (Basic Version)
Xem trướcManaging the Token Expiration Date
Xem trướcFinished Auto-Login & Auto-Logout
Xem trướcCreating a Custom Authentication Hook
Xem trướcAuthentication - Summary
Xem trướcGeneral App Improvements
Xem trướcAuthentication & Authorization
Useful Resources & Links
Module Introduction
Xem trướcDeployment Steps Overview
Xem trướcUsing Environment Variables (Node.js)
Xem trướcEnvironment Variables in React Apps
Xem trướcPreparing API Keys & Credentials
Xem trướcBuilding the React App
Xem trướcAdding Code Splitting to React
Xem trướcUnderstanding Possible Deployment Alternatives
Xem trướcDeploying a Standalone REST API (Example: Heroku)
Xem trướcDeploying a Standalone React SPA (Example: Firebase Hosting)
Xem trướcFixing Style Issues
Xem trướcDeploying a Combined App
Xem trướcStoring Files/ Uploads
Xem trướcWrap Up
Xem trướcBasic knowledge about ReactJS is required
ReactJS Hooks knowledge is recommended
Basic knowledge about Node, Express and MongoDB is recommended but not a must-have
NO expert React knowledge or MERN knowledge is required
Learn how to connect ReactJS with NodeJS, Express & MongoDB
Build an entire project from scratch!
Refresh the basics about ReactJS, NodeJS, Express and MongoDB
Learn how to implement Authentication & Authorization
Add File Upload to ReactJS + Node/ Express Applications