Scaffolding tool for clean architecture project in dotnet.
WORK IN PROGRESS!
Developed and tested on Windows. May or may not work on Mac & Linux yet.
- Delete the contents of the
./test-output
directory. - Ensure that any previously created database is deleted if required to avoid out of sync migrations.
- Set debug parameters in launchsettings.json.
- Hit F5.
To build and install the tool globally on your local machine run this from ./CleanGenerator:
rm .\nupkg\CleanGen.1.0.1.nupkg; dotnet tool uninstall --global CleanGen; dotnet pack; dotnet tool install --global --add-source .\nupkg\ CleanGen
Then you can use it anywhere by running cleangen ...
.
- Support
DateTime
andbool
property types. - FK relationships.
- Allow specifying what properties appear on detail and summary dtos.
- Allow skipping adding migration when adding entity.
- Allow specifying properties on init entity type.
- Add
DateTime
kind management in DbContext. - Eliminate warnings when running dotnet pack.
- Install dotnet ef tool locally.
- Ensure that tool works cross platform, particularly path separators might need attention.
- Create output folder if it doesn't exist.
- Scaffold from entity instead of config.
- Scaffold e2e tests.
- Scaffold validation.
- Add delete command.
- Allow passing in entity properties and types.
- Allow specifying entity name.
- Allow specifying properties and types.
- Allow specifying SQL types.
- Name PKs in tables correctly e.g.
TodoId
instead of justId
.
- Dynamically resolve project name e.g. from .WebApi.
- Allow specifying the initial entity name when running init.
- Dynamically resolve input directory (to tool root).
- Refactor templates into their own folder.
- Separate commands for scaffold project and CRU endpoint.
- Wrap in tool.