Hello and thanks for dropping in to check out Boa Constructor. Boa Constructor is an IDE originally written in 1999. It runs in Python and uses wxPython for its GUI elements and controls. In 1999, Python and wxPython were very different and have evolved over the itervening time. So much so that the original Boa Constructor code will no longer run on current releases of Python or wxPython. This project was created to "uplift" the code to get Boa working again in modern programming environments.
Boa Constructor is described as a Rapid Application Development tool. Apart from features common to most IDEs such as a full-featured editor, a built-in debugger, TODO functions, Bookmarking, etc Boa also features a GUI-based GUI builder. This means you can graphically build your applications window frame, its menus, its toolbars and buttons, its text entry areas and other controls. There are many built=in wxPython controls available for use in your application; colour picker, Directory Navigation dialogue and file selection, various dialogue boxes to communicate with your user. wxPython has many other controls like radio buttons, spinners, sliders, combo boxes, etc all available for you to pick-and-click into your application.
Boa Constructor presumes your application will operate in the Model-View-Controller framework. Part of the basic design flow in Boa is to select controls and lay them out graphically to make up you user interface and select the events they generate that need to be managed. As such, a project should start its life in Boa Constructor and continue to completion. It is difficult to migrate an existing program into Boa.
The project is ongoing. There are still many parts of Boa that are not yet functional but most of the basics are there for you to get started. There is enough functionality to complete the original Boa Constructor tutorial activity that demonstrates how to use Boa to create basic applications. More functionality will be available in later releases as I get more of the application working.
If you have the desire and skill to help resurrect Boa Constructor, I would love to hear from you.
This project is managed with UV - An extremely fast Python package and project manager, written in Rust.
Run the appropriate bootstrap script to install UV on your system.
- Windows:
bootstrap.bat - Linux / MacOS:
./bootstrap.sh
Alternatively, follow the UV installation instructions directly:
- In a new command prompt / terminal window
- Run
uv self versionto confirm UV is installed
- Using the command line: Navigate to the directory where you want to clone the repository and run:
git clone https://github.com/ianBBB/boa-constructor- Go to the GitHub page: https://github.com/ianBBB/boa-constructor
- Use the green button marked "Code" to download the ZIP file containing Boa Constructor
- Save the ZIP file to your local machine in a directory of your choice
- Extract the contents of the ZIP file to a directory on your local machine
Run the provided script for your platform:
- Windows:
run.bat - Linux / MacOS:
./run.sh
- Open a command prompt / terminal window
- Navigate to the directory where you cloned or extracted the repository
- Run the following command
uv run Boa.py
This command will:
- Download the correct version of Python
- Set up a virtual environment
- Install the required dependencies
- Launch Boa Constructor.