Add analytics dashboard design proposal document#20
Merged
minhlucvan merged 7 commits intomainfrom Mar 13, 2026
Merged
Conversation
Proposes a new data sources + dashboard templates feature for notebookmd that bridges the gap between heavyweight BI tools (Metabase, PowerBI, Dash) and raw print() — enabling AI agents to connect to databases, CSVs, and APIs, auto-discover schemas, and generate full dashboards as plain Markdown. https://claude.ai/code/session_01JRHMQxstocN8hCt41458n7
… positioning Adds lightweight semantic layer concept (metric definitions, report metadata headers), cross-report linking/indexing, and detailed competitive analysis vs Evidence.dev, Streamlit, and Metabase based on market research. https://claude.ai/code/session_01JRHMQxstocN8hCt41458n7
Major rewrite based on deep research into Metabase (no markdown export), DuckDB (ideal embedded query engine), MindsDB (universal data adapter), MCP ecosystem (340% growth, 500+ servers), and the AI analytics landscape (Databricks Genie, Snowflake Cortex, ThoughtSpot Spotter, Hex Agent). Key positioning shift: notebookmd is the "last-mile rendering layer" that complements DuckDB/MindsDB/MCP rather than competing with BI tools. DuckDB-first strategy replaces custom connector sprawl. https://claude.ai/code/session_01JRHMQxstocN8hCt41458n7
Strip away tool comparisons and infrastructure concerns. Focus on the core positioning: notebookmd is a code-first representation layer that instantly enables any AI agent to produce structured Markdown analytics. Agent writes Python → notebookmd renders → analytics happens. https://claude.ai/code/session_01JRHMQxstocN8hCt41458n7
Fundamental reframe: the dashboard layer sits ABOVE notebookmd and thinks about data sources, metrics, joins, dimensions, and slicing. Visualization is the last step, not the first. New Dashboard API: dash.source(), dash.metric(), dash.join(), dash.slice(), dash.trend(), dash.breakdown(), dash.compare(), dash.show() — agents think in analytical concepts, not widget calls. https://claude.ai/code/session_01JRHMQxstocN8hCt41458n7
Rewrite proposal to directly map to Metabase/Looker/PowerBI/Cube data models. Same concepts (dimensions, measures, joins, tiles, filters) but in Python, for agents, with Markdown output. Adds interop layer: import from Metabase/Looker/Cube, export back to them. One data model, every BI platform, Markdown output. https://claude.ai/code/session_01JRHMQxstocN8hCt41458n7
Exact field-level mappings between notebookmd analytics model and: - Metabase: MBQL aggregations, field refs, dashcards, parameters, display types - Looker: LookML views, dimensions, measures, dimension_groups, explores - Cube: cube schema, dimensions, measures, joins, REST /load API - PowerBI: semantic model tables, DAX measures, relationships, slicers Includes step-by-step import/export flow for Metabase API integration. https://claude.ai/code/session_01JRHMQxstocN8hCt41458n7
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR adds a comprehensive design proposal for extending notebookmd with a complete analytics dashboard layer. The proposal outlines how notebookmd can evolve from a report generation library into a lightweight, agent-native BI platform with data source connectors, auto-discovery, dashboard templates, and refresh capabilities.
Changes
docs/analytics-dashboard-proposal.md— A detailed 568-line design document covering:n.connect(),n.source_profile(),n.auto_dashboard())Type of Change
Testing
N/A — This is a design proposal document, not implementation code.
Checklist
https://claude.ai/code/session_01JRHMQxstocN8hCt41458n7