Sora.Web.Transformers 0.2.17

There is a newer version of this package available.
See the version list below for details.
dotnet add package Sora.Web.Transformers --version 0.2.17
                    
NuGet\Install-Package Sora.Web.Transformers -Version 0.2.17
                    
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="Sora.Web.Transformers" Version="0.2.17" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Sora.Web.Transformers" Version="0.2.17" />
                    
Directory.Packages.props
<PackageReference Include="Sora.Web.Transformers" />
                    
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 Sora.Web.Transformers --version 0.2.17
                    
#r "nuget: Sora.Web.Transformers, 0.2.17"
                    
#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 Sora.Web.Transformers@0.2.17
                    
#: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=Sora.Web.Transformers&version=0.2.17
                    
Install as a Cake Addin
#tool nuget:?package=Sora.Web.Transformers&version=0.2.17
                    
Install as a Cake Tool

Sora Framework

Stop fighting your framework. Start building.

Sora is a modern .NET framework that gets out of your way and lets you focus on what mattersβ€”your application logic. No complex configuration, no hidden magic, just clean, predictable code that works the way you expect.

The Problem We Solve

Most frameworks force you to choose: either simple but limited, or powerful but complex. Sora gives you bothβ€”start with a three-file API, scale to enterprise patterns when you need them.

// This is a complete, working API with persistence
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddSora();

var app = builder.Build();
app.UseSora();
app.Run();

Why Developers Choose Sora

πŸš€ Zero to API in minutes β€” Real CRUD endpoints with just EntityController<T>
πŸ”§ Escape hatches everywhere β€” Drop to raw SQL, custom controllers, or provider-specific features
πŸ“¦ Modular architecture β€” Add JSON, SQLite, MongoDB, or messaging as your needs grow
βœ… Production ready β€” Health checks, OpenAPI docs, and observability built-in
🎯 Predictable β€” Convention over configuration, but configuration always wins

Core Philosophy

  • Start simple, grow smart β€” Begin with basics, add complexity only when needed
  • Familiarity first β€” Uses patterns you already know (Controllers, DI, EF-style entities)
  • Developer experience β€” Clear error messages, helpful defaults, minimal friction
  • Flexibility β€” Multiple data providers, pluggable components, custom implementations welcome

Real-World Example

// Define your model
public class Todo : Entity<Todo>
{
    public string Title { get; set; } = string.Empty;
    public bool IsDone { get; set; }
    public DateTime CreatedAt { get; set; } = DateTime.UtcNow;
}

// Get a full REST API
[Route("api/[controller]")]
public class TodosController : EntityController<Todo> { }

// Use it naturally
var todo = await new Todo { Title = "Learn Sora" }.Save();
var todos = await Todo.Where(t => !t.IsDone);

That's it. You now have:

  • GET /api/todos β€” List all todos
  • POST /api/todos β€” Create new todo
  • GET /api/todos/{id} β€” Get specific todo
  • PUT /api/todos/{id} β€” Update todo
  • DELETE /api/todos/{id} β€” Delete todo
  • Automatic health checks at /health
  • OpenAPI documentation at /swagger

Getting Started

  1. Quick Start β€” 3-minute tutorial from zero to working API
  2. Documentation β€” Complete guides for all features
  3. Examples β€” Real applications in the samples/ directory

Built For

  • Rapid prototyping β€” Get ideas into code fast
  • Microservices β€” Lightweight, focused services
  • CRUD APIs β€” Perfect for data-driven applications
  • Enterprise applications β€” Scales to complex patterns (CQRS, Event Sourcing)

Community & Support

  • GitHub Issues β€” Bug reports and feature requests
  • Discussions β€” Questions and community help
  • Contributing β€” See our guidelines

Built with ❀️ for .NET developers who want to focus on solving problems, not fighting frameworks.


License: Apache 2.0 | Requirements: .NET 9 SDK

Product Compatible and additional computed target framework versions.
.NET net9.0 is compatible.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.4.0 0 9/5/2025
0.2.20 75 8/22/2025
0.2.18 124 8/20/2025
0.2.17 124 8/19/2025
0.2.16 124 8/18/2025