Your database already has an API.
You just haven’t turned it on.
BifrostQL reads your database schema and builds a complete GraphQL API. Queries, mutations, filtering, joins, pagination. No code generation. No mapping files. One connection string.
DatabaseBifrostQLGraphQL API
// Program.cs -- that's the entire APIvar builder = WebApplication.CreateBuilder(args);builder.Services.AddBifrostQL(o => o.BindStandardConfig(builder.Configuration));var app = builder.Build();app.UseBifrostQL();await app.RunAsync();Schema-driven
Add a table or column, restart, and the GraphQL field appears with the correct type. The database is the source of truth.
Dynamic joins
Join any table to any other table in your query. Single-column key matches are automatic. Multi-column and explicit joins supported.
Full mutations
Insert, update, upsert, delete — generated from primary key metadata. BifrostQL matches input fields by name and does the right thing.
Tenant-safe by default
Automatic WHERE clause injection per query. With tenant isolation enabled, queries physically cannot return another tenant’s data.