Skip to main content

A framework for developing data-driven business applications

Project description

Dabo: A Framework for developing data-driven business applications

Dabo is for developing multi-platform database business applications - you know, applications that need to connect to a database like MySQL, Oracle, MS-SQL, PostgreSQL, or SQLite, get recordsets of data based on criteria set by the user, provide easy ways to edit and commit changes to the data, and to report on the data.

You program in Python, subclassing Dabo's base classes. In addition, there are several graphical tools for laying out your GUI, editing your menus, and creating professional business reports.

Dabo has three main subpackages, representing the three tiers common in database application design:

	dabo.db  : database
	dabo.biz : business objects
	dabo.ui  : user interface

dabo.db and dabo.biz are completely ui-free, while dabo.ui requires wxPython.

To run Dabo, and apps based on Dabo, you need:

  • Python 3.10 or later
  • wxPython 4.0 or later
  • Reportlab and Python Imaging Library if running reports.
  • Linux, MacOS, or Windows operating system.

If you are working on the Dabo codebase, you can clone the git repo from here:

git clone git@github.com:dabodev/dabo.git

How you get started is pretty much up to you. There are two related projects: dabo_demo, which contains demonstration code for the various Dabo classes, and dabo_ide, which contains tools for creating Dabo applications visually. Please note that the dabo_ide tools worked great when they were written in the mid-2000s, and have largely been updated to work with modern Python. They are still a work in progress, though, so please post an issue on the Dabo IDE Issues page in GitHub.

For some quick results for the impatient, once you've installed Dabo using the standard uv add dabo or poetry install dabo method, do this from your Python interpreter:

from dabo.application import dApp
dApp().start()

press Ctrl+D and type the following into the command window that appears:

tb = dabo.ui.dTextBox(self)

Notice the textbox in the upper left hand corner?

tb.Value = "yippee!"
tb.FontBold = True
print(tb.Value)

Now, use the ui to change the value in the textbox, and switch back to the command window.

print(tb.Value)

You can even place it wherever you wish:

tb.Left = 123
tb.Top = 99

When you type those lines, the textbox moves to the specified location.

For more information:

Dabo Website

Dabo Repo on GitHub

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

dabo-2026.1.24.tar.gz (890.2 kB view details)

Uploaded Source

Built Distribution

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

dabo-2026.1.24-py3-none-any.whl (1.1 MB view details)

Uploaded Python 3

File details

Details for the file dabo-2026.1.24.tar.gz.

File metadata

  • Download URL: dabo-2026.1.24.tar.gz
  • Upload date:
  • Size: 890.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.9 {"installer":{"name":"uv","version":"0.9.9"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for dabo-2026.1.24.tar.gz
Algorithm Hash digest
SHA256 d302b7bdeff6cf7c7d55f65e9948abe833de67678e234a723cb4b400ec9a8ebd
MD5 2e8eee8e2831db71ee9b3ee0fb4dff87
BLAKE2b-256 2924238f4a8f751da3c2feffab56040ed61f4d6ccbeb56df65aec1e510636a1c

See more details on using hashes here.

File details

Details for the file dabo-2026.1.24-py3-none-any.whl.

File metadata

  • Download URL: dabo-2026.1.24-py3-none-any.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.9 {"installer":{"name":"uv","version":"0.9.9"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for dabo-2026.1.24-py3-none-any.whl
Algorithm Hash digest
SHA256 2f5ee59367213e60e75300829acebe6a6bbe3f8c9a5a693e3322dbf0102bcbe8
MD5 9e6b3cc82e84591bb60602ec5b227d6f
BLAKE2b-256 a63c04d793709464c8c8037804be7d6e53f0fc0d830f392c6f74232a8c5a8a2f

See more details on using hashes here.

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