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.6

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

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.8.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.8-py3-none-any.whl (818.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: brickflowui-0.1.8.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.8.tar.gz
Algorithm Hash digest
SHA256 f913852a309f6333189ecbb3666792e7c885ce070492ee1c6fb433b0a8d6c35a
MD5 944797d2d8cbcae49549ecde139100d3
BLAKE2b-256 0b4a0fc29a8f039dd288fcc3b1b1ecd40314c50b9396fc9b1287c187d9e32220

See more details on using hashes here.

Provenance

The following attestation bundles were made for brickflowui-0.1.8.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.8-py3-none-any.whl.

File metadata

  • Download URL: brickflowui-0.1.8-py3-none-any.whl
  • Upload date:
  • Size: 818.2 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.8-py3-none-any.whl
Algorithm Hash digest
SHA256 99693d3ef284aa3c9ad9f4b772024a5024054eca8f6c1683fcc863ab33e0ee47
MD5 f64c4aa3a56e7c6fdc9a95a27dd0f6a1
BLAKE2b-256 71a989808993dd2783bb4457adfdd7bec49da0ce9943d6301f69c48fcdccf0a8

See more details on using hashes here.

Provenance

The following attestation bundles were made for brickflowui-0.1.8-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