mma-cli 4.5.8

dotnet tool install --global mma-cli --version 4.5.8
                    
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
                    
if you are setting up this repo
dotnet tool install --local mma-cli --version 4.5.8
                    
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=mma-cli&version=4.5.8
                    
nuke :add-package mma-cli --version 4.5.8
                    

MMA CLI

build and test NuGet

MMA cli

.___  ___. .___  ___.      ___      
|   \/   | |   \/   |     /   \     
|  \  /  | |  \  /  |    /  ^  \    
|  |\/|  | |  |\/|  |   /  /_\  \   
|  |  |  | |  |  |  |  /  _____  \  
|__|  |__| |__|  |__| /__/     \__\ 
                                    

MMA Cli is a complete Code Generator based on ASP.NET Core to create modern APIs by following the software development best practices and the latest technologies.

Change Log:

  • Improved migration process and enrich with notifications
  • Databse first mode has been added to UI mode using `Import form Database' option MMA cli UI

Getting Started

  • Quick Start is a single-part, quick-start tutorial to create a solution with the mma cli.
  • Interactive Mode can be used to create and run ABP based solutions with different options and details.
  • Command Line Mode is a complete tutorial to develop a full stack web application with all aspects of a real-life solution.
  • UI is a complete tutorial to develop a full stack web application with all aspects of a real-life solution.

Quick Start

Install the mma-cli:

dotnet tool install --global mma-cli

Create a new Solution:

mma new SolutionName

you can also use short form

mma n SolutionName
available options.

--mapper tom indecat which object mapping libirary that accept mapster or automapper and default value is automapper

mma n SolutionName --mapper mapster

Now, we need to navigate to the solution folder to start add components.

cd SolutionName
  1. Add Entity:

     mma generate entity MyEntity long
     # OR
     mma g e MyEntity long
    

    generate entity also require --mapper value and the default value is automapper

     mma g e MyEntity long --mapper Mapster
    

    generate property requires EntityName,PK Data type

    supported data types:

    • Guid
    • int
    • long
    • string
    • decimal
    • float
    • bool
    • DateTime

    Default data type is Guid

    available options.
    • --mapper tom indecat which object mapping libirary that accept mapster or automapper and default value is automapper

    • --no-api to skip generaate API controller for this entity.

  2. Add/Remove Property to exsiting Entity

     mma generate property MyEntity MyProperty long
     # OR
     mma g p MyEntity MyProperty long true
    

    generate property requires EntityName, PropertyName, DataType

    supported data types:

    • Guid
    • int
    • long
    • string
    • decimal
    • float
    • bool
    • DateTime

    Default data type is Guid

    available options.
    • --remove to remove the property from existing entity
        mma g p MyEntity MyProperty long true --remove
      
  3. Add/Remove relation to exsiting Entities

     mma generate relation MyParentEntity MyChildEntity ForeignKeyProperty
     # OR
     mma g r MyParentEntity MyChildEntity ForeignKeyProperty
    

    generate property requires Referece Entit Name, Child Entity Name, ForeignKey PropertyName

    available options.
    • --remove to remove the property from existing entity
        mma g r MyParentEntity MyChildEntity ForeignKeyProperty --remove
      

Interactive Mode

You can use interactive mode by enter command mma without any arguments in solution path

image

UI

Also you can use UI mode to create and manage your solutions. Select UI from Interactive or execute mma ui

Thanks to Radzen

mma ui

UI Screen 1

UI Screen 2

UI Screen 3

UI Screen 4

UI Screen 5

UI Screen 6

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

This package has no dependencies.

Version Downloads Last Updated
4.5.8 174 3/18/2025
4.5.7 299 10/18/2024
4.5.6 249 10/17/2024
4.5.5 288 9/6/2024
4.5.4 235 8/30/2024
4.5.3 225 8/29/2024
4.5.2 203 8/26/2024
4.5.1 289 8/24/2024
4.5.0 263 8/24/2024
3.1.3 413 11/20/2023 3.1.3 is deprecated because it is no longer maintained.