Moberg.Beacon.Core
4.6.0.2
See the version list below for details.
dotnet add package Moberg.Beacon.Core --version 4.6.0.2
NuGet\Install-Package Moberg.Beacon.Core -Version 4.6.0.2
<PackageReference Include="Moberg.Beacon.Core" Version="4.6.0.2" />
<PackageVersion Include="Moberg.Beacon.Core" Version="4.6.0.2" />
<PackageReference Include="Moberg.Beacon.Core" />
paket add Moberg.Beacon.Core --version 4.6.0.2
#r "nuget: Moberg.Beacon.Core, 4.6.0.2"
#:package Moberg.Beacon.Core@4.6.0.2
#addin nuget:?package=Moberg.Beacon.Core&version=4.6.0.2
#tool nuget:?package=Moberg.Beacon.Core&version=4.6.0.2
Moberg.Beacon.Core
The core of Beacon: the domain model, the MediatR handlers, the services and the EF Core model for Beacon's own metadata database. Every other Beacon package depends on it.
Core does not choose a database. Add one provider package to store Beacon's data:
Moberg.Beacon.Core.PostgreSql(PostgreSQL with pgvector)Moberg.Beacon.Core.SqlServer
Add Moberg.Beacon.Connector.* packages for the engines Beacon queries, Moberg.Beacon.Api for the REST API and
sign-in, Moberg.Beacon.UI for the web app, and Moberg.Beacon.AI / Moberg.Beacon.MCP for the AI layer and the
MCP server.
Install
dotnet add package Moberg.Beacon.Core
A provider package brings Core in as a dependency, so you rarely add it directly.
Register
AddBeaconServices returns a BeaconBuilder. Chain connectors, ExposeDbContext and ExposeDocs on it first.
UsePostgreSql() or UseSqlServer() comes last: it returns IServiceCollection and ends the chain.
using Beacon.Connector.PostgreSql;
using Beacon.Core;
using Beacon.Core.PostgreSql;
builder.Services
.AddBeaconServices(builder.Configuration, options =>
{
// Required: your IBeaconScheduler implementation (namespace Beacon.Core.Worker).
options.AddBeaconScheduler<MyBeaconScheduler>();
// Used for links in notifications; include the /beacon path.
options.BaseUrl = "https://beacon.example.com/beacon";
})
.AddPostgreSqlConnector()
.UsePostgreSql();
var app = builder.Build();
// Beacon does not migrate itself. Create the beacon schema if needed and apply pending migrations.
Beacon.Core.ServiceConfiguration.UseBeacon(app.Services, createSchema: true);
AddBeaconServices throws when no scheduler is set, or when Beacon:EncryptionKey is missing or weak. The key is
base64 of at least 32 random bytes (for example openssl rand -base64 32). Keep it in user secrets, an
environment variable (Beacon__EncryptionKey) or a secret store, never in a committed file.
| Key | Default | What it does |
|---|---|---|
ConnectionStrings:BeaconContext |
none | Beacon's metadata database. Read by the parameterless UsePostgreSql() / UseSqlServer(). |
Beacon:EncryptionKey |
none | Encrypts stored connection strings and secrets. Required. |
Beacon:Schema |
beacon |
Leave unset or set to beacon. Any other value fails startup. |
The web app is served under /beacon, the REST API under /beacon/api and the MCP server at /beacon/mcp. Those
come from the Api, UI and MCP packages, not from Core. Core does not reference ASP.NET Core's HTTP abstractions: it reads
the request's caller through IBeaconRequestPrincipal, which the Api and MCP packages register; without them every
scope is off-request.
Documentation
- Integrate Beacon
- Packages
- Host setup
- Metadata database
- For coding agents: llms-integrate.txt
License
Dual-licensed under AGPL-3.0 or a commercial license. See LICENSING.md.
| 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
- ClosedXML (>= 0.105.1)
- CronExpressionDescriptor (>= 2.51.0)
- Cronos (>= 0.13.0)
- Dapper (>= 2.1.89)
- EFCore.BulkExtensions (>= 10.0.1)
- MediatR (>= 12.5.0)
- Microsoft.AspNetCore.DataProtection.EntityFrameworkCore (>= 10.0.12)
- Microsoft.Data.Sqlite (>= 10.0.12)
- Microsoft.EntityFrameworkCore (>= 10.0.12)
- Microsoft.EntityFrameworkCore.Relational (>= 10.0.12)
- Microsoft.EntityFrameworkCore.SqlServer (>= 10.0.12)
- Microsoft.Extensions.Caching.Memory (>= 10.0.12)
- Microsoft.Extensions.FileSystemGlobbing (>= 10.0.12)
- Microsoft.Extensions.Http (>= 10.0.12)
- Microsoft.IdentityModel.Tokens (>= 8.23.0)
- SqlParserCS (>= 0.6.5)
- System.IdentityModel.Tokens.Jwt (>= 8.23.0)
NuGet packages (15)
Showing the top 5 NuGet packages that depend on Moberg.Beacon.Core:
| Package | Downloads |
|---|---|
|
Moberg.Beacon.Api
Beacon REST API endpoints + SignalR hub. Adds `app.MapBeaconApi()` to expose /beacon/api/* on any .NET 10 web app. |
|
|
Moberg.Beacon.Core.SqlServer
SQL Server database provider for Beacon. Provides Entity Framework Core configuration and migrations for SQL Server databases. |
|
|
Moberg.Beacon.Core.PostgreSql
PostgreSQL database provider for Beacon. Provides Entity Framework Core configuration and migrations for PostgreSQL databases with snake_case naming conventions. |
|
|
Moberg.Beacon.Connector.SqlServer
SQL Server connector for Beacon |
|
|
Moberg.Beacon.Connector.Api
REST API connector for Beacon |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 5.1.0 | 0 | 10/26/2026 |
| 5.0.0 | 149 | 10/21/2026 |
| 4.6.0.2 | 162 | 10/20/2026 |
| 4.6.0.1 | 155 | 10/20/2026 |
| 4.6.0 | 160 | 10/20/2026 |
| 4.5.0.3 | 284 | 10/8/2026 |
| 4.5.0.2 | 212 | 10/7/2026 |
| 4.5.0.1 | 390 | 10/5/2026 |
| 4.5.0 | 232 | 9/28/2026 |
| 4.3.0.1 | 203 | 9/24/2026 |
| 4.3.0 | 205 | 9/23/2026 |
| 4.2.0.1 | 214 | 9/22/2026 |
| 4.2.0 | 213 | 9/22/2026 |
| 4.1.0.1 | 301 | 9/11/2026 |
| 4.1.0 | 227 | 9/11/2026 |
| 4.0.0 | 258 | 8/20/2026 |