Quickstart
Get Central Set (CS) running in minutes with a connected database admin UI and optional ETLX support.
π Quickstart
This guide will help you run Central Set (CS) locally in minutes β initialize the admin database, access the admin UI, and optionally set up the ETLX subsystem.
β Requirements
Minimum
- Linux, macOS, or Windows
- A SQL database engine (SQLite, PostgreSQL, MySQL, etc.)
- CS treats the database itself as the data model
Optional (for ETLX / ODBC features)
- unixODBC (Linux/macOS) for ODBC-based ETL sources
π Installation
You can run CS in three different ways:
- Precompiled binary (recommended)
- Build from source
- Docker
Choose the option that best fits your workflow.
βΆοΈ Option 1: Download a Precompiled Binary (Recommended)
Download the latest CS release for your platform:
π https://github.com/realdatadriven/central-set-go/releases/latest
Make it executable (Linux/macOS):
chmod +x central-set
Run it:
./central-set --help
π οΈ Option 2: Build from Source (Git Clone)
If you want to build CS yourself:
Requirements
- Go β₯ 1.21
- git
Clone and build
git clone https://github.com/realdatadriven/central-set-go.git
cd central-set-go
go build -o central-set ./cmd/api
Run it:
./central-set --help
This produces the same binary as the official releases.
π³ Option 3: Run with Docker
CS can be run entirely via Docker.
Build the image
docker build -t central-set-go:latest .
Run CS
docker run --rm -it \
-p 4444:4444 \
-v $(pwd)/database:/app/database \
central-set-go:latest
To initialize the admin database:
docker run --rm -it \
-v $(pwd)/database:/app/database \
central-set-go:latest --init
π‘ Mounting the
database/directory ensures your admin DB persists between runs.
ποΈ Initialize the Admin Database
Before first use, initialize the admin database:
./central-set --init --model admin_model.md
This will:
- Create the internal admin database
- Create default configuration tables (
apps,menus,tables, etc.) for the admin ui - Create a default user
- Print credentials:
Username: root
Password: 1234
π¦ Model-Based Initialization
Central Set follows a model-driven database approach, inspired by patterns commonly used.
Instead of manually creating tables or running raw SQL migrations, the recommended workflow is to:
- Define your application model in a Markdown model file
- Describe entities, fields, relationships, and metadata
- Let Central Set generate and manage the database structure
This approach provides several advantages:
- Consistent database structures
- Self-documented schema
- Reproducible environments
- Tighter integration with Central Set APIs and metadata
- Safer schema evolution
Although the example above initializes the Admin database, this approach is not limited to it.
Any application database can β and ideally should β be initialized using the same model-based workflow.
In fact, new backend projects built with Central Set are recommended to start with a model file, allowing the platform to manage the database schema from the beginning.
A dedicated page will explore the Model system and architecture in more detail.
βΆοΈ Start CS
./central-set
CS will start a web server and expose the admin UI.
π₯οΈ Open the Admin UI
Login using:
Username: root
Password: 1234
𧬠Optional: Initialize ETLX Support
To enable ETLX pipelines, notebooks, and SQL tools, initialize an additional app database:
./central-set --init --model etlx_model.md
This creates an ETLX-powered app that integrates with:
- Pipeline execution
- Observability
- Dashboards
βοΈ Configure with .env
CS ships with a sample environment file:
cp dot-env-example.txt .env
Edit .env to configure:
- Database driver & DSN
- HTTP port
- Authentication & security
- ETLX options
Example
# Admin database
DB_DRIVER_NAME=sqlite3
DB_DSN=database/ADMIN.db
# HTTP server
HTTP_PORT=4444
Any database supported by sqlx can be used by simply changing the driver and DSN.
π§© What Just Happened
CS has now:
Initialized its admin control database
Reflected database tables into:
- Auto-generated data tables
- CRUD forms
- APIs
Enabled RBAC at table level
Exposed everything through a secure, API-first backend
Optionally enabled ETLX-powered pipelines and analytics
You can now:
- Manage applications, menus, and tables
- Customize UI layouts and forms
- Generate API keys and tokens
- Schedule ETL jobs
- Build dashboards and notebooks
Steps
- π Admin & UI β How Apps β Menus β Tables define the UI
- π Security & API Access β Users, roles, access keys
- π ETLX & Pipelines β Data workflows and scheduling
- π Dashboards & Analytics β DuckDB-powered insights
CS is MIT-licensed, open source, and designed to make the database the single source of truth.
If you believe admin UIs, APIs, pipelines, and analytics should all align around the schema β welcome aboard π
Last updated 08 Mar 2026, 14:20 -01 .