Skip to content

carbonteq/ddd-generator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Domain Driven Design Generator

An awesome Domain Driven Design Generator to jumpstart your projects!

Table of Contents
  1. About The Project
  2. Getting Started
  3. Usage
  4. Contributing

About The Project

There are many great nodejs templates available on GitHub; however, we didn't find one that really suited our needs so we created this ddd-generator.

Here's why:

  • Your time should be focused on creating project business logic because this package will generate basic CRUD operations.
  • You shouldn't be doing the same tasks over and over like creating CRUD operations from scratch.
  • This generator uses prisma data models to generate code.

(back to top)

Built With

This project is built on the top of hygen package for typescript.

(back to top)

Getting Started

You should have a basic setup of nodejs project using typescript

Prerequisites

Should have a sound knowledge of Domain Driven Design, nodejs and typescript.

Installation

This generator leverages Prisma data models to so you should have schema.prisma file in your project.

  1. You can clone the basic nodejs boilerplate
    git clone https://github.com/carbonteq/ddd-project-starter.git
  2. Configure prisma and its schema.prisma file. Write data models in it with db datasource
  3. Install ddd-generator package
    npm i @carbonteq/ddd-generator

(back to top)

Usage

Use following command to generate code.

  1. Run following command. A command prompt will appear where you will be able to select different options.
    npx ddd-generator

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

(back to top)