An admin portal is generated with CRUD for your tables, live reports from DSL Query operations, group-based authorization, table-level permissions, and configurable endpoint workflows. Declare BLOB_IMAGE, BLOB_PDF, BLOB_VIDEO, and BLOB_FILE columns in DBML to get upload fields, list actions, and in-app preview (image lightbox, PDF iframe, HTML5 video). Files are stored as HTTPS object URLs (Azure Blob, S3-compatible storage such as Cloudflare R2, or local files in development), not binary in the database. IdentityModule handles users, roles, and API/portal access; do not duplicate it in your modules.
Table management
Manage records through auto-generated portal screens tied to your DBML tables.
Access control
API method grants and portal page permissions from centralized management screens.
File and media columns
Use BLOB_IMAGE for photos and logos, BLOB_PDF for datasheets, BLOB_VIDEO for product or intro videos, and BLOB_FILE for other documents. The portal generates upload controls, size limits, and Preview actions without custom UI code.
Object storage backends
Configure Azure Blob Storage, any S3-compatible provider (including Cloudflare R2), or local file storage for development. The same pipeline applies to all BLOB_* column types.
Live Reports
DSL Query operations appear in the portal as Live Reports. Set parameters, click Run Report, and scan the result grid — the matching GET API path is shown on the page.