The Four Core Modules
Awali ships as a tightly integrated set of modules. Each one solves a specific job in the data-to-decision pipeline, and each one is built to hand off cleanly to the next.
DBT Workshop
An in-browser IDE for writing and running data transformations with dbt. Upload raw CSV data as seeds, build SQL models, validate with tests, visualize lineage as a DAG, and ship transformed tables downstream.
For: data engineers, analysts, anyone owning a transformation layer.
Screen Builder
A low-code authoring environment for building admin screens on top of your data. Scaffold a screen from a template, edit it in a code editor, preview it in an isolated sandbox, then deploy it to production with menu placement, role-based permissions, and database setup handled for you.
For: admins who need a CRUD interface for business data without writing a Laravel app from scratch.
Dagster
Awali's data orchestration layer, embedded directly in the platform. Define pipelines and assets in Python, materialize them on demand or on a schedule, monitor runs, and view full asset lineage — all without leaving Awali.
For: data engineers building pipelines that produce and refresh assets.
Dashboard
The role-based data-viewing surface every user lands on after login. Browse tables organized by menu sections, filter and sort, drill down through related tables, and export to CSV — all gated by per-table permissions.
For: every business user who needs to see, slice, and export data.
How the Modules Fit Together
A typical end-to-end flow inside Awali looks like this:
- Ingest — raw data lands in Awali through CSV uploads in DBT Workshop, or through pipelines orchestrated by Dagster (file drops, APIs, scheduled extracts).
- Transform — dbt models in DBT Workshop clean, normalize, join, and aggregate the raw data into analysis-ready tables.
- Configure — administrators register transformed tables in the Builder configuration layer, defining columns, filters, drill-down links, and per-role permissions.
- Surface — the Dashboard renders those tables for end users with filtering, sorting, drill-down, and CSV export. Screen Builder adds custom CRUD screens on top of the same data when richer interaction is needed.
- Monitor — Dagster handles scheduled refreshes, dbt runs, and downstream assets, with run history and lineage visible inside Awali.
Security and Access
Every module in Awali enforces the same security baseline:
- Authentication. All access requires login with multi-factor authentication (TOTP with backup codes).
- Admin-gated tooling. The build-time tools — DBT Workshop, Screen Builder, Dagster — are restricted to authenticated admins.
- Role-based data access. The Dashboard enforces per-table view and export permissions by role and user. Tables you can't see don't appear in the menu.
- Audit logging. Sensitive actions — secret reads, file uploads, database imports, deployments — are logged with the actor's email and IP address.
- Sandboxed previews. Screen Builder previews run in an isolated SQLite sandbox; per-user database sandboxes back development work in DBT Workshop and the Workbench.
Conventions Used in This Documentation
- data_db refers to the analytical database where business data lives.
- auth_db refers to the authentication, menu, and permissions database.
- Workbench refers to the shared in-app shell environment (CliTerm) used by DBT Workshop, Screen Builder, and Dagster.
- Paths like
/admin/dbt-studioare the URLs you'll see in your browser after logging in.
Last updated June 25, 2026.