This guide gives new users a fast path from first run to a working intraQ demo. The seed data is generic sales data, so it is safe for public docs, screenshots, and walkthrough videos.
After running the database seed, intraQ creates:
- a local owner login;
- a sample sales data source;
- a dashboard-ready
sample_sales_modeltable; - a published Sample Sales Overview starter dashboard;
- a dashboard category named Sample Analytics.
The README workflow GIF can be regenerated from the public-safe demo screenshot:
npm run demo:gifSeeded local login:
| Password | |
|---|---|
admin@local.intraq.test |
intraq-demo |
cp .env.example .env
docker compose up --buildOpen http://localhost:4100.
If port 4100 is busy:
INTRAQ_PORT=4110 docker compose up --buildThen open http://localhost:4110.
nvm use
npm ci
cp .env.example .envEdit .env and set a real local PostgreSQL DATABASE_URL plus a 32+ character
AUTH_TOKEN_SECRET, then run:
npm run db:migrate
npm run db:seed
npm run devOpen http://localhost:5173.
Use this sequence for screenshots, GIFs, or short product videos.
- Log in as
admin@local.intraq.test. - Open Dashboard and select Sample Sales Overview.
- Show the KPI card, revenue trend, channel chart, and location filter.
- Open Data Sources and show the Sample Sales model metadata.
- Open AI Analyzer and ask:
Which channel has the highest revenue? - Open Dashboard Builder and show how a user can add or edit a chart.
- Open Admin → AI & MCP → AI API Key Management and show Codex, OpenAI, and Gemini setup options.
Use these with the seeded sample data:
How is revenue trending by day?Which channel has the highest revenue?Compare revenue and gross margin by category.Which location has the highest average order value?Create a dashboard chart for revenue by channel.
Keep videos short and specific. Record real app screens only; do not use mock video placeholders.
- Start on the dashboard list.
- Open Sample Sales Overview.
- Point out the seeded data source, filters, KPI, and charts.
- Ask one Analyzer question against the sample data.
- End on AI provider setup to show users how to connect their own provider.
- Show
cp .env.example .envanddocker compose up --build. - Open the app and log in with the seeded owner account.
- Open the starter dashboard.
- Open Data Sources and show the sample model fields.
- Mention where AI provider setup lives.
- Open the starter dashboard.
- Duplicate or create a dashboard.
- Add a chart for revenue by channel or gross margin by category.
- Apply the location filter.
- Save/publish the dashboard.
Once the app is running with seeded data, capture screenshots manually or with Playwright. Good screenshots for docs are:
- dashboard list with Sample Sales Overview visible;
- the full Sample Sales Overview dashboard;
- the Sample Sales data-source fields;
- the AI API Key Management page.
Do not commit screenshots that include real customer data, real API keys, private URLs, or personal accounts.
You can also use the bundled capture script after the app is running:
npm run demo:captureUseful overrides:
INTRAQ_DEMO_BASE_URL=http://127.0.0.1:4110 npm run demo:capture
INTRAQ_DEMO_OUTPUT_DIR=/tmp/intraq-demo-assets npm run demo:captureTo regenerate the README hero with a Dashboard AI conversation and AI-created dashboard, run:
INTRAQ_DEMO_BASE_URL=http://127.0.0.1:4110 npm run demo:capture:aiThe script writes screenshots to docs/assets/demo by default. Review every
generated image before deciding whether to commit it or upload it to the website.




