Elarion
Reference

Packages

What each Elarion package contains, its expected dependencies, and when you need it.

Elarion is split into focused packages so you reference only what you use. Anything reusable moves toward the Elarion family; application-specific domain concepts, database conventions, and infrastructure stay in consuming projects.

.NET packages

PackagePurposeExpected dependencies
Elarion.AbstractionsImplementation-neutral attributes, handler contracts, result types, module metadata, scheduling contracts, and source-generation triggers.Application-level abstractions without provider-specific dependencies.
ElarionRuntime primitives: handler caches, decorators, modules, resilience runtime, current-user access, and the in-memory scheduler.Elarion.Abstractions; avoids ASP.NET Core, EF Core, and transport concerns.
Elarion.BlobsProvider-neutral blob storage contracts and DTOs.No provider-specific storage dependencies.
Elarion.Blobs.PostgreSqlPostgreSQL-backed blob storage with EF Core model configuration and Npgsql content I/O.Elarion.Blobs, EF Core relational APIs, and Npgsql.
Elarion.GeneratorsRoslyn generators for handlers, validators, services, modules, RPC method maps, resilience policies, and scheduled jobs.Analyzer-only reference (netstandard2.0).
Elarion.JsonRpcTransport-neutral JSON-RPC dispatcher, envelopes, result/error types, telemetry, schema export, and the RPC method-map trigger.System.Text.Json and Microsoft logging abstractions.
Elarion.AspNetCoreASP.NET Core JSON-RPC endpoint mapping, batch execution, current-user middleware, and HTTP transport.ASP.NET Core abstractions plus Elarion.JsonRpc.
Elarion.AspNetCore.McpExposes JSON-RPC handlers as a Model Context Protocol (MCP) server for AI agents over Streamable HTTP.Elarion.JsonRpc plus ModelContextProtocol.AspNetCore; the only Elarion package that references the MCP SDK.
Elarion.AspNetCore.SchemaGenerationMSBuild package and host-launching tool for exporting JSON-RPC schemas during build.Private build-time reference from ASP.NET Core hosts.
Elarion.EntityFrameworkCoreMarker attributes for EF Core entity and DbSet generation.Marker-only; consumers provide EF Core.
Elarion.EntityFrameworkCore.GeneratorsRoslyn generator for DbSet properties and entity configuration.Analyzer-only reference.

npm package

PackagePurpose
@swimmesberger/elarion-jsonrpc-client-generatorTypeScript CLI/library that converts an exported rpc-schema.json into method contracts, Zod result schemas, and a portable fetch client.

Architecture boundaries

The package split enforces clean dependencies:

  • Core framework packages stay reusable and domain-neutral — they never reference a consuming app.
  • Elarion.Abstractions does not depend on runtime integration packages.
  • Elarion may depend on abstractions but avoids ASP.NET Core, EF Core, and transport specifics.
  • Elarion.Blobs stays provider-neutral; Elarion.Blobs.PostgreSql owns PostgreSQL-specific dependencies and schema configuration.
  • Elarion.JsonRpc owns JSON-RPC runtime contracts and schema export without ASP.NET Core.
  • Elarion.AspNetCore owns HTTP/JSON-RPC integration.
  • Elarion.AspNetCore.Mcp is the only package that references the ModelContextProtocol SDK; the transport-neutral MCP tool model and dispatch shim live in Elarion.JsonRpc.
  • EF Core packages own only EF-specific markers and generation.
  • Generators emit deterministic, inspectable code and fail with diagnostics for unsupported patterns, rather than scanning at runtime.

Typical references

ProjectReferences
Application libraryElarion + Elarion.Generators (analyzer); optionally Elarion.Blobs, Elarion.EntityFrameworkCore + its generator.
ASP.NET Core hostElarion.JsonRpc, Elarion.AspNetCore, Elarion.Generators (analyzer); optionally Elarion.Blobs.PostgreSql, Elarion.AspNetCore.SchemaGeneration (build tooling), and Elarion.AspNetCore.Mcp (MCP server).
Frontend@swimmesberger/elarion-jsonrpc-client-generator + zod.

On this page