[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-77173":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":9,"totalLinesOfCode":9,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":9,"subscribersCount":16,"size":16,"stars1d":14,"stars7d":17,"stars30d":18,"stars90d":16,"forks30d":16,"starsTrendScore":19,"compositeScore":20,"rankGlobal":9,"rankLanguage":9,"license":9,"archived":21,"fork":21,"defaultBranch":22,"hasWiki":21,"hasPages":21,"topics":23,"createdAt":9,"pushedAt":9,"updatedAt":28,"readmeContent":29,"aiSummary":30,"trendingCount":16,"starSnapshotCount":16,"syncStatus":14,"lastSyncTime":31,"discoverSource":32},77173,"dac","bruin-data\u002Fdac","bruin-data","DaC is a dashboard-as-code tool. Build interactive dashboards using YAML and JSX. Built-in semantic layer. Get your agents to build standardized, reviewable dashboards.",null,"https:\u002F\u002Fgithub.com\u002Fbruin-data\u002Fdac","Go",696,32,2,5,0,4,43,6,8.56,false,"main",[24,25,26,27],"ai-agents","business-intelligence","dashboard","semantic-layer","2026-06-12 02:03:42","# DAC\n\nDAC is a Dashboard-as-Code tool for defining, validating, and serving dashboards from YAML and TSX.\n- Dynamic charts, tabs, loops and conditionals with TSX.\n- Built-in AI agent via Codex: chat with your dashboard live and get it updated.\n- Supports all the major databases: Postgres, MySQL, Snowflake, BigQuery, Redshift, Databricks, and more via [Bruin](https:\u002F\u002Fgithub.com\u002Fbruin-data\u002Fbruin)\n- Built-in semantic layer: define metrics and dimensions once in `semantic\u002F`, reference them from any widget. DAC generates the SQL.\n\nIt is built for AI agents to build dashboards in a reliable and reviewable way.\n\n![DAC dashboard demo](resources\u002Fdac_optimized.gif)\n\n\u003Ctable>\n\u003Cthead>\n\u003Ctr>\n\u003Cth>TSX\u003C\u002Fth>\n\u003Cth>YAML\u003C\u002Fth>\n\u003C\u002Ftr>\n\u003C\u002Fthead>\n\u003Ctbody>\n\u003Ctr>\n\u003Ctd>\n\n\u003Cpre lang=\"tsx\">\u003Ccode>export default (\n  &lt;Dashboard name=\"Simple Dashboard\" connection=\"my_db\"&gt;\n    &lt;Row&gt;\n      &lt;Metric\n        name=\"Total Revenue\"\n        col={4}\n        sql=\"SELECT SUM(amount) AS value FROM sales\"\n        column=\"value\"\n        prefix=\"$\"\n        format=\"number\"\n      \u002F&gt;\n    &lt;\u002FRow&gt;\n  &lt;\u002FDashboard&gt;\n)\u003C\u002Fcode>\u003C\u002Fpre>\n\n\u003C\u002Ftd>\n\u003Ctd>\n\n\u003Cpre lang=\"yaml\">\u003Ccode>name: Sales Overview\nconnection: warehouse\n\nrows:\n  - widgets:\n      - name: Revenue\n        type: metric\n        sql: SELECT SUM(amount) AS value FROM sales\n        column: value\n        prefix: \"$\"\n        col: 4\u003C\u002Fcode>\u003C\u002Fpre>\n\n\u003C\u002Ftd>\n\u003C\u002Ftr>\n\u003C\u002Ftbody>\n\u003C\u002Ftable>\n\n## Install\n\nInstall the latest stable DAC release:\n\n```bash\ncurl -LsSf https:\u002F\u002Fgetbruin.com\u002Finstall\u002Fdac | sh\n```\n\nInstall the latest edge build from `main`:\n\n```bash\ncurl -LsSf https:\u002F\u002Fgetbruin.com\u002Finstall\u002Fdac | sh -s -- --channel edge\n```\n\nDAC uses your existing Bruin connections and currently shells out to `bruin query` for query execution. The install script installs the Bruin CLI first when `bruin` is not already available on your `PATH`.\n\n## Quickstart\n\nCreate a new starter project:\n\n```bash\ndac init my-dashboards\ncd my-dashboards\ndac validate --dir .\ndac validate --dir . --with-database\ndac serve --dir . --open\n```\n\nThe starter includes a SQL-backed YAML dashboard, a semantic YAML dashboard, and a semantic model under `semantic\u002F`.\n\n`dac init` also installs DAC's bundled dashboard authoring skill for Claude and Codex:\n\n```bash\nls .claude\u002Fskills\u002Fcreate-dashboard\u002FSKILL.md\nls .codex\u002Fskills\u002Fcreate-dashboard\n```\n\nFor existing projects, run `dac skills install --dir .`.\n\nIf you cloned the repository and have `dac` installed, you can also run one of the bundled example projects:\n\n```bash\ndac serve --dir examples\u002Fbasic-yaml\n```\n\n## Examples\n\nThe repository includes four self-contained example projects under [`examples\u002F`](examples):\n\n| Example | What it shows |\n| --- | --- |\n| [`examples\u002Fbasic-yaml`](examples\u002Fbasic-yaml) | A standard YAML dashboard with filters, SQL queries, and query files. |\n| [`examples\u002Fbasic-tsx`](examples\u002Fbasic-tsx) | A TSX dashboard that uses load-time queries to generate layout from the database. |\n| [`examples\u002Fsemantic-yaml`](examples\u002Fsemantic-yaml) | A YAML dashboard that reads semantic models from `semantic\u002F` and compiles widgets in the backend. |\n| [`examples\u002Fsemantic-tsx`](examples\u002Fsemantic-tsx) | A TSX dashboard using external semantic models and backend semantic query compilation. |\n\n## Project Layout\n\n```text\n.\n├── cmd\u002F         CLI entrypoints\n├── pkg\u002F         Dashboard loading, semantic engine, server, query backends\n├── frontend\u002F    React frontend embedded into the DAC binary\n├── docs\u002F        VitePress documentation source\n├── examples\u002F    Runnable example projects for YAML, TSX, and semantic dashboards\n├── resources\u002F   README and documentation assets\n└── testdata\u002F    Internal fixtures used by tests\n```\n\n## Development\n\n```bash\nmake deps\nmake test\nmake build\nmake dev\n```\n\nThe main development commands are defined in the [`Makefile`](Makefile). Use `make` targets rather than ad-hoc `go build` or `npm run build` commands so frontend embedding and build flags stay consistent.\n\n## Telemetry\n\nDAC sends anonymous usage events to help us understand which commands are used and where they fail. Each event includes the command name, run duration, OS\u002Farchitecture, DAC version, and an anonymous install ID stored at `~\u002F.dac\u002Ftelemetry.json`.\n\nWe do not collect:\n\n- SQL queries, query results, or row counts\n- Dashboard or widget contents, names, or file paths\n- Connection names, hosts, credentials, project IDs, or dataset names\n- Any environment variables or shell history\n\nTo disable telemetry, set either of these environment variables:\n\n```bash\nexport TELEMETRY_OPTOUT=1\n# or the industry-standard:\nexport DO_NOT_TRACK=1\n```\n\nBuilds without a telemetry write key (the default for `make build`) are silent and send nothing.\n\n## Documentation\n\n- Docs source: [`docs\u002F`](docs)\n- Example projects: [`examples\u002F`](examples)\n- Contribution guide: [`CONTRIBUTING.md`](CONTRIBUTING.md)\n- Security policy: [`SECURITY.md`](SECURITY.md)\n\n## License\n\nAGPL-3.0-only. See [`LICENSE`](LICENSE).\n","DaC 是一个基于代码的仪表盘构建工具，支持使用 YAML 和 JSX 构建交互式仪表盘。其核心功能包括动态图表、标签页、循环和条件语句的支持，并内置了语义层，可以定义一次指标和维度并在任何小部件中引用。此外，它还集成了 AI 代理，可以通过聊天实时更新仪表盘。DaC 支持多种主流数据库，如 Postgres、MySQL、Snowflake 等。该工具特别适合需要通过 AI 代理以可审查和可靠方式创建标准化仪表盘的企业智能场景。","2026-06-11 03:55:08","trending"]