This device is not compatible.
PROJECT
Build an E-Learning Website with the MERN Stack
In this project, we will build an e-learning course catalog website with search functionality. We’ll design the database, schema, and API. We’ll also build the frontend and integrate an LLM-based chatbot using RAG (retrieval-augmented generation) to answer user queries based on the course data.
You will learn to:
Use the functional components of React.
Use React-Bootstrap to design the layout.
Use MongoDB to store and retrieve data, using the Mongoose library.
Lift the state to share the data between multiple functional components.
Use the Axios library to connect React components to the Node.js server.
Connect the Node.js server to store and retrieve data from MongoDB.
Implemented a chatbot using LLM-based (RAG) to answer queries based on course data.
Skills
Web Frameworks
Web Development
Prerequisites
Basic understanding of React components and state
Basic understanding of React Hooks
Basic understanding of JavaScript
Basic understanding of Node.js
Basic understanding of MongoDB
Technologies
MERN
Gemini
Node.js
Express
JavaScript
Project Description
In this project, we’ll build a responsive and interactive e-learning course catalog website. The platform displays a list of available courses and allows users to search through them using a dynamic search bar. Users will be able to:
View a complete catalog of courses
Search for courses based on keywords, titles, or categories
Browse a clean, user-friendly interface designed for seamless navigation
Ask questions to an integrated LLM-powered chatbot about course details or project information
Technologies used
This application is built using a modern full stack architecture:
MongoDB: A NoSQL database for storing structured course data
Express.js: A backend web framework for creating RESTful APIs
React.js: A frontend library for building responsive user interfaces
Node.js: A runtime environment to serve backend logic and handle requests
LangChain and Google Gemini: To build an intelligent chatbot powered by large language models (LLMs) for answering user queries from embedded course data
Development workflow
Backend setup: Express.js connects with MongoDB and defines endpoints to retrieve course data.
Frontend implementation: React components dynamically render courses and connect with the backend.
Search functionality: A real-time search bar filters courses by user input.
LLM-based chatbot: A retrieval-augmented generation (RAG) chatbot answers user questions using relevant project data, offering contextual help and insights.
Project Tasks
1
Backend with Node.js
Task 0: Get Started
Task 1: Run the Application
Task 2: Define the Database Schema
Task 3: Set up Node.js Server and MongoDB Connection
Task 4: Get the API Key
Task 5: Create Courses Routes and Controllers
Task 6: Set Up the Vector Store for AI-Powered Chatbot Responses
Task 7: Create Routes and Controllers for the Chatbot
Task 8: Insert Data into the Database
Task 9: Connect the Backend to Different Routes
2
Frontend with React
Task 10: Develop the Frontend with React
Task 11: Develop a Component for Courses
Task 12: Develop the Component for Search
Task 13: Develop Component for the Chatbot
Task 14: Integrate Components
Task 15: Test the Components
3
Connect Frontend and Backend
Task 16: Connect the Frontend with the Backend
Task 17: Update the BaseComponent
Congratulations!
Atabek BEKENOV
Senior Software Engineer
Pradip Pariyar
Senior Software Engineer
Renzo Scriber
Senior Software Engineer
Vasiliki Nikolaidi
Senior Software Engineer
Juan Carlos Valerio Arrieta
Senior Software Engineer
Relevant Courses
Use the following content to review prerequisites or explore specific concepts in detail.