SquidStd.Services.Core 0.7.0

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

<p align="center"> <img src="https://raw.githubusercontent.com/tgiachi/squid-std/main/assets/icon.png" alt="SquidStd" width="120" height="120" /> </p>

<h1 align="center">SquidStd.Services.Core</h1>

<p align="center"> <a href="https://www.nuget.org/packages/SquidStd.Services.Core/"><img src="https://img.shields.io/nuget/v/SquidStd.Services.Core.svg" alt="NuGet" /></a> <img src="https://img.shields.io/nuget/dt/SquidStd.Services.Core.svg" alt="Downloads" /> <a href="https://tgiachi.github.io/squid-std/articles/services-core.html"><img src="https://img.shields.io/badge/docs-DocFX-1390A3.svg" alt="docs" /></a> <img src="https://img.shields.io/badge/license-MIT-blue.svg" alt="license" /> </p>

Concrete implementations of the SquidStd.Core contracts, wired for DryIoc. A single RegisterCoreServices() call brings up the configuration manager, event bus, job system, timer wheel, main-thread dispatcher, metrics collection, storage, and secrets services.

Install

dotnet add package SquidStd.Services.Core

Features

  • One-line bootstrap: container.RegisterCoreServices() registers the full default service set.
  • ConfigManagerService — loads/saves YAML config sections and substitutes $ENV_VAR tokens.
  • EventBusService — in-process publish/subscribe over IEvent.
  • JobSystemService — background job execution; TimerWheelService + cron scheduling for timed work.
  • MainThreadDispatcherService — marshal work back onto a main thread.
  • MetricsCollectionService — aggregates IMetricProvider samples.
  • HealthCheckService — aggregates IHealthChecks into one report (RegisterHealthChecksService).
  • AES-GCM-protected secret store. (File/object storage moved to SquidStd.Storage, opt-in via AddFileStorage.)

Usage

using DryIoc;
using SquidStd.Services.Core.Extensions;

var container = new Container();

// Registers config manager + event bus + jobs + timer wheel + dispatcher + metrics + storage + secrets.
container.RegisterCoreServices("squidstd", Directory.GetCurrentDirectory());

Key types

Type Purpose
RegisterDefaultServicesExtensions RegisterCoreServices() / RegisterConfigManagerService() entry points.
ConfigManagerService YAML config load/save with env-var substitution.
EventBusService In-process event bus implementation.
JobSystemService Background job execution.
TimerWheelService Timer-wheel scheduling.
MainThreadDispatcherService Main-thread work dispatch.
MetricsCollectionService Metric sample aggregation.

License

MIT — part of SquidStd.

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.

NuGet packages (3)

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

Package Downloads
SquidStd.AspNetCore

Package Description

SquidStd.Workers.Manager

Package Description

SquidStd.Mail.MailKit

Package Description

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.7.0 42 6/26/2026
0.6.0 57 6/25/2026
0.5.1 57 6/25/2026
0.5.0 56 6/24/2026
0.4.0 95 6/23/2026
0.3.0 88 6/23/2026
0.2.0 101 6/22/2026
0.1.0 96 6/22/2026