F05.CI.SampleLibrary
0.1.437
dotnet add package F05.CI.SampleLibrary --version 0.1.437
NuGet\Install-Package F05.CI.SampleLibrary -Version 0.1.437
<PackageReference Include="F05.CI.SampleLibrary" Version="0.1.437" />
<PackageVersion Include="F05.CI.SampleLibrary" Version="0.1.437" />
<PackageReference Include="F05.CI.SampleLibrary" />
paket add F05.CI.SampleLibrary --version 0.1.437
#r "nuget: F05.CI.SampleLibrary, 0.1.437"
#:package F05.CI.SampleLibrary@0.1.437
#addin nuget:?package=F05.CI.SampleLibrary&version=0.1.437
#tool nuget:?package=F05.CI.SampleLibrary&version=0.1.437
F05 CI Sample Library
A sample .NET library designed for testing CI/CD pipeline components, specifically focusing on NuGet packaging and SBOM (Software Bill of Materials) generation.
Purpose
This library serves as a test fixture for the F05 CI/CD pipeline, demonstrating:
- NuGet package creation with proper metadata
- SBOM generation using CycloneDX
- SLSA provenance and supply chain security best practices
- README integration in NuGet packages
- Deterministic and reproducible builds
Features
Calculator
A simple calculator class providing basic arithmetic operations:
- Addition
- Subtraction
- Multiplication
- Division (with zero-check)
JsonHelper
A JSON serialization helper demonstrating external dependency usage:
- Serialization with logging support
- Deserialization with error handling
- Utilizes Newtonsoft.Json and Serilog
Dependencies
- Newtonsoft.Json (13.0.3) - JSON serialization and deserialization
- Serilog (4.1.0) - Structured logging
- Serilog.Sinks.Console (6.0.0) - Console logging sink
- Microsoft.SourceLink.GitHub (8.0.0) - Source link support for debugging
Usage
using F05.CI.SampleLibrary;
// Using Calculator
var calc = new Calculator();
var result = calc.Add(10, 5); // Returns 15
// Using JsonHelper
var helper = new JsonHelper();
var json = helper.Serialize(new { Name = "Test", Value = 42 });
var obj = helper.Deserialize<dynamic>(json);
Building
This project targets .NET 10 and requires the corresponding SDK.
# Restore dependencies
dotnet restore
# Build the project
dotnet build -c Release
# Create NuGet package
dotnet pack -c Release
Security & Provenance
This package is built with SLSA (Supply-chain Levels for Software Artifacts) best practices:
- Deterministic builds for reproducibility
- Source Link integration for source code transparency
- SBOM generation using CycloneDX format
- Repository metadata embedded in package
License
MIT License - Copyright © 2026 F05
Contributing
This is a sample project for CI/CD testing purposes. For issues or suggestions, please refer to the main F05 CI repository.
Note: This is a sample library created for testing CI/CD pipeline components. It is not intended for production use.
| Product | Versions 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. |
-
net10.0
- Newtonsoft.Json (>= 13.0.3)
- Serilog (>= 4.1.0)
- Serilog.Sinks.Console (>= 6.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.