FrontEngine
About
FrontEngine is a lightweight and flexible framework designed to simplify automation and visualization tasks.
It provides an intuitive interface and supports multiple media formats for interactive demonstrations.
Features
-
GIFs & Animations
(GIFs may take time to load)
-
Video
-
Website
-
YouTube Showcase
Watch on YouTube
Install
-
System Requirements
- Python 3.10+
- Windows 10/11 is the primary target; macOS and Linux are supported but may need extra OS dependencies.
-
From PyPI
pip install frontengine
-
Pre-built binaries
Development
- Requires Python 3.10+.
- Install the dev toolchain:
pip install -r dev_requirements.txt pip install -e .
- Run the unit smoke tests:
python ./tests/unit_test/start/start_front_engine.py python ./tests/unit_test/start/extend_front_engine.py
- Contributions and pull requests are welcome!
Continuous Integration & Release
This repository ships two GitHub Actions workflows:
| Workflow | Trigger | Purpose |
|---|---|---|
CI (.github/workflows/ci.yml) |
Push / PR to main or dev, daily cron |
Matrix smoke test across Python 3.10 / 3.11 / 3.12 on Windows |
Release (.github/workflows/release.yml) |
A pull request is merged into main (or manual dispatch) |
Auto-bumps the version in stable.toml/pyproject.toml, commits the bump back to main, swaps stable.toml → pyproject.toml, builds sdist + wheel, uploads to PyPI as frontengine via twine, creates a GitHub release tagged v<version> |
Publishing only happens on merge to main — pushing to dev runs CI but
never publishes. On merge, the workflow automatically bumps the patch
segment of the version (configurable via manual dispatch: patch / minor
/ major), commits the bump back to main with [skip ci], then builds,
uploads, and releases under the new version. Both the PyPI upload and the
GitHub release see the bumped version, not the previous one.
Cutting a new release
- Merge a pull request into
main— the patch version bumps automatically. - That's it. PyPI publish and GitHub release happen in one workflow run.
For a minor or major bump, trigger the workflow manually via Actions →
Release → Run workflow and pick the bump segment. That path also works
when you need to re-run a failed publish without a new merge.
Required repository secrets
| Secret | Used by | Contents |
|---|---|---|
PYPI_API_TOKEN |
release.yml |
A PyPI API token scoped to the frontengine project |
The workflow uses __token__ as the twine username, so only the token itself
needs to be stored.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file frontengine-1.0.16.tar.gz.
File metadata
- Download URL: frontengine-1.0.16.tar.gz
- Upload date:
- Size: 100.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1ee20ee68396d15bfbf7fa4f4a3396189873f10ba6a9921943fe91dabd2a4bd2
|
|
| MD5 |
74478bd5803bab2d86516aca21fc83be
|
|
| BLAKE2b-256 |
4d4548c1ca2cc19adbfc4b1ffd7ce427e66dcf4b12dacde469a4d20e97f79145
|
File details
Details for the file frontengine-1.0.16-py3-none-any.whl.
File metadata
- Download URL: frontengine-1.0.16-py3-none-any.whl
- Upload date:
- Size: 145.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
446189bd5ac53aad203bef1e12fd2c26370d19c1f10d2e919afcc61b6e6c5e8c
|
|
| MD5 |
4f0dff0ee3051e65b011c9098150a8b4
|
|
| BLAKE2b-256 |
1b6932bbd13df9ce73b9a4d4e279a836cd0b46976eb41df357d77509b87c2c77
|