Skip to main content
Package Version PyPI - Status Tests Status Code Coverage Percentage Project License Python Versions

🛠️ 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

GitHub last commit Copier Hatch pre-commit Pyright Ruff PyPI - Implementation PyPI - Wheel

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.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

emcd_projects-1.60.tar.gz (18.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

emcd_projects-1.60-py3-none-any.whl (26.6 kB view details)

Uploaded Python 3

File details

Details for the file emcd_projects-1.60.tar.gz.

File metadata

  • Download URL: emcd_projects-1.60.tar.gz
  • Upload date:
  • Size: 18.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for emcd_projects-1.60.tar.gz
Algorithm Hash digest
SHA256 53250e4016a7f172afdc28c37916fef385e0345233d894290aded947dd2289eb
MD5 d71a1b0b0815b5d992fbafe1799d9937
BLAKE2b-256 b7d5f18ba076f2352bea8b6f094ec15a270750e4fb2bd88f86ba23ea08051549

See more details on using hashes here.

Provenance

The following attestation bundles were made for emcd_projects-1.60.tar.gz:

Publisher: releaser.yaml on emcd/python-project-common

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file emcd_projects-1.60-py3-none-any.whl.

File metadata

  • Download URL: emcd_projects-1.60-py3-none-any.whl
  • Upload date:
  • Size: 26.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for emcd_projects-1.60-py3-none-any.whl
Algorithm Hash digest
SHA256 6e962235b06217b82b420ff903e7713ae74ede0e0104d0acb5c6995859186e43
MD5 de024fe1843d4634a7899386812afe90
BLAKE2b-256 84a2b5e318cc0f851cf7dbb57b55b0ad9d178d811ae663d73617e154a6393409

See more details on using hashes here.

Provenance

The following attestation bundles were made for emcd_projects-1.60-py3-none-any.whl:

Publisher: releaser.yaml on emcd/python-project-common

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

1.60 This release

2 files

1.36

2 files

1.31

2 files

1.29.1

2 files

1.29

2 files

1.28

2 files

1.26

2 files

1.24

2 files

1.22

2 files

1.18

2 files

1.17.1

2 files

1.17

2 files

1.16

2 files

1.15

2 files

1.14

2 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