StringlyTyped
FSharp.UMX
StringlyTyped | FSharp.UMX | |
---|---|---|
1 | 4 | |
6 | 150 | |
- | 1.3% | |
0.0 | 0.0 | |
about 2 years ago | 9 months ago | |
C# | F# | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
StringlyTyped
-
Primitive Obsession
Did you serialsation look anything like mine? I'd be keen to hear if mine suffers from performance issues (I've yet to benchmark it, but it isn't doing anything too fancy): https://github.com/SteveDunn/StringlyTyped/blob/main/src/StringlyTyped/ValueObjectConverterFactory.cs
FSharp.UMX
-
No autocomplete for F# record labels when defining instances?
Note that % Guid.NewGuid() is just syntax for a more strongly typed Guid - see FSharp.UMX for more info.
-
Primitive Obsession
UoM doesn't natively support strings/guids, so I use this library: https://github.com/fsprojects/FSharp.UMX
-
F# Units of Measure
You can define type aliases with units of measure for any existing type using the MeasureAnnotatedAbbreviation attribute, although casting them correctly can be tricky. FSharp.UMX implements aliases and conversions for some standard types; the same technique can be used for BigInt and Complex.
What are some alternatives?
WrapperValueObject - A .NET source generator for creating simple value objects wrapping primitive types.
ValueOf - Deal with Primitive Obsession - define ValueObjects in a single line (of C#).
CleanArchitecture - Clean Architecture Solution Template: A starting point for Clean Architecture with ASP.NET Core
eShopOnWeb - Sample ASP.NET Core 8.0 reference application, powered by Microsoft, demonstrating a layered application architecture with monolithic deployment model. Download the eBook PDF from docs folder.
eShopOnContainers - Cross-platform .NET sample microservices and container based application that runs on Linux Windows and macOS. Powered by .NET 7, Docker Containers and Azure Kubernetes Services. Supports Visual Studio, VS for Mac and CLI based environments with Docker CLI, dotnet CLI, VS Code or any other code editor. Moved to https://github.com/dotnet/eShop.
modular-monolith-with-ddd - Full Modular Monolith application with Domain-Driven Design approach.