do-ddd
is a command-line tool designed to automate domain driven design abstractions on code. It generates scaffolding for your DDD-based Node.js projects. It can -
- Generate scaffolding for Controller and UseCase files based on RequestType and ResponseType files.
- Analyzes user-defined Request and Response Types and generates corresponding UseCase and Controller files.
- TypeScript compatible.
- Utilizes AST manipulation for smart code generation.
You can install do-ddd globally using npm:
npm install -g do-ddd
Once installed, you can use the do-ddd
command to generate the necessary files. Here's how it works:
- Defined your Request and Response Types
I[SomethingSomething]Request.ts
I[SomethingSomething]Response.ts
IAuthenticationRequest.ts
export const IAuthenticationRequest = {userEmail: String, password: String}
IAuthenticationResponse.ts
export const IAuthenticationResponse = {authCode: String}
- Run the following command in the directory containing these files:
do-ddd generate
This will create:
[SomethingSomething]UseCase.ts
[SomethingSomething]Controller.ts
To contribute or modify the project, you can clone the repository and install the dependencies:
git clone https://github.com/josharsh/do-ddd.git
cd do-ddd
npm install
Build the project:
npm run build
Link the project for local testing:
npm run link
This project is licensed under the ISC License. See the LICENSE file for details.