Vibeleaderboard
Index / tool
Visit github.com
Category
Finance
Rank
Pricing
Open Source
Type
TOOL
GitHub
213 stars
Date

About

Backend template to plug your own data sources into the OpenBB Workspace finance terminal.

What it does

It supplies working patterns for making private or public data readable by OpenBB Workspace widgets. A backend publishes JSON data plus widget and optional app definitions. Examples cover basic endpoints, interactive tables, embedded Streamlit views, synchronized parameters, and MCP tools.

Why it's ranked here

This is useful because it documents the actual integration contract through runnable examples and validation scripts. It goes beyond a minimal starter by covering layouts, endpoint responses, server-side tables, iframe messaging, and MCP. The collection remains example-driven, so production decisions still belong to the adopter.

What's good

The validators catch malformed widget definitions, invalid types, broken layout references, grid overflow, deprecated table configuration, and unexpected endpoint response shapes. The examples progress from a small greeting to pagination, filtering, sorting, grouping, embedded interfaces, and tool-enabled portfolio actions.

Tradeoffs

Most examples use Python and FastAPI, although the protocol itself permits other languages. CORS setup remains the developer’s responsibility. Built-in authentication supports configured headers or query parameters, with other methods requiring coordination. The server-side table example implements SQLite and MySQL connections, but its Snowflake connection is explicitly unfinished.

How to use it well

Use it when an engineer owns a data source and needs a concrete OpenBB integration contract. Start small, define widgets, run structural validation, launch locally, then test live responses before deployment. Treat the advanced examples as patterns, not production infrastructure. You still supply real data, hosting, security policy, and operational controls.

Technical notes+

scripts/validate_app.py invokes scripts/validate_widgets.py and scripts/validate_apps.py, but live HTTP checks live separately in scripts/validate_endpoints.py. The endpoint validator checks /widgets.json, treats /apps.json as optional, selects GET or POST by widget type, supplies configured parameter defaults, and verifies response shapes. getting-started/hello-world/main.py demonstrates FastAPI routes and restricted CORS. widget-examples/streamlit/app.py implements iframe messaging and synchronized parameters, while widget-examples/streamlit/mcp_server.py combines FastMCP tools with Workspace routes. widget-examples/ssrm_mode/database.py implements SQLite and MySQL connections but raises NotImplementedError for Snowflake.

Observed

Primary language
Python
Core interface
HTTP endpoints serving JSON widget data and configuration
Optional interface
A Streamable HTTP MCP server example exposes portfolio tools alongside Workspace routes
Validation surface
Command-line validators cover widget definitions, app layouts, and live endpoint responses
Example frameworks
FastAPI, Streamlit, Starlette, and FastMCP
Database example support
The server-side row model example implements SQLite and MySQL; Snowflake is configured but not implemented
Hosting model
Integrations may be hosted internally or externally

Read from README.md, scripts/validate_app.py, scripts/validate_apps.py, scripts/validate_widgets.py, scripts/validate_endpoints.py, widget-examples/streamlit/app.py, widget-examples/ssrm_mode/main.py, getting-started/hello-world/main.py, widget-examples/ssrm_mode/config.py, widget-examples/ssrm_mode/models.py, widget-examples/ssrm_mode/helpers.py, widget-examples/ssrm_mode/database.py, widget-examples/streamlit/portfolio.py, widget-examples/ssrm_mode/formatters.py, widget-examples/streamlit/mcp_server.py.

What it can do

  • Integrate custom data sources into OpenBB Workspace

    Custom data source APIs or databasesConnected data feeds in OpenBB terminal

  • Create backend templates for financial data

    Data source specifications and requirementsStructured backend template code

  • Map external data to OpenBB format

    Raw financial data from external sourcesOpenBB-compatible data structures

  • Establish data pipeline connections

    Data source endpoints and authentication credentialsActive data pipeline for OpenBB Workspace

  • Configure data source parameters

    Data source configuration settingsConfigured backend connection settings

Tags

openbbfinancedatabackendtemplate

Tech Stack

PythonHTML

Comments (0)

No comments yet

Editorially curated, with community endorsements as a secondary signal. Corrections welcome.