This device is not compatible.
PROJECT
Build a Rest API for an Image-Sharing App With Node.js
In this project, we’ll build a REST API for an image-sharing app using Node.js, Express, and MongoDB. It includes features like user authentication, image uploads, and post management. Additionally, an LLM-powered chatbot is integrated to answer questions about the project using real project documentation.
You will learn to:
Connect the Node.js server to store and retrieve data from MongoDB.
Use MongoDB to store and retrieve data through the Mongoose library.
Create a REST API to insert, get, update, and delete records in the database.
Perform CRUD operations on a database.
Implemented a chatbot using LLM based (RAG) to answer queries based on project-specific data.
Skills
API Development
REST API
Large Language Models (LLMs)
Prerequisites
Good understanding of Node.js
Basic understanding of JavaScript
Basic understanding of MongoDB
Technologies
Gemini
Node.js
Express
Javascript
Project Description
An Application Programming Interface (API) allows different software programs to communicate with one another without needing to understand each other’s internal logic or structure. APIs are widely used to build server-side applications that support various client interfaces, such as web or mobile apps.
In this project, you’ll develop a robust, scalable REST API for an image-sharing application. The backend will be built using the Express.js framework in Node.js, and it will interact with a MongoDB database to store and retrieve application data.
The application will include full user authentication and profile management. Users will be able to:
Register and log in using their credentials.
Manage and update their
username
,email address
, and profile picture.Upload and manage
image
andposts
.
To enhance functionality and user engagement, this project also integrates an LLM-powered chatbot (using the large language model Google Gemini). This intelligent assistant:
Allows users to ask questions about the project.
Uses retrieval-augmented generation (RAG) to fetch relevant parts of the project documentation.
Provides accurate and context-aware answers using only the embedded project content.
Additionally, the project follows RESTful API design principles and supports secure authentication using JSON Web Tokens. Image uploads can be handled locally.
Project Tasks
1
Introduction
Task 0: Get Started
Task 1: Start the Application
2
Create a Rest API Using Node.js
Task 2: Get the API Key
Task 3: Set Up a MongoDB Connection
Task 4: Set Up the Vector Store for AI-Powered Chatbot Responses
Task 5: Create a User Model
Task 6: Create a Post Model
Task 7: Create Auth Routes
Task 8: Create User Routes
Task 9: Create Post Routes
Task 10 : Create the Routes for Chatbot
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.