EliteGadget is an electronic gadgets e-commerce platform designed to provide a seamless shopping experience. This project was built using Next.js (frontend) and Node.js with Express and Mongoose (backend) following a modular architecture.
- State Management: Redux Toolkit
- Styling: Tailwind CSS
- Routing: Next.js App Router
- Authentication: JWT & Firebase Social Login
- UI Components: Shadcn & Material-UI
- Database: MongoDB
- ORM/ODM: Mongoose & Prisma
- Authentication: JWT
- Payment Integration: SSLCommerz
- Search Feature: Meilisearch
π
Date: October 21-22, 2023
π― Goal: Set up the backend for the Electronic Gadgets Shop project using Node.js, Express, and MongoDB.
- π Project setup with TypeScript and ESLint.
- π Implemented JWT-based authentication.
- π¦ Designed MongoDB schemas for
UserandProduct. - π Created RESTful API endpoints for user and product management.
- πΉ Implementing secure JWT authentication.
- πΉ Restricting access to admin-only routes.
- πΉ Configuring TypeScript with Express and Mongoose.
- πΉ Used
jsonwebtokenfor token generation and verification. - πΉ Created
roleMiddlewarefor role-based access control. - πΉ Extended the
Requestinterface to include auserproperty.
- β Functional backend with secure authentication.
- β Clean and maintainable code with TypeScript and ESLint.
- π Gained hands-on experience with JWT and role-based access control.
- π Improved my understanding of TypeScript and Mongoose.
This case study highlights my problem-solving skills and backend development expertise. π