An open API service indexing awesome lists of open source software.

https://github.com/namtndev/ecom-forge-api

🛠️ E-commerce backend built with Node.js & Express.js, focusing on MongoDB & MySQL design. Includes Redis, RabbitMQ, ElasticSearch, AWS (S3, SES), and Docker. 🎯 Educational project on backend architecture & scalable systems.
https://github.com/namtndev/ecom-forge-api

Last synced: 12 months ago
JSON representation

🛠️ E-commerce backend built with Node.js & Express.js, focusing on MongoDB & MySQL design. Includes Redis, RabbitMQ, ElasticSearch, AWS (S3, SES), and Docker. 🎯 Educational project on backend architecture & scalable systems.

Awesome Lists containing this project

README

          

# 🛍️🛒 EcomForge: E-commerce Backend Learning Platform

Welcome to **EcomForgeApi**! This is an educational backend project for building a scalable E-commerce system using modern backend technologies. It's designed as a **learning playground** to explore practical aspects of backend development, system design, and integration.

## 🎯 Learning Objectives & Focus

This project focuses on:

- **🧠 Building a robust backend** using **Node.js** & **Express.js**
- **🗃️ Mastering database design**:

- **MySQL (SQL)**: Normalization, relational modeling, transactions, joins
- **MongoDB (NoSQL)**: Schema design, embedded vs referenced documents

- **⚡ Improving performance** with **Redis** caching
- **📩 Asynchronous processing** with **RabbitMQ** for handling background tasks (e.g., email sending, order processing)
- **🔍 Implementing full-text search** with **Elasticsearch**
- **☁️ Cloud service integration** using **AWS**:

- **S3** for storing product images
- **SES** for email services

- **🐳 Dockerizing** the entire architecture for portability and deployment

## ⚙️ Tech Stack

- **Language**: JavaScript / TypeScript (TBD)
- **Framework**: Node.js, Express.js
- **Databases**: MySQL (SQL), MongoDB (NoSQL)
- **Cache**: Redis
- **Message Broker**: RabbitMQ
- **Search Engine**: Elasticsearch
- **Cloud Services**: AWS S3, SES
- **Deployment**: Docker

## 🚀 Getting Started

> Setup instructions will be updated as the project progresses.

1. Clone the repository:

```bash
git clone https://github.com/NamTNDEV/ecom-forge-api.git
```

2. Navigate into the project:

```bash
cd ecom-forge-api
```

3. Install dependencies:

```bash
npm install
```

4. Configure environment variables in `.env`
5. Run the development server:

```bash
npm run dev
```

Let the learning begin 🚀

---

Crafted with ❤️ and ☕ by [NamTNDEV](https://github.com/NamTNDEV)