DropBear.Codex.Core
2024.2.31
See the version list below for details.
dotnet add package DropBear.Codex.Core --version 2024.2.31
NuGet\Install-Package DropBear.Codex.Core -Version 2024.2.31
<PackageReference Include="DropBear.Codex.Core" Version="2024.2.31" />
paket add DropBear.Codex.Core --version 2024.2.31
#r "nuget: DropBear.Codex.Core, 2024.2.31"
// Install DropBear.Codex.Core as a Cake Addin #addin nuget:?package=DropBear.Codex.Core&version=2024.2.31 // Install DropBear.Codex.Core as a Cake Tool #tool nuget:?package=DropBear.Codex.Core&version=2024.2.31
DropBear Codex
DropBear Codex is a .NET library designed to enhance application reliability and data integrity. It introduces a robust system for operation results handling, supporting generic result types with integrated payload data integrity verification via checksums. The library is equipped with custom MessagePack serialization for complex types, ensuring efficient and secure data transfer.
Features
- Generic result types (
Result
,Result<T>
, andResultWithPayload<T>
) to represent the outcomes of operations clearly. - Integrated checksum for data integrity verification in
ResultWithPayload<T>
. - Custom MessagePack formatters for serialization and deserialization of complex and custom types.
- Extensions for ASP.NET Core and asynchronous programming, facilitating seamless integration.
Getting Started
Follow these instructions to get DropBear Codex running in your project for development and testing purposes.
Prerequisites
- .NET 6.0 SDK or later
- An IDE like Visual Studio 2022, VS Code, or Rider
Installing
- Add DropBear Codex to your .NET project via NuGet:
dotnet add package DropBear.Codex.Core
- Use the library in your project by adding the appropriate
using
statements:
using DropBear.Codex.Core.ReturnTypes;
using DropBear.Codex.Core.Extensions;
Usage
Basic Usage
Utilize Result
and Result<T>
for simple operation outcomes:
public Result PerformOperation()
{
// Operation logic
return Result.Success();
}
public Result<string> GetOperationData()
{
// Operation logic
return Result<string>.Success("Operation data");
}
Advanced Usage with Payload
Use ResultWithPayload<T>
for operations that require data integrity checks:
public ResultWithPayload<MyDataType> GetSecureData()
{
MyDataType data = new MyDataType();
// Populate data
return ResultWithPayload<MyDataType>.Success(new Payload<MyDataType>(data));
}
Running the Tests
Run the automated tests for this system using the following command:
dotnet test
Deployment
Refer to .NET deployment best practices for deploying your application with DropBear Codex integrated.
Built With
- .NET 8 - The development framework@
- MessagePack - Used for efficient serialization@
Contributing
We welcome contributions! Please submit pull requests or open issues on our GitHub repository.
Versioning
We use SemVer for versioning. For the versions available, see the releases on our repository.
Authors
- Terrence Kuchel (DropBear) - Initial work - tkuchel GitHub See also the list of contributors who participated in this project.
License
This project is licensed under the GNU Lesser Public License v3 - see the LICENSE file for details.
Acknowledgments
- Hat tip to anyone whose code was used
- Inspiration
- etc
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. |
-
net8.0
- MessagePack (>= 2.5.140)
- MessagePack.Annotations (>= 2.5.140)
NuGet packages (6)
Showing the top 5 NuGet packages that depend on DropBear.Codex.Core:
Package | Downloads |
---|---|
DropBear.Codex.Utilities
DropBear Codex Utilities. |
|
DropBear.Codex.StateManagement
The `StateSnapshotManager` library provides a comprehensive solution for managing state snapshots in .NET applications. It supports automatic snapshotting, state reversion, and notifications upon state changes, making it ideal for applications that require historical state management or undo capabilities. |
|
DropBear.Codex.Serialization
This project provides advanced serialization and deserialization capabilities, supporting formats like JSON, MessagePack, and MemoryPack. It includes performance optimizations, error handling, and supports compression and encoding options. |
|
DropBear.Codex.Files
DropBear.Codex.Files is a versatile .NET library designed for efficient file management, offering seamless integration with advanced features such as delta updates for optimized storage and bandwidth usage. Tailored for applications requiring robust file operations, it provides a foundation for both local and cloud storage scenarios, ensuring high performance and scalability. (Advanced features available when paired with DropBear.Codex.DeltaBlobStorage package.) |
|
DropBear.Codex.Operations
Package Description |
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
2024.7.1 | 93 | 7/24/2024 |
2024.6.2 | 137 | 6/19/2024 |
2024.5.9 | 147 | 5/19/2024 |
2024.5.8 | 89 | 5/19/2024 |
2024.5.6 | 202 | 5/4/2024 |
2024.5.5 | 86 | 5/4/2024 |
2024.5.4 | 111 | 5/4/2024 |
2024.5.3 | 51 | 5/3/2024 |
2024.5.2 | 55 | 5/3/2024 |
2024.5.1 | 57 | 5/3/2024 |
2024.4.8 | 254 | 4/30/2024 |
2024.4.5 | 436 | 4/17/2024 |
2024.4.4 | 91 | 4/16/2024 |
2024.4.3 | 87 | 4/16/2024 |
2024.4.1 | 133 | 4/13/2024 |
2024.3.13 | 276 | 3/28/2024 |
2024.3.12 | 146 | 3/21/2024 |
2024.3.11 | 147 | 3/16/2024 |
2024.3.10 | 97 | 3/16/2024 |
2024.3.9 | 97 | 3/15/2024 |
2024.3.6 | 107 | 3/15/2024 |
2024.3.5 | 105 | 3/13/2024 |
2024.3.4 | 116 | 3/11/2024 |
2024.3.1 | 110 | 3/2/2024 |
2024.2.34 | 116 | 2/26/2024 |
2024.2.31 | 97 | 2/26/2024 |
2024.2.30 | 132 | 2/22/2024 |
2024.2.25 | 118 | 2/21/2024 |