Evidence is an open-source business intelligence tool that enables data analysts and engineers to create interactive reports, dashboards, and data apps by writing SQL queries and Markdown—no drag-and-drop interfaces required. It turns static data documentation into dynamic, embeddable data products with real-time visualization and templating. Built for technical users who value version control, testing, and automation, Evidence bridges the gap between data engineering and business reporting.
The platform runs on a high-performance query engine powered by DuckDB and ClickHouse, supports multiple data sources like Snowflake and BigQuery, and deploys as a static site via Netlify, Vercel, or self-hosted infrastructure. Its VSCode extension and browser-based IDE provide a modern dev experience with AI-assisted development, real-time syntax validation, and templated page generation.
What You Get
- SQL in Markdown - Embed live SQL queries directly in Markdown files to pull data from connected databases and render dynamic charts and tables.
- Interactive Data Components - Use built-in components like charts, tables, and KPIs that auto-update with query results and support responsive design across devices.
- Templated Pages - Generate multiple reports from a single Markdown template using variables and loops, ideal for automated customer reports or multi-region dashboards.
- AI-Enhanced Development - Leverage an integrated AI agent that suggests SQL, debugs errors, checks schema, and auto-completes component syntax in real time.
- Real-Time Syntax Validation - Catch SQL, Markdown, and component errors as you type with instant feedback in the VSCode extension and browser IDE.
- Scheduled Data Syncs - Automate data refreshes from sources like Snowflake, BigQuery, or ClickHouse with configurable intervals from minutes to daily.
Common Use Cases
- Building customer-facing analytics dashboards - A SaaS company uses Evidence to generate branded, embeddable dashboards for enterprise clients using SQL queries and templated Markdown.
- Automating weekly business reviews - A finance team creates dynamic reports from Snowflake data using templates and scheduled syncs to auto-update metrics for leadership.
- Developing internal data apps with version control - Data engineers build and test data products in Evidence’s Markdown-based IDE, then deploy them via GitHub Actions to Vercel.
- Creating AI-assisted data documentation - Analysts write SQL-based reports with AI suggestions to document KPIs, then publish them as shareable, interactive articles.
Under The Hood
Architecture
- Monorepo structure with scoped packages isolating core logic, UI components, data sources, and shared libraries for clear separation of concerns
- Plugin-based extensibility where data sources implement a unified interface, enabling modular addition without core engine modifications
- Dependency injection via package exports and a central SDK abstraction layer that decouples components from implementation details
- Universal SQL layer that normalizes dialect-specific operations across PostgreSQL, DuckDB, BigQuery, and MySQL
- Telemetry and preprocessing modules designed as standalone libraries to support independent testing and extension
Tech Stack
- Svelte 4 and SvelteKit 2 with Vite for a reactive, component-driven UI and efficient build pipeline
- TypeScript and JavaScript forming the foundation with strong type safety across the codebase
- Multi-datasource integration via custom packages including DuckDB WASM, PostgreSQL, and Snowflake connectors
- Monorepo managed with pnpm and workspace configuration for isolated package development
- End-to-end and unit testing with Playwright and uvu, supported by ESLint, Prettier, and Svelte-specific tooling
- Deployment orchestrated through Vercel with automated routing and Tailwind CSS for consistent styling
Code Quality
- Comprehensive test coverage spanning unit, integration, and end-to-end layers with clear behavioral mapping
- Strong TypeScript usage with interfaces and JSDoc annotations ensuring type safety in data pipelines and query processing
- Consistent naming conventions and modular structure that enhance readability and maintainability
- Robust linting and formatting practices enforced across all modules, including test fixtures and utilities
- Co-located test utilities and fixtures promote maintainability and reduce cognitive load during development
What Makes It Unique
- Native SQL query interpolation with dynamic input binding enables direct UI-to-query connectivity without manual parameter handling
- Declarative Markdown syntax allows non-developers to embed live data components like charts and filters directly in documentation
- Plugin system unifies registration of data sources and UI components, eliminating framework lock-in and enabling true extensibility
- Column-level analytics rules embedded in SQL comments support advanced formatting and aggregation without external transformation layers
- Built-in print/export awareness preserves visual fidelity of dashboards when exported, a rare capability in documentation-centric tools