Skip to content

Add multi-tool dashboard example#444

Open
vishxrad wants to merge 3 commits intomainfrom
feat/add-multi-tool-dashboard-example
Open

Add multi-tool dashboard example#444
vishxrad wants to merge 3 commits intomainfrom
feat/add-multi-tool-dashboard-example

Conversation

@vishxrad
Copy link
Copy Markdown
Member

@vishxrad vishxrad commented Apr 9, 2026

Summary

Adds a new multi-tool-dashboard example — a CEO dashboard builder powered by OpenUI that creates live, interactive dashboards from natural language prompts.

Integrates four data sources via LLM function-calling:

  • Stripe — revenue, charges, balance, subscriptions (MRR)
  • PostHog — product analytics (DAU, pageviews, funnels, top events)
  • GitHub — engineering velocity (repos, commits, contributors)
  • Google Calendar — meeting schedule and agenda

What's included

  • Next.js app with chat UI and live dashboard canvas
  • 14 tools across 4 data sources with OpenAI function-calling
  • MCP server endpoint (/api/mcp) exposing the same tools via MCP protocol
  • SSE streaming for real-time LLM responses
  • Starter prompts for common dashboard use cases
  • Comprehensive README with setup instructions for each data source

How it works

  1. User sends a prompt (e.g. "How's the business doing?")
  2. LLM calls tools to fetch real data from configured sources
  3. LLM generates openui-lang code rendering a live dashboard
  4. Frontend renders the dashboard using the OpenUI component library

All data sources are optional — the dashboard works with any combination.

vishxrad added 3 commits April 9, 2026 23:13
CEO dashboard builder powered by OpenUI that pulls live data from
Stripe, PostHog, GitHub, and Google Calendar via LLM function-calling.
Includes MCP server, SSE streaming, and starter prompts.

Made-with: Cursor
Replace the prompt-driven starter grid with a pre-built default dashboard
that renders immediately on load using hardcoded openui-lang DSL with live
data from Stripe, PostHog, and GitHub. Add an always-visible chat sidebar
with suggestion chips for adding new widgets dynamically.

- Add default-dashboard.ts with KPI cards, AreaChart, BarChart, PieChart,
  HorizontalBarChart, sortable Repo Leaderboard, and CalendarView
- Add custom CalendarView component (month-grid calendar with event dots,
  day selection, and event detail expansion)
- Compose custom library extending openuiLibrary with CalendarView
- Update DashboardProvider to accept initialDashboardCode prop
- Always show ConversationPanel with suggestion chips when empty
- Update LLM prompt to add widgets to existing dashboard
- Remove StarterGrid, CenteredInput, and starters.ts
- Regenerate component-spec.json with CalendarView

Made-with: Cursor
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant