MetaCode.TS3.CLI
1.2.1-beta
Prefix Reserved
This is a prerelease version of MetaCode.TS3.CLI.
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
dotnet tool install --global MetaCode.TS3.CLI --version 1.2.1-beta
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 MetaCode.TS3.CLI --version 1.2.1-beta
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=MetaCode.TS3.CLI&version=1.2.1-beta&prerelease
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
nuke :add-package MetaCode.TS3.CLI --version 1.2.1-beta
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Overview
A dotnet tool (mcts3) for model-first template-based code generation. Features built-in generators for producing source code for a variety of data model uses.
Features
- Models can be defined in .NET assemblies or JSON.
- Targetting .NET Standard 2.0 and .NET 6.0
- In-the-box templates for generating:
- ordinary mutable classes (POCOs);
- immutable classes (with builders);
- immutable classes based on C# records;
- freezable classes;
- serializable classes for Protobuf-Net, JSON and MessagePack;
- shared interfaces for all the above.
Command-line use
TBD
- Get or create a model
- Choose a generator
- Generate!
Built-in Generators
Id | Lang. | Structure | Mutability | Serialization |
---|---|---|---|---|
Interfaces | C# | Flat | Read-only | |
JsonPoco | C# | Flat | Mutable | JSON |
Freezables | C# | Flat | Freezable | |
Immutables | C# | Flat | Immutable | |
Records | C# 9 | Flat | Immutable | |
MsgPack | C# | Flat | Mutable | MessagePack |
ProtbufNet3 | C# | Flat | Mutable | Protobuf.Net |
Contracts | C# | Poly. | Read-only | |
ClassesV2 | C# | Poly. | Freezable | |
RecordsV2 | C# 9 | Poly. | Immutable | |
MsgPackV2 | C# | Poly. | Mutable | MessagePack |
MsgPackV3 | C# | Poly. | Freezable | MessagePack |
Notes:
- Read-only = client cannot invoke change;
- Immutable = provider will never change data;
- Freezable = mutable until frozen, then immutable.
- Poly. = polymorphic i.e. supports inheritance.
Build your own generator
TBD
Under consideration
- serialization for:
- interoperable MessagePack
- MsgPack.CLI
- XSD
- Bond
- DataContract
- polymorphic JSON
- other languages;
- SQL and EF
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net6.0 is compatible. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. 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. |
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 |
---|---|---|
3.1.14 | 301 | 3/2/2023 |
3.1.12 | 322 | 1/29/2023 |
3.1.7 | 285 | 1/28/2023 |
3.1.5 | 315 | 12/21/2022 |
3.1.4 | 337 | 11/28/2022 |
3.1.3 | 364 | 11/20/2022 |
3.1.2 | 343 | 11/19/2022 |
3.0.43 | 390 | 11/3/2022 |
3.0.42 | 381 | 11/2/2022 |
3.0.41 | 371 | 10/23/2022 |
3.0.40 | 656 | 9/18/2022 |
3.0.39 | 598 | 9/10/2022 |
3.0.38 | 440 | 8/29/2022 |
3.0.37 | 424 | 8/29/2022 |
3.0.36 | 436 | 8/29/2022 |
3.0.33 | 454 | 6/30/2022 |
3.0.30 | 413 | 6/4/2022 |
3.0.29 | 469 | 5/14/2022 |
3.0.26 | 455 | 5/6/2022 |
3.0.22 | 460 | 5/1/2022 |
3.0.20 | 457 | 4/29/2022 |
3.0.18 | 433 | 4/29/2022 |
3.0.14 | 447 | 4/29/2022 |
3.0.12 | 449 | 4/27/2022 |
3.0.11 | 486 | 4/13/2022 |
3.0.10 | 456 | 4/12/2022 |
3.0.9 | 497 | 4/11/2022 |
3.0.6 | 469 | 3/24/2022 |
3.0.5 | 439 | 3/22/2022 |
3.0.4 | 447 | 3/21/2022 |
1.2.1-beta | 265 | 3/17/2022 |
1.1.3 | 460 | 3/16/2022 |
1.1.2 | 440 | 3/13/2022 |
1.1.1 | 470 | 3/9/2022 |
1.0.62 | 460 | 2/13/2022 |
1.0.59 | 448 | 2/11/2022 |
1.0.56 | 461 | 2/11/2022 |
1.0.53 | 484 | 1/13/2022 |
1.0.50 | 278 | 12/25/2021 |
1.0.46 | 298 | 12/22/2021 |
1.0.44 | 293 | 12/22/2021 |
1.0.43 | 296 | 12/21/2021 |
1.0.41 | 318 | 12/21/2021 |
1.0.40 | 320 | 11/28/2021 |
1.0.35 | 390 | 11/14/2021 |
1.0.29 | 376 | 11/4/2021 |
1.0.26 | 392 | 10/17/2021 |
1.0.23 | 382 | 10/3/2021 |
1.0.21 | 884 | 8/8/2021 |
1.0.20 | 418 | 8/7/2021 |
1.0.19 | 386 | 8/7/2021 |
1.0.18 | 418 | 8/7/2021 |
1.0.17 | 407 | 8/6/2021 |
1.0.13 | 1,475 | 6/8/2021 |
1.0.11 | 368 | 6/7/2021 |
1.0.10 | 520 | 5/30/2021 |
1.0.6 | 359 | 5/4/2021 |
1.0.4-beta | 284 | 5/3/2021 |
1.0.3-beta | 297 | 5/2/2021 |
0.7.29 | 386 | 4/19/2021 |
0.7.28 | 392 | 4/19/2021 |
0.7.24 | 369 | 4/17/2021 |
0.7.23 | 378 | 4/16/2021 |
0.7.20 | 350 | 4/15/2021 |
0.7.18 | 377 | 4/13/2021 |
0.7.17 | 378 | 4/11/2021 |
0.7.14 | 401 | 4/11/2021 |
0.7.9 | 362 | 3/25/2021 |
0.7.8 | 354 | 3/25/2021 |
0.7.5 | 386 | 3/20/2021 |
0.7.3 | 437 | 1/29/2021 |
0.7.1 | 452 | 1/16/2021 |
0.6.5 | 426 | 1/16/2021 |
0.6.2 | 433 | 1/15/2021 |
0.6.1 | 383 | 1/14/2021 |
0.5.34 | 483 | 1/1/2021 |
0.5.31 | 445 | 12/31/2020 |
0.5.29 | 396 | 12/29/2020 |
0.5.27 | 436 | 12/21/2020 |
0.5.25 | 417 | 12/21/2020 |
0.5.24 | 458 | 12/21/2020 |
0.5.22 | 513 | 12/21/2020 |
0.5.18 | 389 | 12/20/2020 |
0.5.12 | 411 | 12/16/2020 |
0.5.11 | 421 | 12/16/2020 |
0.5.5 | 538 | 12/13/2020 |
0.5.4 | 555 | 12/13/2020 |
0.5.3 | 426 | 12/11/2020 |