SystemLibrary.Common.Framework 8.3.0.8

dotnet add package SystemLibrary.Common.Framework --version 8.3.0.8
                    
NuGet\Install-Package SystemLibrary.Common.Framework -Version 8.3.0.8
                    
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="SystemLibrary.Common.Framework" Version="8.3.0.8" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="SystemLibrary.Common.Framework" Version="8.3.0.8" />
                    
Directory.Packages.props
<PackageReference Include="SystemLibrary.Common.Framework" />
                    
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 SystemLibrary.Common.Framework --version 8.3.0.8
                    
#r "nuget: SystemLibrary.Common.Framework, 8.3.0.8"
                    
#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.
#addin nuget:?package=SystemLibrary.Common.Framework&version=8.3.0.8
                    
Install SystemLibrary.Common.Framework as a Cake Addin
#tool nuget:?package=SystemLibrary.Common.Framework&version=8.3.0.8
                    
Install SystemLibrary.Common.Framework as a Cake Tool

SystemLibrary Common Framework

Description

Framework for every .NET application.

Requirements

>= .NET 8

Access & Contribute

GitHub Source

To request access, email support@systemlibrary.com with your GitHub username and specify the repo.

Read-only access is granted on request — no questions asked.
Once approved, you can fork, clone, and submit pull requests.

🚀 Features

🔧 Initialization

Use AddFrameworkServices() and AddFrameworkMiddlewares() to enable HTTPS redirection, caching, logging, auth, cookie policies, endpoints, and more.

var options = new FrameworkOptions();
services.AddFrameworkServices(options);
app.AddFrameworkMiddlewares(options);

⚙️ Config Mapping

Auto-binds JSON config files to C# classes by name, with transformations based on environment name.

~/myconfig.json: { url: "www.systemlibrary.com" }

class MyConfig : Config<MyConfig> { public string Url { get; set; } }
var url = MyConfig.Instance.Url;

📝 Logging

Global Log instance with .Dump() – similar to console.log in JavaScript.

Log.Dump(typeof(string));
Log.Error("hello");

🧠 Cache

Sharded global cache with fallback, metrics, and auto key generation.

var value = Cache.Get<string>("key", () => Compute());

🌐 HTTP Client

Client which caches underlying HttpClient with retry policies, circuit breaker, and metrics.

var json = Client.Get<string>("https://api.example.com/data");
var json2 = "https://api.example.com/data".Get<string>();

📦 Extensions

.Json(), .PartialJson(), .Encrypt(), .Decrypt(), .ToBase64(), .FromBase64(), .Compress(), .Decompress(), .Obfuscate(), .Deobfuscate(), .Is(), .IsNot(), .GetCompressedKey and more...

var json = user.Json();
var encrypted = json.Encrypt();
var obfuscated = encrypted.Obfuscate();
var compressedKey = obfuscated.GetCompressedKey();

"hi".ToSha256();
"hi".Compress();
"hi".ToBase64();
"hi".Obfuscate();

🔐 Encryption

Encrypt/decrypt using AES CBC PKCS7 via string/byte extensions with global key management.

var encrypted = "secret".Encrypt();
var decrypted = encrypted.Decrypt();

🧩 Enhanced Enums

Decorate enums with [EnumText] and [EnumValue] for better JSON control and use ToValue() or ToText() on the Enum.

enum Role { [EnumText("Administrator")] Admin }
...
var role = user.Role.ToText(); // `Administrator`

📡 BaseApiController

All API classes can inherit this, endpoints naturally registered and easily add attributes such as: [OriginFilter], [ApiTokenFilter] and [UserAgentFilter].

Automatic 📖 /docs endpoint listing all routes, inputs, and metadata.

[ApiTokenFilter(name: "hello", value: "world")]
public class MyApi : BaseApiController { }

🔗 ModelBinder

Model bindings auto-registered for DateTime and enum types — built to correctly parse most inputs into the values you actually want.

ActionResult Index(Role role, DateTime date) {
}

Latest Release Notes

  • 8.3.0.8
  • GetCompressedKey - less CPU cycles and memory usage per invocation, and fingerprints in large texts uses more samples (optimized)
Version history

View git history of this file if interested

Installation

Installation guide

Documentation

Documentation with code samples

Nuget

Latest version

License

Free with Tiered Pricing for additional features at https://www.systemlibrary.com/

Dependencies

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.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on SystemLibrary.Common.Framework:

Package Downloads
SystemLibrary.Common.Episerver

Library with classes, methods and dijits for every .NET >= 8 episerver web application https://github.com/systemlibrary/systemlibrary-common-episerver/#Description Installation https://systemlibrary.github.io/systemlibrary-common-episerver/Install.html Documentation with sample code https://systemlibrary.github.io/systemlibrary-common-episerver/

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
8.3.0.8 0 6/13/2025