generator-micronaut-ddd

0.0.9 • Public • Published

generator-micronaut-ddd

Yeoman templating for generating boiler plate in a Micronaut based project.

Getting started

This generator up front assumes that you are using Micronaut with Kotlin as the application language and Spock as the testing framework. It takes an opinionated approach to how to arrange the code as well as the additional libraries being used.

It is assumed that you won't be using Hibernate for database access and will instead be using Spring's NamedParameterJdbcTemplate. It is also assumed that you are using Postgres for your database and Flyway for managing your database migrations.

Obviously if this doesn't fit your desired use of Micronaut these templates won't help you out, but thanks for reading this far!

Installing

  1. Download the Micronaut command line tool from Micronaut Tool or if you are in an environment that supports SDKMAN use that to install it.
  2. Create a micronaut project following their instructions
    1. Will be something like mn create-app my-kotlin-app --features kotlin,spock
  3. Execute npm init and go through the setup
  4. Execute npm i --save-dev generator-micronaut-ddd

Using

  1. Initialize npx yo generator-micronaut-ddd
  2. Create a domain npx yo generator-micronaut-ddd:domain NewDomain [ ExistingDomainToPutNewDomainIn ]
  3. Create a controller npx yo generator-micornaut-ddd:controller NewDomain
  4. Create a Flyway Migration npx yo generator-micronaut-ddd:migration table_name description [-a | --append]

Reasoning

This is how I lay out my Micronaut projects. I am attempting to follow a mostly domain driven design, or at least my own take on it. I got tired of writing a bunch of boiler plate code for each part of the domain as I went so I created some templates for it. Someone told me that if I had used Hibernate there wouldn't be so much of that, but I am horrible with Hibernate so here I am. :(

This does kind of act as some sort of meta framework on top of Micrnaut. This has the advantage of allowing me to be pragmatic and break out of my self imposed requirements when they don't fit perfectly.

Package Sidebar

Install

npm i generator-micronaut-ddd

Weekly Downloads

0

Version

0.0.9

License

Apache-2.0

Unpacked Size

57.5 kB

Total Files

39

Last publish

Collaborators

  • developersid