SquidStd.Storage 0.8.0

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

<p align="center"> <a href="https://www.nuget.org/packages/SquidStd.Storage/"><img src="https://img.shields.io/nuget/v/SquidStd.Storage.svg" alt="NuGet" /></a> <img src="https://img.shields.io/nuget/dt/SquidStd.Storage.svg" alt="Downloads" /> <a href="https://tgiachi.github.io/squid-std/articles/storage.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>

Local file storage for SquidStd. Provides a filesystem-backed IStorageService (atomic writes, path-safe keys) and a YAML-backed IObjectStorageService that layers typed objects on top of it — registered with a single AddFileStorage() call. Storage is opt-in: it is not registered by RegisterCoreServices.

Install

dotnet add package SquidStd.Storage

Features

  • One-line registration: container.AddFileStorage() (file IStorageService + YAML IObjectStorageService).
  • Atomic saves (temp file + move) and keys constrained to the storage root.
  • YamlObjectStorageService decorates IStorageService, serializing typed objects to YAML.
  • ListKeysAsync(prefix?) enumerates stored keys (/-separated), excluding in-flight temp files.

Usage

using DryIoc;
using SquidStd.Storage.Abstractions.Data.Config;
using SquidStd.Storage.Abstractions.Interfaces;
using SquidStd.Storage.Extensions;

var container = new Container();
container.AddFileStorage(new StorageConfig { RootDirectory = "data" });

var storage = container.Resolve<IStorageService>();
await storage.SaveAsync("profiles/main.bin", new byte[] { 1, 2, 3 });

Key types

Type Purpose
StorageRegistrationExtensions AddFileStorage(...) registration.
FileStorageService Filesystem-backed IStorageService.
YamlObjectStorageService YAML-backed IObjectStorageService over a blob store.

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 (1)

Showing the top 1 NuGet packages that depend on SquidStd.Storage:

Package Downloads
SquidStd.Services.Core

Package Description

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.8.0 1 6/28/2026
0.7.0 52 6/26/2026
0.6.0 61 6/25/2026
0.5.1 57 6/25/2026
0.5.0 66 6/24/2026
0.4.0 65 6/23/2026
0.3.0 64 6/23/2026