https://github.com/rhannachi/api-ddd
API Typescript Domaine Driven Design
https://github.com/rhannachi/api-ddd
clean-architecture express nodejs tdd testing typescript
Last synced: 2 months ago
JSON representation
API Typescript Domaine Driven Design
- Host: GitHub
- URL: https://github.com/rhannachi/api-ddd
- Owner: rhannachi
- License: mit
- Created: 2022-05-20T21:17:34.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2025-01-16T08:18:40.000Z (5 months ago)
- Last Synced: 2025-03-17T22:54:45.158Z (3 months ago)
- Topics: clean-architecture, express, nodejs, tdd, testing, typescript
- Language: TypeScript
- Homepage:
- Size: 8.02 MB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 21
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# API Typescript Domaine Driven Design
##
[](https://www.typescriptlang.org)\
[](https://blog.octo.com/architecture-hexagonale-trois-principes-et-un-exemple-dimplementation)##
[](https://www.codacy.com/gh/rhannachi/api-ddd/dashboard?utm_source=github.com&utm_medium=referral&utm_content=rhannachi/api-ddd&utm_campaign=Badge_Grade)\
[](https://lgtm.com/projects/g/rhannachi/api-ddd/context:javascript)
[](https://lgtm.com/projects/g/rhannachi/api-ddd/alerts/)
[](https://snyk.io/test/github/rhannachi/api-ddd)[](https://github.com/rhannachi/api-ddd/actions/workflows/workflow.yml)\
[](https://codecov.io/gh/rhannachi/api-ddd)## Architecture and dependencies:
```
src/
├── adapters
│ ├── emailValidation
│ │ └── emailValidator.adapter.ts
│ └── encrypter
│ └── encrypter.adapter.ts
├── application
│ ├── protocols
│ │ ├── addUser.repository.d.ts
│ │ ├── encrypter.adapter.d.ts
│ │ └── logError.repository.d.ts
│ └── user
│ └── addUser.ts
├── domain
│ ├── authentication
│ │ └── authentication.d.ts
│ └── user
│ └── user.d.ts
├── infra
│ └── mongo
│ ├── helper.ts
│ ├── log
│ │ ├── log.repository.model.ts
│ │ └── log.repository.ts
│ └── user
│ ├── user.repository.model.ts
│ └── user.repository.ts
├── main
│ ├── adapters
│ │ └── express.adapter.ts
│ ├── config
│ │ ├── app.ts
│ │ └── env.ts
│ ├── decorators
│ │ └── log.ts
│ ├── factories
│ │ ├── signin
│ │ │ ├── signin.ts
│ │ │ └── signinValidation.ts
│ │ └── signup
│ │ ├── signup.ts
│ │ └── signupValidation.ts
│ ├── middlewares
│ │ ├── bodyParser.ts
│ │ ├── contentType.ts
│ │ └── cors.ts
│ ├── routes
│ │ └── signup.route.ts
│ └── server.ts
└── presentation
├── controllers
│ ├── http.ts
│ ├── signin
│ │ └── signin.ts
│ └── signup
│ └── signup.ts
├── errors
│ ├── invalidParams.ts
│ ├── missingParams.ts
│ ├── serverError.ts
│ └── unauthorized.ts
├── protocols
│ ├── controller.d.ts
│ ├── emailValidation.adapter.d.ts
│ ├── fieldsValidation.d.ts
│ └── http.d.ts
└── validators
├── compareFieldsValidation.ts
├── emailValidation.ts
├── fieldsValidationComposite.ts
└── requiredFieldValidation.ts
```### Presentation layer

### Application layer

### Infra layer

### Adapters layer

### Main layer
