An open API service indexing awesome lists of open source software.

https://github.com/neozhu/cleanarchitecturecodegenerator

Generate the application features code class that conforms to the CQRS design pattern in the Application project - Visual Studio.net 2022 Extensions plugin
https://github.com/neozhu/cleanarchitecturecodegenerator

Last synced: 6 months ago
JSON representation

Generate the application features code class that conforms to the CQRS design pattern in the Application project - Visual Studio.net 2022 Extensions plugin

Awesome Lists containing this project

README

          

# Code Generator for Clean Architecture

[![Build](https://github.com/neozhu/CleanArchitectureCodeGenerator/actions/workflows/build.yml/badge.svg)](https://github.com/neozhu/CleanArchitectureCodeGenerator/actions/workflows/build.yml)
![Visual Studio Marketplace Version (including pre-releases)](https://img.shields.io/visual-studio-marketplace/v/neozhu.247365)
![Visual Studio Marketplace Downloads](https://img.shields.io/visual-studio-marketplace/d/neozhu.247365?label=Downloads)

## Download the extension

[VS Marketplace](https://marketplace.visualstudio.com/items?itemName=neozhu.247365)

[Open VSIX Gallery](https://www.vsixgallery.com/extension/CleanArchitecture_CodeGenerator_BlazorApp)

![image](https://github.com/neozhu/CleanArchitectureCodeGenerator/assets/1549611/fbcce4ee-f14a-47c5-8dd3-37503f4ec52e)
![image](https://github.com/neozhu/CleanArchitectureCodeGenerator/assets/1549611/72b3800a-58e5-4853-ba7e-f1d7a46286be)

### How to start


-------------------------------------------------

A Visual Studio extension for easily create application features code to clean architecture project. Simply hit Shift+F2 to create an empty file in the
selected folder or in the same folder as the selected file.

See the [changelog](CHANGELOG.md) for updates and roadmap.

### Features

- Easily create following application features code
- {nameofPlural}/Commands/AddEdit/AddEdit{name}Command.cs
- {nameofPlural}/Commands/AddEdit/AddEdit{name}CommandValidator.cs
- {nameofPlural}/Commands/Create/Create{name}Command.cs
- {nameofPlural}/Commands/Create/Create{name}CommandValidator.cs
- {nameofPlural}/Commands/Delete/Delete{name}Command.cs
- {nameofPlural}/Commands/Delete/Delete{name}CommandValidator.cs
- {nameofPlural}/Commands/Update/Update{name}Command.cs
- {nameofPlural}/Commands/Update/Update{name}CommandValidator.cs
- {nameofPlural}/Commands/Import/Import{name}Command.cs
- {nameofPlural}/Commands/Import/Import{name}CommandValidator.cs
- {nameofPlural}/DTOs/{name}Dto.cs
- {nameofPlural}/EventHandlers/{name}CreatedEventHandler.cs
- {nameofPlural}/EventHandlers/{name}UpdatedEventHandler.cs
- {nameofPlural}/EventHandlers/{name}DeletedEventHandler.cs
- {nameofPlural}/Queries/Export/Export{nameofPlural}Query.cs
- {nameofPlural}/Queries/GetAll/GetAll{nameofPlural}Query.cs
- {nameofPlural}/Queries/Pagination/{nameofPlural}PaginationQuery.cs

### CleanArchitecture for Blazor Server Application project
Please use this in collaboration with this project.

Github :[https://github.com/neozhu/RazorPageCleanArchitecture](https://github.com/neozhu/CleanArchitectureWithBlazorServer)
![Clean Architecture With Blazor Server](https://raw.githubusercontent.com/neozhu/CleanArchitectureWithBlazorServer/main/doc/page.png)

### How to use

A new button is added to the context menu in Solution Explorer.

![Add new file dialog](art/menu1.png)

You can either click that button or use the keybord shortcut **Shift+F2**.

Select Entity Name from Domain Project

![Add new file dialog](art/dialog1.png)

### Create folders and namespace

Create additional folders for your file by using forward-slash to
specify the structure.

For example, by typing **scripts/test.js** in the dialog, the
folder **scripts** is created if it doesn't exist and the file
**test.js** is then placed into it.

### Generate sourcecode
![Source code for application features](art/code.png)

### Generate to-do list
![to-do list](art/task-list.png)

### code templates
You can modify these templates according to your own projects
![tempaltes](art/template.png)

## Contribute
Check out the [contribution guidelines](.github/CONTRIBUTING.md)
if you want to contribute to this project.

For cloning and building this project yourself, make sure
to install the
[Extensibility Tools 2015](https://marketplace.visualstudio.com/items?itemName=MadsKristensen.ExtensibilityTools)
extension for Visual Studio which enables some features
used by this project.

## License
[Apache 2.0](LICENSE)