Skip to main content

Moldo

Python Version License: MIT Documentation Status

Visual educational programming - block-based, Python-powered, extensible.

Moldo is the backend runtime for a visual block-based programming environment. Learners drag and connect blocks in the mflow-editor desktop app to build programs. The editor compiles the visual graph to a JSON program tree and sends it to this backend, which executes it and streams the output back.

Moldo

The system is extensible through molds - self-contained .zip.mold packages that add new block types to the editor. The 7 built-in capabilities (variables, I/O, control, math, text, collections, functions) are themselves molds.


Installation

pip install moldo
moldo serve

Or from source:

git clone https://github.com/GracePeterMutiibwa/moldo
cd moldo
python3 -m venv .venv && source .venv/bin/activate
pip install -e .
moldo serve

The backend runs at http://127.0.0.1:8000. Open mflow-editor and the green dot in the toolbar confirms the connection.


API

Endpoint Description
GET /health Health check
POST /run Execute a JSON program tree
GET /molds List installed molds
POST /molds/install Upload and install a .zip.mold
DELETE /molds/{name} Uninstall a community mold

Full API docs → docs/api.md or run mkdocs serve for the rendered site.


Molds

A mold adds new block types to the editor. Install any .zip.mold from the editor toolbar - no restart required.

To build your own mold:

  1. Download the mold-template from this repository
  2. Follow the mold developer guide
  3. Pack and attach to a GitHub Release

Documentation

pip install mkdocs-material
mkdocs serve

Then open http://127.0.0.1:8000 to browse the full documentation site.

License

MIT - see LICENSE

Author

Grace Peter Mutiibwa · gracepeter.clearnique.com · GitHub

Metadata

Release files for moldo 0.5.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for moldo 0.5.2
File Size Uploaded
moldo-0.5.2.tar.gz 20.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for moldo 0.5.2
File Interpreter ABI Platform
moldo-0.5.2-py3-none-any.whl Python 3 none any Details

Total release size: 41.3 kB

Release files / moldo-0.5.2.tar.gz

Download URL moldo-0.5.2.tar.gz
Size 20.1 kB
Tags Source
SHA-256 checksum
How to use checksums
9eaddf25231ae3ed7b48418371b3c8dbfe6ed4fd43006d0aee64b3d6010d6b01
BLAKE2b-256 checksum
How to use checksums
b5a8766dc646c315b7c008f41e58366d07381126388c94b47cd77a4817a6e0f3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release files / moldo-0.5.2-py3-none-any.whl

Download URL moldo-0.5.2-py3-none-any.whl
Size 21.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3cf332b3153bfc62db9462531573f2d9978b0a562aa02e60f1918408903925be
BLAKE2b-256 checksum
How to use checksums
3ea59ad3b1480a0b8deae1325163262f4797a31b528e2a0bcad990b042d7d560
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

0.5.2 This release

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.9

2 release files

0.3.8

2 release files

0.3.7

2 release files

0.3.6

2 release files

0.3.5

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.1.2

2 release files

0.1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page