https://github.com/hdev14/project-s
This is an idea of SaaS to manage service and product subscriptions. The project is design to support multi-tenant users and it is being implemented with the best software's practices and principles, such as DDD, TDD, Hexagonal Architecutre, Clean Architecture and Modular Architecture.
https://github.com/hdev14/project-s
cqs design-patterns devops domain-driven-design hexagonal-architecture modular-architecture monolith monorepo mult-tenancy mult-tenant nextjs open-telemetry test-driven-development typescript
Last synced: 10 days ago
JSON representation
This is an idea of SaaS to manage service and product subscriptions. The project is design to support multi-tenant users and it is being implemented with the best software's practices and principles, such as DDD, TDD, Hexagonal Architecutre, Clean Architecture and Modular Architecture.
- Host: GitHub
- URL: https://github.com/hdev14/project-s
- Owner: hdev14
- Created: 2024-06-09T18:31:28.000Z (12 months ago)
- Default Branch: main
- Last Pushed: 2025-05-09T19:35:11.000Z (14 days ago)
- Last Synced: 2025-05-09T19:36:07.634Z (14 days ago)
- Topics: cqs, design-patterns, devops, domain-driven-design, hexagonal-architecture, modular-architecture, monolith, monorepo, mult-tenancy, mult-tenant, nextjs, open-telemetry, test-driven-development, typescript
- Language: TypeScript
- Homepage:
- Size: 16.2 MB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Project S [Build in Public]
This is an idea of SaaS to manage service and product subscriptions. The project is design to support mult-tenant users and it is being implemented with the best software's practices, such as DDD, TDD, Hexagonal Architecutre, Clean Architecture and Modular Architecture.[System Design (WIP)](https://excalidraw.com/#json=-9EoHMp9-sZsnnsJgxSZs,kU7PZsPbZowNREkOI3vlvg)
1. [Setup](#setup)
2. [Architecture & Code Design](#architecture--code-design)
3. [Automated Tests](#automated-tests)
4. [Methodologies](#methodologies)
5. [API Docs](#api-docs)
6. [UI](#ui)
7. [Technologies](#main-technologies)## Setup
### Envs
First of all, you have to make a copy of the .env.example in each workspace.
E.g:
```bash
cp applications/core/.env.example applications/core/.env
cp applications/backoffice/.env.example applications/backoffice/.env
cp applications/platform/.env.example applications/platform/.env
```### Docker
The project has a docker-compose.yml that is perfect to setup every thing you need to run the project locally. So all you need is just exec the command below:
`docker compose up --build`
>Obs.: You must follow all the setup section mention early to run this command.
### Database Migration
- setup## Architecture & Code Design
### Clean Architecture
- write about the principles### Hexagonal Architecture
- write about the real ports and adapters### Domain Modeling
- write about the tactical aproach### Modular Architecture
- write about### Monorepo & Project Structure
- tree## Automated Tests
### Unit tests
- setup
- examples### Integration Tests
- setup
- examples### End to End tests
- setup
- examples## Methodologies
### Domain Driven Design
- write about
- ubiquitous language
- glossary### Test Driven Development
- write about
- references## API Docs
- open api
- instructions## UI
## Technologies
[typescript](), [nodej](), [nextjs](), [react](), [express](), [inversify](), [jest](), [pg](), etc.