Cross-platform generator (mkpanda command) for new Panda3D projects.
Project description
panda3d-boilerplate
Cross-platform generator for new Panda3D projects. Installs as a global mkpanda command.
Install
Requires Python 3.8+ and pipx (recommended) or pip.
pipx install mkpanda
Or directly from GitHub (for the latest unreleased changes on main):
pipx install git+https://github.com/Bebopskull/panda3d-boilerplate.git
Use
mkpanda /path/to/my-game
Optional second argument sets the display name (defaults to the directory name):
mkpanda /path/to/my-game "My Awesome Game"
Update
pipx upgrade mkpanda
Or to force-reinstall the latest from GitHub (bypasses PyPI cache):
pipx install --force git+https://github.com/Bebopskull/panda3d-boilerplate.git
Releasing a new version (maintainers)
- Bump
versioninpyproject.toml(SemVer: patch for fixes, minor for features, major for breaking changes). - Commit and push to
main. - Build and upload:
rm -rf dist/ build/ pyproject-build twine upload dist/*
(Requires~/.pypircwith a PyPI API token. See pipx docs and the PyPI token guide.)
Uninstall
pipx uninstall mkpanda
What it creates
my-game/
├── src/
│ ├── main.py # ShowBase entry point
│ ├── scenes/ # Scene/state system (base + menu example)
│ ├── input/ # Centralized input manager
│ └── utils/logger.py # Stdout logging
├── assets/
│ ├── models/
│ ├── textures/
│ ├── sounds/
│ ├── fonts/
│ └── shaders/
├── config/config.prc # Window, audio, model paths
├── tests/
├── requirements.txt # project-specific deps (Panda3D is expected to be system-installed)
├── .gitignore
├── README.md
├── run.sh # Linux/macOS launcher
└── run.bat # Windows launcher
Next steps in the generated project
Panda3D must already be installed on your system (e.g. pip install --user panda3d). The generated venv uses --system-site-packages so it inherits that install instead of re-downloading Panda3D per project.
cd /path/to/my-game
python3 -m venv --system-site-packages .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -r requirements.txt
python src/main.py
Contributing
Open to PRs. The repo layout:
panda3d_boilerplate/cli.py— themkpandaentry pointpanda3d_boilerplate/templates/— files copied into new projects (with{{PROJECT_NAME}}substitution)pyproject.toml— packaging metadata; bumpversionfor releases
To test changes locally:
git clone https://github.com/Bebopskull/panda3d-boilerplate.git
cd panda3d-boilerplate
pipx install --force .
mkpanda /tmp/test-project "Test"
License
MIT
Project details
Release history Release notifications | RSS feed
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 mkpanda-0.3.0.tar.gz.
File metadata
- Download URL: mkpanda-0.3.0.tar.gz
- Upload date:
- Size: 7.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7fda86cba5f40c2796311a33a7aaae113be38368db1dc231d05d3ae62bcd55d1
|
|
| MD5 |
a994e8f66f72cb6fff8589b0cc8116ae
|
|
| BLAKE2b-256 |
3cbe49d540819a481995a10a3c5f36a089bbe9203a0febc5dbf1ad44bbd863c2
|
File details
Details for the file mkpanda-0.3.0-py3-none-any.whl.
File metadata
- Download URL: mkpanda-0.3.0-py3-none-any.whl
- Upload date:
- Size: 11.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cce21680b173f160c68a7e344bfce7fe014276209f91cb5ee367916a054be25c
|
|
| MD5 |
c540e67fd5fe73939aee2f9b56b40c99
|
|
| BLAKE2b-256 |
c2059bb54b8e3f1e8c367e2f5a142956b27033ce23e9f84aac5b730b4d8a9d6c
|