An eCommerce project to practice and study concepts like, but not limited to:
- Domain-Driven Design
- Clean Architecture
- Design Patterns
- Ports and adapters
- TDD
- TypeScript/Node.js
- Docker
- Docker compose
- Node 20.x
This repo is composed by all lml-commerce components, including but not limited to:
- backend - NestJs API
- frontend - React SPA
- database - Mysql
- clone/fork this repository
- install dependencies
- rename .env.example and set your environment variables
- start database container
- run tests
- start application
git clone https://github.com/virb30/lml-commerce.git
cd lml-commerce
npm install
mv backend/.env.example backend/.env
docker compose up -d
npm run test:backend
npm run dev
This will start all packages of the project (backend and frontend)
If you want to install a dependency that will be only available in one workspace (backend or frontend)
and not globally use the --prefix
option, eg:
npm install --prefix frontend date-fns
This command will install the date-fns
library just for the frontend workspace.