Skip to content

andireuter/js-domain-principles

Repository files navigation

JS Domain Principles

With this incredible domain-driven design toolkit, you can easily start coding with these principles. I recommend to read further literature Khalil Stemmler: Domain-Driven Design and my Medium bookmarks.

A short word about OpenSource

Hi, my name is Andi. I work as a Lead iOS Engineer and Product Designer | Freelancing and Contract | Swift / iOS, macOS, GraphQL, Google Cloud and NodeJS for more than 13+ years 👋,

I actively maintain this toolkit. 🚀

I love to share this well developed domain-driven design toolkit with you. You can use it whenever you want for free to develop an incredibly clean code structure.

You can contact me at any time contact@andireuter.com.

You can find me on LinkedIn, or on Behance, or on HackerRank.

Download and Install NPM Package

You have to paste this file .npmrc in the root folder of your code base. Because this NPM package is published to GitHub.

@andireuter:registry=https://npm.pkg.github.com

NPM

npm install @andireuter/js-domain-principles

Deno

deno add npm:@andireuter/js-domain-principles

Folder structure

This structure works for both workflows and agents, keeps naming consistent, a single bounded context.

/src
  /application
    dto/
    useCase/
    validator/
  /domain
    aggregate/
    domainService/
    entity/
    repository/
    valueObject/
  /infrastructure
    config/
    error/
    api/
    mapper/
    persistence/

Bounded Context-based folder structure

This structure works for both workflows and agents, keeps naming consistent, grouping by bounded context.

/src
  /shared
    /domain
      entity/
      valueObject/
    /infrastructure
      error/
      apiClient/

  /<boundedContext>
    /application
      dto/
      useCase/
      validator/
    /domain
      aggregate/
      domainService/
      entity/
      repository/
      valueObject/
    /infrastructure
      config/
      error/
      api/
      mapper/
      persistence/

Further Reading

About

Incredible domain-driven design toolkit to get you started coding with these principles.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

  •  

Packages

 
 
 

Contributors