User, question, and answer management with Express.js and MongoDB. JWT auth, profiles, likes, admin panel. A fully-fledged backend solution.
Category
Backend
Status
Completed
GitHub Stats
Created
Jun 18, 2023
Last Updated
Jun 18, 2023
In this project, I developed a backend API using Express.js and MongoDB for managing questions, answers, and users.
Simply handling basic CRUD operations for a question-answer logic isn't sufficient. I addressed the need to consolidate authentication, profile management, answer flow, the like system, and authorization within the same structure.
I divided the API structure into auth, question, answer, user, and admin routes. I implemented flows such as JWT-based login, registration, profile viewing, password reset, profile picture uploads, and user blocking on the admin side. On the question and answer side, I established creation, listing, detail viewing, editing, deletion, liking, and unliking operations using route guards and ownership checks.
The outcome is a well-organized REST API that meets the fundamental backend requirements of question-answer platforms. I consolidated both user operations and content management under a single service.
JavaScript, Node.js, Express.js, MongoDB, Mongoose, JWT, bcryptjs, multer, nodemailer, slugify, dotenv, nodemon