SmartInVenture.StorageLib
2.1.1
dotnet add package SmartInVenture.StorageLib --version 2.1.1
NuGet\Install-Package SmartInVenture.StorageLib -Version 2.1.1
<PackageReference Include="SmartInVenture.StorageLib" Version="2.1.1" />
<PackageVersion Include="SmartInVenture.StorageLib" Version="2.1.1" />
<PackageReference Include="SmartInVenture.StorageLib" />
paket add SmartInVenture.StorageLib --version 2.1.1
#r "nuget: SmartInVenture.StorageLib, 2.1.1"
#:package SmartInVenture.StorageLib@2.1.1
#addin nuget:?package=SmartInVenture.StorageLib&version=2.1.1
#tool nuget:?package=SmartInVenture.StorageLib&version=2.1.1
StorageLib
Universal storage abstraction library for .NET applications supporting local, cloud, and remote storage backends.
Features
- Universal Interface: Single
IStorageinterface for all storage types - Multiple Backends: Local filesystem, memory, Azure Blob, AWS S3, SSH/SFTP
- Throttling Support: Built-in read/write speed limiting
- Async/Await: Fully asynchronous operations with cancellation support
- Extensible: Easy to add new storage backends
Quick Start
using StorageLib.Abstractions;
using StorageLib.Connectors;
// Local storage
var localStorage = new LocalStorage();
await localStorage.InitializeAsync("", @"C:\data");
// List files
var files = await localStorage.GetFilesAsync("/documents");
// Read file info
var fileInfo = await localStorage.GetFileInfoAsync("/documents/example.txt");
Supported Storage Types
- Local: Local filesystem storage
- Memory: In-memory storage (volatile)
- Azure: Azure Blob Storage
- AWS: Amazon S3 storage
- SSH: SSH/SFTP storage
- OpenSlide: Virtual whole-slide imaging system
License
MIT License
| Product | Versions 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. |
-
net8.0
- AWSSDK.S3 (>= 4.0.6.4)
- Azure.Storage.Blobs (>= 12.25.0)
- Microsoft.Extensions.Caching.Memory (>= 9.0.8)
- Microsoft.Extensions.Logging.Abstractions (>= 9.0.8)
- SSH.NET (>= 2025.0.0)
- System.IO.Abstractions (>= 22.0.15)
NuGet packages (2)
Showing the top 2 NuGet packages that depend on SmartInVenture.StorageLib:
| Package | Downloads |
|---|---|
|
SmartInVenture.StorageLib.OpenSlide
OpenSlide (whole-slide medical imaging) connector and wrapper for SmartInVenture.StorageLib. Split out of the core StorageLib package so the core stays lean; this package bundles the native OpenSlide libraries. |
|
|
UvfLib.Master
UVF/Cryptomator IStorage encryption decorators (managed). The Release build also produces the native "TitanVault" AOT facade. |
GitHub repositories
This package is not used by any popular GitHub repositories.
2.1.0:
- OpenSlide moved to a separate package: SmartInVenture.StorageLib.OpenSlide
(keeps this core package lean; the 11 MB of native imaging libs ship only with
the OpenSlide package now).
- Core: IStorage abstraction; LocalStorage, MemoryStorage, WindowsMetaMemoryStorage;
Azure Blob / S3 / SSH connectors; throttling, caching; FuseFlags POSIX support.
- (2.0.0) BREAKING: IStorage.ReadAsync/WriteAsync return Task<int> (bytes transferred).