A robust, scalable RESTful API designed to power the backend operations of an e-commerce platform. Built with a modular architecture, this project ensures secure data handling, efficient database queries, and reliable order processing.
- Runtime: Node.js
- Framework: Express.js
- Database: PostgreSQL
- Version Control: Git
- Secure User Authentication: Implementation of secure login and registration workflows (e.g., JWT, password hashing) to protect user data.
- Product Management: Complete CRUD operations for dynamic product listings and inventory tracking.
- Order Processing: Optimized API endpoints designed to seamlessly handle concurrent requests during checkout and order creation.
- Relational Database: A highly normalized PostgreSQL schema designed to guarantee data integrity and maximize query performance.
- Modular Architecture: Clean, maintainable codebase separating routes, controllers, and database configurations.
The database is built on a normalized PostgreSQL schema to prevent data redundancy and ensure relationships between Users, Products, and Orders are strictly maintained.
- Node.js installed on your local machine.
- PostgreSQL installed and running locally.
- Clone the repository:
git clone [https://github.com/yourusername/ecommerce-backend.git](https://github.com/yourusername/ecommerce-backend.git)
- Navigate to the project directory:
cd ecommerce-backend - Install dependencies:
npm install
- Set up your environment variables. Create a
.envfile in the root directory and add your database credentials:PORT=5000 DB_USER=your_postgres_user DB_HOST=localhost DB_NAME=ecommerce_db DB_PASSWORD=your_postgres_password DB_PORT=5432
- Start the development server:
node server.js
This project follows a Git-based version control workflow for collaborative development. Feel free to fork the repository and submit pull requests.