Search Shortcut cmd + k | ctrl + k
duckdbi

Browser-based BI dashboard extension for DuckDB. Run SQL queries and build interactive dashboards with drag-and-drop charts, all from the DuckDB CLI.

Maintainer(s): nkwork9999

Installing and Loading

INSTALL duckdbi FROM community;
LOAD duckdbi;

Example

-- Load the extension
LOAD duckdbi;

-- Start the BI server on port 8080
SELECT duckdbi_start('localhost', 8080);

-- Open http://localhost:8080 in your browser
-- Write SQL, create charts, build dashboards

-- Stop the server when done
SELECT duckdbi_stop();

About duckdbi

DuckDBI turns DuckDB into a local BI server. The extension embeds a full single-page application that serves an interactive dashboard builder directly from the DuckDB process.

Core Features:

  • SQL query editor with JSON result rendering
  • Interactive charts powered by Plotly.js (Bar, Line, Scatter, Area, 3D Scatter)
  • Drag-and-drop dashboard layout via Gridstack.js
  • PDF export with jsPDF and html2canvas
  • Markdown text panels via Marked.js

Functions:

  • duckdbi_start(host, port) - Start the HTTP server and open the dashboard UI
  • duckdbi_stop() - Stop the running server

Architecture: The extension bundles an HTTP server (cpp-httplib) and a complete SPA as a compiled-in string literal. The /api/query endpoint executes SQL against the attached DuckDB database and returns JSON results to the browser frontend. No external server or setup required.

Added Functions

function_name function_type description comment examples
duckdbi_start scalar NULL NULL  
duckdbi_stop scalar NULL NULL  

Overloaded Functions

This extension does not add any function overloads.

Added Types

This extension does not add any types.

Added Settings

This extension does not add any settings.