Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/anusree6154s/qkart-backend-2
Backend for Crio module - QKart Backend
https://github.com/anusree6154s/qkart-backend-2
jest jwt mongodb mongoose nodejs passportjs reactjs
Last synced: 23 days ago
JSON representation
Backend for Crio module - QKart Backend
- Host: GitHub
- URL: https://github.com/anusree6154s/qkart-backend-2
- Owner: Anusree6154s
- Created: 2024-08-14T04:50:15.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2024-10-23T15:11:50.000Z (24 days ago)
- Last Synced: 2024-10-23T18:22:01.520Z (24 days ago)
- Topics: jest, jwt, mongodb, mongoose, nodejs, passportjs, reactjs
- Language: JavaScript
- Homepage: https://qkart-backend-2-jlz8.onrender.com/v1/swagger/docs
- Size: 5.84 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Crio Module: QKart Backend
Deployment URLs
QKart Backend (Render)
QKart Frontend (Netlify)
QKart Backend API Doc## Description
- **Problem**: E-commerce applications need robust and secure backends for user management and product transactions.
- **Solution**: Developed a comprehensive set of **REST APIs** for the QKart e-commerce application.## Development Strategy
### Technology Stack
- **Back-end**: **Node.js**, **Express.js** for server-side logic.
- **Database**: **MongoDB** for flexible data storage.
- **Authentication**: **JWT** for secure user sessions; **Passport.js** for authentication management.
- **Testing**: **Jest** for unit and integration tests.### Architecture
- **Layered Approach**: Separates concerns to enhance maintainability.
- **API Structure**:
- **User Management**: Handles registration, login, and user data.
- **Shopping Cart**: Manages product addition and user checkout.### Features
- **User Registration & Authentication**: Secure account creation and login.
- **Shopping Cart Management**: Add/remove products, update quantities.
- **Checkout Process**: Facilitates transaction handling.## Trade-offs & Improvements
- Prioritized security over performance; optimizations planned for future iterations.
- Basic tests implemented; focus on expanding testing coverage.## Future Improvements
- Implement microservices for better scalability.
- Enhance API documentation and improve error handling.## How to Run
1. **Clone the repo**:
```bash
git clone https://github.com/yourusername/qkart-backend.git
```2. **Install dependencies**:
```bash
npm install
```3. **Run the server**:
```bash
npm start
```Access the API at `http://localhost:YOUR_PORT/v1`.
## Demo
- Preview homepage of API Docs