Sashiko.Core 0.4.0

dotnet add package Sashiko.Core --version 0.4.0
                    
NuGet\Install-Package Sashiko.Core -Version 0.4.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Sashiko.Core" Version="0.4.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Sashiko.Core" Version="0.4.0" />
                    
Directory.Packages.props
<PackageReference Include="Sashiko.Core" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Sashiko.Core --version 0.4.0
                    
#r "nuget: Sashiko.Core, 0.4.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Sashiko.Core@0.4.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Sashiko.Core&version=0.4.0
                    
Install as a Cake Addin
#tool nuget:?package=Sashiko.Core&version=0.4.0
                    
Install as a Cake Tool

🌸 Sashiko.Core

Sashiko.Core is the foundational utility package of the Sashiko ecosystem.

It provides small, reusable building blocks used by higher-level Sashiko packages: conversions, JSON file helpers, text normalization, probability helpers, and shared primitives.


✨ Features

  • Strongly typed memory conversions
  • Strongly typed bandwidth conversions
  • JSON file read/write helpers
  • Text normalization helpers
  • Probability utilities and random selection helpers
  • Cached environment/runtime information
  • Zero external dependencies

πŸ“¦ Installation

dotnet add package Sashiko.Core

πŸš€ Usage

Memory conversions

using Sashiko.Core.Conversions;
using Sashiko.Core.Models.Enums;

var gigabytes = MemoryConverter.Convert(
    1024,
    MemoryUnit.Megabytes,
    MemoryUnit.Gigabytes);

Console.WriteLine(gigabytes); // 1

Bandwidth conversions

using Sashiko.Core.Conversions;
using Sashiko.Core.Models.Enums;

var megabits = BandwidthConverter.Convert(
    1000,
    BandwidthUnit.Kilobits,
    BandwidthUnit.Megabits);

Console.WriteLine(megabits); // 1

Runtime environment

using Sashiko.Core.Environment;

var runtime = RuntimeInfo.Current;

Console.WriteLine(runtime.FamilyName);       // Windows, Linux, macOS, ...
Console.WriteLine(runtime.ArchitectureName); // x64, ARM64, ...
Console.WriteLine(RuntimeInfo.IsDebug);

πŸ§ͺ Testing

The test suite covers:

  • identity conversions
  • cross-unit conversions
  • round-trip conversions
  • JSON file read/write behavior
  • registry snapshot helpers
  • probability helpers
  • text normalization
  • runtime environment metadata

πŸ—ΊοΈ Roadmap

Future versions may include:

  • temperature conversions
  • time and duration helpers
  • human-readable formatting helpers
  • additional numeric abstractions

🀝 Contributing

Contributions are welcome.
Please see CONTRIBUTING.md in the repository root.


πŸ“„ License

This project is licensed under the Apache License 2.0.
See LICENSE for the full license text.

Copyright Β© 2026 Alexandru Luca (alex98luca)

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  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.
  • net10.0

    • No dependencies.

NuGet packages (3)

Showing the top 3 NuGet packages that depend on Sashiko.Core:

Package Downloads
Sashiko.Registries

JSON-based registry loading utilities for the Sashiko ecosystem. Provides trusted (embedded) and validated (external) loading paths, schema validation integration, option-aware JSON parsing, and domain-specific error semantics through RegistryLoadException.

Sashiko.SystemMonitor

Cross-platform system snapshot library for .NET. Provides operating system, CPU, GPU, memory, disk, thermal, and power metrics through a lightweight unified API.

Sashiko.Names

Culturally aware person name generator for the Sashiko ecosystem. Provides embedded, curated name pools and language-specific generation rules for realistic structured person names without runtime external data sources.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.4.0 87 5/4/2026
0.3.1 165 5/2/2026
0.3.0 132 4/18/2026
0.2.0 164 3/18/2026
0.1.0-alpha 144 3/14/2026