Realtime Firebolt Core demo kit with profile-switched datasets and UI narratives.
The same local stack can demo five industries at massive synthetic scale:
cyberfinopshealthcareecommercead-tech
Each profile keeps the same performance story:
- high-throughput realtime ingest
- continuously increasing total ingested rows + bytes
- sub-second (and often sub-100ms) read probes
- live SQL exploration with runtime telemetry
No coding is required. If you can open a terminal and copy commands, you can run this demo.
git clone https://github.com/firebolt-db/Demo-Pool.git
cd Demo-Pool
DEMO_PROFILE=cyber ./scripts/quickstart.shThen open:
http://localhost:55173(welcome page)http://localhost:55173/dashboard(dashboard)http://localhost:55173/explorer(sql explorer)
When done:
./scripts/live-stop.shThis demo can consume significant local disk space if left running for hours/days because live batches and generated datasets keep growing.
Always stop the stack after use:
./scripts/live-stop.shIf you need to reclaim space, remove demo data and runtime artifacts:
./scripts/cleanup-demo-data.shOptional: quickly inspect what is taking space:
du -sh data/live data/generated runtime firebolt-core-data 2>/dev/nullRun a single local Firebolt stack and switch personas with DEMO_PROFILE to show how the same engine powers very different operational workloads:
- cyber posture correlation (
cyber) - cloud spend and utilization anomaly analytics (
finops) - clinical operations + compliance telemetry (
healthcare) - checkout/payment/fulfillment intelligence (
ecommerce) - rtb + fraud + spend control analytics (
ad-tech)
git clone https://github.com/firebolt-db/Demo-Pool.git
cd Demo-Pool
DEMO_PROFILE=cyber ./scripts/quickstart.shOpen:
- UI welcome:
http://localhost:55173 - Dashboard:
http://localhost:55173/dashboard - API:
http://localhost:38080 - Query Explorer:
http://localhost:55173/explorer
Stop:
./scripts/live-stop.shFrom the welcome page, selecting an industry now triggers a background profile switch automatically (no terminal command needed for demo operators). The switch also resets live ingestion state and the live table, so dashboard/query data always matches the selected industry profile.
If needed, you can still switch from terminal:
./scripts/live-stop.sh
DEMO_PROFILE=finops ./scripts/quickstart.sh
DEMO_PROFILE=healthcare ./scripts/quickstart.sh
DEMO_PROFILE=ecommerce ./scripts/quickstart.sh
DEMO_PROFILE=ad-tech ./scripts/quickstart.shQuick profile guide:
cyber→ cloud security posture + findingsfinops→ cloud cost and utilization anomalieshealthcare→ clinical and compliance operations telemetryecommerce→ checkout/payment/inventory/fulfillment eventsad-tech→ rtb, spend, fraud, and audience signals
Dataset size is independent of persona:
dev: 10M eventsdemo: 150M eventsstress: 1B events
Example:
DEMO_PROFILE=ad-tech BASELINE_PROFILE=stress ./scripts/quickstart.shDashboard samples:
Query Explorer samples:
- ingest throughput (
ingest throughput (10s|1m|avg)) - total ingested size (
total ingested size) - read speed (
read probe latency,read status) - profile-aware KPI cards, trend views, top entities, event feed
- profile-aware Query Explorer presets + editable SQL + Firebolt runtime metadata
- stack does not come up:
- run
./scripts/live-stop.sh - then run
DEMO_PROFILE=cyber ./scripts/quickstart.sh
- run
- dashboard opens but numbers are zero:
- wait ~10-20 seconds and click
refresh now - verify with
./scripts/live-status.shthatinserted_eventsis increasing
- wait ~10-20 seconds and click
- ports are already in use:
- run
API_PORT=39090 UI_PORT=55222 DEMO_PROFILE=cyber ./scripts/quickstart.sh
- run
- prereq check:
./scripts/check-prereqs.sh
- full live stack:
DEMO_PROFILE=cyber ./scripts/live-start.sh
- status:
./scripts/live-status.sh
- stop:
./scripts/live-stop.sh
- cleanup data:
./scripts/cleanup-demo-data.sh
- benchmarks:
./scripts/benchmark.sh
make help
make quickstart DEMO_PROFILE=finops
make status
make down
make benchmarkAPI_PORT=39090 UI_PORT=55222 DEMO_PROFILE=ecommerce ./scripts/quickstart.sh
DEMO_PROFILE=ad-tech BATCH_EVENTS=20000 INTERVAL_SECONDS=1 ./scripts/live-start.sh
DEMO_PROFILE=healthcare BASELINE_PROFILE=demo ./scripts/quickstart.shThis repository is licensed under the MIT License. See LICENSE.
This repository is intentionally published as a demo playground, not a production product:
- no SLA, no uptime guarantees, no security hardening commitments
- synthetic data only; do not point this demo at real regulated production data
- behavior, APIs, scripts, and UI copy may change between commits without migration guarantees
- contribution workflow is not open for external PRs at this time
Use this repository for demos, experiments, and local evaluation only. For constraints and non-goals, see Limitations.
scripts/: startup, ingestion, benchmark, quickstart utilitiesdata/generator/: profile-aware batch and realtime generatorssql/: Firebolt schema + query templatesapi/: Express + TypeScript APIui/: React + Vite dashboard



