DashVideo.mov
Dash is an open-source data exploration and visualization tool built with DuckDB. It provides an intuitive interface for connecting to databases, importing data files, creating visualizations, and building interactive dashboards.
Dash is available at https://app.dash.builders/, also have a look at our Demo.
- Data Import: Drag and drop files to import data in various formats
- SQL Workbench: Write and execute SQL queries against your data
- Interactive Dashboards: Create and customize dashboards with visualizations
- Data Visualization: Generate charts and graphs to visualize your data
- Export Functionality: Export your data and analysis results
- Frontend: Next.js, React, TypeScript
- UI Components: Radix UI, Tailwind CSS
- Data Processing: DuckDB-WASM for in-browser SQL processing
- State Management: Zustand
- Visualization: ECharts
- Editor: Monaco Editor
- Node.js (LTS version recommended)
- pnpm (recommended) or npm or yarn
-
Clone the repository:
git clone https://github.com/gropaul/dash-ui.git cd dash-ui -
Install dependencies:
pnpm install
-
Start the development server:
pnpm dev
-
Open http://localhost:3000 in your browser to use Dash.
To build the application for production:
pnpm buildDash is a static export, so there is no server to run. To preview the build locally:
pnpm exec serve outpnpm build writes the complete app to out/ as plain static files, and
pnpm build:staticpackages that up as dist-web/dash-web-<version>.zip along with setup instructions. The same bundle
is attached to every release, so you can drop it on an S3 bucket, GitHub Pages or any static host and
run your own Dash. See docs/self-hosting.md for the requirements (HTTPS,
deep-link fallback, optional cross-origin isolation headers) and an AWS walkthrough.
This project uses Playwright for end-to-end testing. Tests are located in the ./test directory.
pnpm exec playwright testMake sure the dev server is running, then:
pnpm exec playwright codegen http://localhost:3000This opens a browser where you interact with the app, and Playwright records your actions as test code. Copy the generated code into a new file under ./test/.
pnpm exec playwright show-reportThere is a DuckDB extension for Dash available here.
Contributions are welcome! If you find Dash helpful, please consider:
- Reporting bugs or suggesting features through GitHub issues
- Submitting pull requests for bug fixes or enhancements
- Giving our repository a star on GitHub
This project is open source. Please check the repository for license details.
Visit our repository: github.com/gropaul/dash-ui