🤖 Robo – Classroom Programming Environment
A simple Python-based learning environment for teaching programming functions-first through grid-based robot challenges.
Setup
Install from PyPI
pip install pio-robo
Development install
git clone <repo>
cd robo
pip install -e .
Run a world
From a student project folder:
python -m robo run world1.0
Student solution files live in:
exercises/
world1/
world1_0.py
Check progress
python -m robo summary
summary also shows the local submission status. World results are recorded
in the project's hidden .robo/ folder.
Before creating projects, each pupil registers the pseudonymous ID supplied by their teacher once:
python -m robo register PUPIL-1042
The ID is stored in the user's local Robo configuration and is reused for future projects:
python -m robo new loops-practice
python -m robo register --show
Use a school-controlled ID, not a pupil's name or email address. Robo does
not ask pupils for names or email addresses. Registration refuses to replace
an existing ID unless --force is used. The new command also accepts
--student-id as an explicit override for testing or administration.
To submit recorded results, use:
python -m robo submit
The package includes the school's submission endpoint. Teachers can override
it for testing by setting the ROBO_SUBMIT_ENDPOINT environment variable.
Results remain local and are not lost when submission is unavailable.
Run tests
From the project root:
python -m pytest
Run tests when you:
- add new worlds
- change commands
- change runner/display behaviour
Contribute
- Create or edit code.
- Run the test suite.
- Check that student worlds still run.
- Open a pull request.
See the docs/ folder for pupil-facing command guides and teacher/developer notes.
Metadata
Release files for pio-robo 0.6.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pio_robo-0.6.0.tar.gz | 49.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pio_robo-0.6.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 124.9 kB
Release files / pio_robo-0.6.0.tar.gz
| Download URL | pio_robo-0.6.0.tar.gz |
|---|---|
| Size | 49.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
fe3ee9d44059df3e618ef59f4ae608573cdf687de4fc09a79d05cfc23ab4c64e
|
|
BLAKE2b-256 checksum How to use checksums |
d6a1fec4a4335016798be27fb844c2f7c70151765a26151c217447ca5bf1d611
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.0
|
Release files / pio_robo-0.6.0-py3-none-any.whl
| Download URL | pio_robo-0.6.0-py3-none-any.whl |
|---|---|
| Size | 75.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
56b75d331a86ba80c2f81f23e6981a81690597d8242961614d4457757e8bf694
|
|
BLAKE2b-256 checksum How to use checksums |
25daacad7ebd394bcfa32d31fdf2278a0930a03fa9d0647d7213519f0414a71f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.0
|