Skip to main content

A Databricks-first Python UI framework for building secure dashboards, portals, and web apps with pure Python.

Project description

BrickflowUI

BrickflowUI

Databricks-first Python UI framework for building dashboards, portals, chatbot workspaces, landing pages, and internal web apps with pure Python.

Canonical package name: brickflowui

Install:

pip install brickflowui

Import:

import brickflowui as db

Documentation:

What BrickflowUI is for

Use BrickflowUI when you want to stay in Python and still ship a serious interactive app.

Good fits:

  • executive dashboards
  • data engineering pipeline portals
  • Databricks App experiences
  • internal ops tools
  • chatbot and copilot UIs
  • product-style landing pages

Why teams use it

  • Python-first authoring model
  • session-scoped reactive state
  • multi-page routing and app shell support
  • built-in tables, forms, overlays, charts, pipeline graphs, workflow boards, and chat patterns
  • packaged frontend assets that work in stricter CSP environments
  • branding and theme tokens for enterprise rollout

Quick start

Scaffold a new app:

brickflowui new my_app
cd my_app
brickflowui dev

Or write one manually:

import brickflowui as db

app = db.App(title="Hello BrickflowUI")

@app.page("/", title="Home")
def home():
    count, set_count = db.use_state(0)
    return db.Column(
        [
            db.Text("Hello BrickflowUI", variant="h1"),
            db.Text(f"Count: {count}"),
            db.Button("Increment", on_click=lambda: set_count(count + 1)),
        ],
        gap=4,
        padding=6,
    )

if __name__ == "__main__":
    app.run()

Core concepts

BrickflowUI works as:

  1. Python page functions produce a VNode tree.
  2. The server serializes that tree and sends it over WebSocket.
  3. The frontend renders it and returns interaction events.
  4. Python handlers update state and trigger rerenders.

This gives you a React-style interaction model without requiring users to write frontend code.

Current component surface

Layout and app structure

  • Column
  • Row
  • Grid
  • Card
  • Divider
  • Spacer
  • Hero
  • SectionHeader
  • StatusStrip

Inputs and overlays

  • Button
  • Input
  • Select
  • Checkbox
  • Toggle
  • Slider
  • DateRangePicker
  • MultiSelect
  • Form
  • Modal
  • Drawer
  • Popup

Data and workflow

  • Table
  • Timeline
  • SparklineStat
  • Stepper
  • KanbanBoard
  • ChatMessage
  • ChatInput
  • PipelineGraph

Charts

  • Plot
  • AreaChart
  • BarChart
  • LineChart
  • DonutChart
  • ScatterChart
  • ComposedChart
  • GaugeChart
  • RadarChart
  • Heatmap
  • FunnelChart
  • TreeMap

Databricks Apps

Use this minimum setup:

requirements.txt

brickflowui>=0.1.9

Install from GitHub instead:

brickflowui @ git+https://github.com/AjayAJ2000/brickflowUI.git@main

app.yaml

command:
  - python
  - app.py

Important packaging rule:

The installed package must contain:

brickflowui/frontend/dist/index.html
brickflowui/frontend/dist/assets/*

If those files are missing, Databricks Apps often stop at the loading shell.

Local development

Framework tests:

python -m pytest -q

Frontend build:

cd frontend
npm run build

Docs build:

python -m mkdocs build

Package build:

python -m build

Recommended playgrounds

  • examples/local_playground/app.py for framework validation
  • examples/component_studio/app.py for a broad component walkthrough
  • examples/acme_analytics_command_center/app.py for a product-style shell reference

Open source standards

Repo map

brickflowui/
  app.py
  components.py
  server.py
  state.py
  vdom.py
  frontend/dist/
  cli/
  databricks/

frontend/
  src/
  vite.config.ts

docs/
  learning/
  components/
  ARCHITECTURE.md

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

brickflowui-0.1.10.tar.gz (2.7 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

brickflowui-0.1.10-py3-none-any.whl (821.8 kB view details)

Uploaded Python 3

File details

Details for the file brickflowui-0.1.10.tar.gz.

File metadata

  • Download URL: brickflowui-0.1.10.tar.gz
  • Upload date:
  • Size: 2.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for brickflowui-0.1.10.tar.gz
Algorithm Hash digest
SHA256 3ecc4f361b4e2778e0bdc54165329e71f9fbd9b152d8c686a144ca86f359fcb2
MD5 9ddc0a795cc5b45f13cf70661fec3d5c
BLAKE2b-256 60867d1c41511ff69c83ca9894d4dd5c5b423f1d845e01bced38041c28c6001b

See more details on using hashes here.

Provenance

The following attestation bundles were made for brickflowui-0.1.10.tar.gz:

Publisher: publish.yml on AjayAJ2000/brickflowUI

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file brickflowui-0.1.10-py3-none-any.whl.

File metadata

  • Download URL: brickflowui-0.1.10-py3-none-any.whl
  • Upload date:
  • Size: 821.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for brickflowui-0.1.10-py3-none-any.whl
Algorithm Hash digest
SHA256 84da70cb26cabedbf757767c1e55a17d518d880dfbdfb36d68f14aca4a7f5699
MD5 ee8a10e53cd42cd86b4a75a0256b1e1d
BLAKE2b-256 7fd083df0e161b0da530adf13a4ece6b5c2b0a5cfd7bf7d6e3617afc377b996c

See more details on using hashes here.

Provenance

The following attestation bundles were made for brickflowui-0.1.10-py3-none-any.whl:

Publisher: publish.yml on AjayAJ2000/brickflowUI

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page