27 lines
800 B
C#
27 lines
800 B
C#
using Nexus.Api.Extensions;
|
|
|
|
var builder = WebApplication.CreateBuilder(args);
|
|
|
|
// --- Service Registration ---
|
|
builder.Services.AddNexusAuth(builder.Configuration);
|
|
builder.Services.AddNexusRateLimiting();
|
|
builder.Services.AddNexusForwardedHeaders();
|
|
builder.Services.AddNexusSwagger();
|
|
builder.Services.AddNexusDatabase(builder.Configuration);
|
|
builder.Services.AddNexusHttpClients(builder.Configuration);
|
|
builder.Services.AddNexusApplicationServices();
|
|
builder.Services.AddNexusRepositories();
|
|
builder.Services.AddNexusHealthChecks(builder.Configuration);
|
|
builder.Services.AddControllers();
|
|
|
|
var app = builder.Build();
|
|
|
|
// --- Database Migration & Seeding ---
|
|
await app.EnsureDatabaseAsync();
|
|
|
|
// --- Middleware Pipeline ---
|
|
app.UseNexusPipeline(app.Environment);
|
|
|
|
app.MapControllers();
|
|
app.Run();
|