emcd-projectsΒΆ
π οΈ Administration utilities for managing projects built from the emcd/python-project-common Copier template.
Installation π¦ΒΆ
Method: Install Executable ScriptΒΆ
Install via the uv
tool command:
uv tool install emcd-projects
or, run directly with uvx:
uvx --from emcd-projects emcdproj
Or, install via pipx:
pipx install emcd-projects
Method: Install Python PackageΒΆ
Install via uv pip
command:
uv pip install emcd-projects
Or, install via pip:
pip install emcd-projects
FeaturesΒΆ
- π Static Website Maintenance
Generates badges/shields based on test coverage.
Maintains index of versioned documentation and coverage reports.
No need for Codecov, ReadTheDocs, etcβ¦; static site can be hosted anywhere which can deploy from a Git repo branch (GitHub Pages, etcβ¦).
More FlairΒΆ
ArchitectureΒΆ
The emcdproj package provides maintenance tooling for projects generated
from the python-project-common Copier template. It is one component of a
larger repository that also contains the template itself, reusable GitHub
Actions workflows, and shared documentation.
Package ModulesΒΆ
emcdproj/
βββ __/ # Centralized import hub
β βββ __init__.py # Re-exports core utilities
β βββ imports.py # External library imports
β βββ nomina.py # emcd-projects-specific naming constants
βββ __init__.py # Package entry point and version
βββ __main__.py # CLI entry point for `python -m emcdproj`
βββ cli.py # Command-line interface implementation
βββ exceptions.py # Package exception hierarchy
βββ filesystem.py # File system operations
βββ interfaces.py # Common interface definitions
βββ website.py # Static website generation and maintenance
βββ _typedecls/ # Type declaration stubs
Modules generally use the standard __ import pattern for external
dependencies, with exceptions for entry points (__main__.py) and
subsystems with direct import requirements.
Key Subsystem ContractsΒΆ
Static Site Publisher (website.py)
Generates and maintains a static documentation site with versioned content, coverage badges, and stable/development aliases. Invoked by the release workflow after documentation and coverage artifacts are available.
Integration with Reusable Workflows
The xrepo--documenter workflow invokes emcdproj website update as part
of documentation publication. The xrepo--reporter workflow produces
coverage artifacts consumed by the site publisher.
Table of ContentsΒΆ
- Examples
- API
- Release Notes
- emcdproj 1.60 (2026-08-06)
- Emcdproj 1.36 (2025-08-07)
- Emcdproj 1.35 (2025-08-05)
- Emcdproj 1.31 (2025-07-16)
- Emcdproj 1.29.1 (2025-07-12)
- Emcdproj 1.29 (2025-07-11)
- Emcdproj 1.28 (2025-07-10)
- Emcdproj 1.24 (2025-06-29)
- Emcdproj 1.22 (2025-06-14)
- Emcdproj 1.18 (2025-05-27)
- Emcdproj 1.17 (2025-04-30)
- emcd-projects 1.15 (2025-04-08)
- emcd-projects 1.14 (2025-04-08)
- Contribution
- License