A collection of open-source libraries and tools for the .NET ecosystem and infrastructure
automation. Softure projects provide ready-to-use components that accelerate building modern,
distributed applications.
🧱 Common
A set of shared .NET libraries providing foundational building blocks for domain-driven design.
| Package | Description |
|---|---|
| SOFTURE.Domain | Entity and repository abstractions including Entity<T>, |
AuditableEntity<T>, and state machine support via StatefulEntity<TState, TAction> |
|
| SOFTURE.Results | Functional error handling built on CSharpFunctionalExtensions with Error |
record types and predefined CommonErrors |
|
| SOFTURE.Contract.Common | Common request/response contracts and messaging infrastructure — |
RequestBase, PaginationRequestBase, PostRequestBase |
|
| SOFTURE.Settings | Configuration management extensions for IServiceCollection |
| SOFTURE.Language.Common | Strongly-typed identifiers via IdentifierBase<T> |
Platforms: .NET 6.0 / 8.0 / 9.0 / 10.0
⚡ API
A collection of reusable .NET libraries providing common infrastructure for building distributed, observable, and resilient microservices. Each module is published as an independent NuGet package.
| Package | Description |
|---|---|
| SOFTURE.Common.Authentication | JWT Bearer authentication setup and configuration |
| SOFTURE.Common.CQRS | CQRS middleware and validation behaviors for MediatR pipelines |
| SOFTURE.Common.Correlation | Request correlation ID tracking for distributed tracing |
| SOFTURE.Common.HealthCheck | Health check framework with standardized response format |
| SOFTURE.Common.Logging | Structured logging with Serilog and Seq integration |
| SOFTURE.Common.Observability | OpenTelemetry tracing and metrics (Prometheus, OTLP) |
| SOFTURE.Common.Resilience | HTTP resilience policies — retry, circuit breaker, hedging, |
| fallback | |
| SOFTURE.Common.StronglyTypedIdentifiers | Strongly-typed ID abstractions with EF Core |
| support | |
| SOFTURE.MessageBroker.Rabbit | RabbitMQ message publishing/consuming via MassTransit |
Platforms: .NET 6.0 / 8.0 / 9.0 / 10.0
A .NET wrapper for the Typesense search engine with support for strongly-typed models, filters,
and queries.
- Strongly-typed document models
- Flexible filtering with multiple operators (equals, range, greater/less than, etc.)
- Fluent API for sorting
- Collection configuration system
- Health check integration
Packages: SOFTURE.Typesense, SOFTURE.Typesense.Abstractions
Platforms: .NET 6.0 / 8.0
A .NET client library for the Fakturownia.pl invoicing API.
- Strongly-typed REST API client
- Built-in retry policy with exponential backoff (Polly)
- Automatic API key injection
- Functional error handling with
Result<T>pattern - Monthly statement aggregation — pairs proforma and VAT invoices with payment status tracking
- Support for 14 document types (VAT, Proforma, Bill, Receipt, Advance, Correction, and more)
Package: SOFTURE.Fakturownia
Platforms: .NET 6.0 / 8.0
🏢 Regon
A .NET client library for querying Polish company data from the National Business Registry (GUS
BIR1) SOAP API.
- Company lookup by NIP (tax ID) or KRS (court register number)
- Strongly-typed response models with comprehensive company data (address, legal form, PKD activity codes)
- Automatic legal form detection (sole proprietorship, LLC, joint-stock company, etc.)
- Active/suspended status resolution
- Automatic SOAP/WCF communication handling
Package: REGON
Platforms: .NET 6.0+
Requires: GUS API key from api.stat.gov.pl
An Ansible collection for automated VPS setup including system hardening, Docker container management, and deployment of common services.
| Role | Description |
|---|---|
system_hardening |
SSH hardening, UFW firewall, fail2ban, user management |
docker_engine |
Docker and Docker Compose installation |
postgres |
PostgreSQL container deployment |
mssql |
Microsoft SQL Server container deployment |
rabbitmq |
RabbitMQ messaging with management UI |
caddy |
Reverse proxy with optional Cloudflare support |
seq |
Centralized logging server |
portainer |
Docker management UI |
supertokens |
Authentication server |
typesense |
Search engine |
sqlpad |
SQL query tool |
Requirements: Ansible >= 2.14, Ubuntu 22.04+
All projects are released under the MIT License.