Clean architectured, Infrastructure agnostic and Domain Driven designed Typescript application boilerplate.
| Status | |
|---|---|
| Test Suites | |
| Code Coverage | |
| Security scanner |
Design principles- Domain Driven Design
- The Clean Architecture
- Hexagonal Architecture
- SOLID.
- Monolithic. Ability to quickly switch to microservice.
Language: TypeScriptDatabase: Agnostic, In Memory, Key/Value, NoSQL
.
├── ...
├── src
│ ├── Domains
│ │ ├── Facilities
│ │ │ ├── Data Entity
│ │ │ │ ├── IFacility.js
│ │ │ ├── Data Model
│ │ │ │ ├── Facility.js
│ │ │ ├── Data Repository
│ │ │ │ ├── FacilityMongoDB.js
│ │ │ ├── Use cases
│ │ │
│ │ ├── Agents
│ │ │ ├── Data Entity
│ │ │ │ ├── IAgent.js
│ │ │ ├── Data Model
│ │ │ │ ├── Agent.js
│ │ │ ├── Data Repository
│ │ │ │ ├── AgentMongoDB.js
│ │ │ ├── Use cases
│ │ │
│ │ └── Shifts
│ │ ├── Data Entity
│ │ │ ├── IShift.js
│ │ ├── Data Model
│ │ │ ├── Shift.js
│ │ ├── Data Repository
│ │ │ ├── ShiftMongoDB.js
│ │ ├── Use cases
│ │ ├── getShiftsByFacility.js
│ │ ├── generateReport.js
│ │
│ └── Infrastructure
│ ├── Persistence
│ │ ├── BaseRepo.ts
│ │ ├── InMemory.ts
│ │ ├── Paging.ts
│ │
│ ├── Utils
│
├── tests # Test files
│
└── ...
- Install Node.js
- Run
npm iin this repo to install dependencies - Run
npm testto run the automated tests
