No project description provided
Project description
fledge-cli
fledge-cli is a command-line tool that bootstraps Python projects with best-practice development configurations and tools. It automatically sets up pre-commit hooks, linting configurations, GitHub Actions workflows, and documentation scaffolding to help you get started quickly with a well-configured Python project.
What It Does
Running fledge in your Python project directory will install and configure:
- Pre-commit hooks - Automatically installed with
.pre-commit-config.yaml - Git commit/tag signing - Enables GPG signing via git config
- Linting & formatting configs -
.yamllint,.gitlintfor code quality - GitHub Actions workflows - CI/CD pipelines for publishing docs and releases
- MkDocs documentation - Basic
mkdocs.yamlanddocs/index.mdstructure - GitHub Copilot instructions - Project-specific AI assistant guidance
- Enhanced .gitignore - Common Python ignore patterns
- Updated pyproject.toml - Additional Hatch build configurations
- Example test file - Basic import test to get you started
- Custom sed transformations - Optional user-defined file transformations via
~/.config/fledge/init.sed(using Python regex)
All file names are automatically customized with your project name from pyproject.toml.
Table of Contents
Prerequisites
Before using fledge-cli, ensure your project meets these requirements:
- Hatch project structure - Your project should be initialized with
hatch new <project-name> - PyPI Trusted Publisher - For the release workflow to work, configure a trusted publisher on PyPI for your repository
- GitHub Pages - Enable GitHub Pages in your repository settings and set the source to "GitHub Actions" for automated documentation deployment
Installation
pip install fledge-cli
Usage
Navigate to your Python project directory and run:
fledge
This will install all configuration files and set up your development environment. By default, existing files are not overwritten.
Options
-f, --force- Overwrite existing files-C, --chdir <directory>- Change to specified directory before installing
Example:
# Install in current directory, overwriting existing configs
fledge --force
# Install in a different directory
fleCustom Sed Transformations
You can define custom file transformations by creating a sed script at `~/.config/fledge/init.sed`. This script will be applied to all `.py`, `.toml`, `.md`, and `.txt` files in your project using Python regex syntax (not traditional sed syntax).
Example `~/.config/fledge/init.sed`:
s/YOUR_NAME/John Doe/g s/YOUR_EMAIL/john@example.com/g
## dge --chdir /path/to/project
License
fledge-cli is distributed under the terms of the MIT license.
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 fledge_cli-0.0.1a2.tar.gz.
File metadata
- Download URL: fledge_cli-0.0.1a2.tar.gz
- Upload date:
- Size: 9.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1767e412cea2b0a6786428f996798ecfc5f3404eb7a0004a0f6494904fd0ccd0
|
|
| MD5 |
57028b40364dc5a2e7413633ed8e9929
|
|
| BLAKE2b-256 |
0ffa281bab6effb838d22720b17db45904febd02042797962314115b5ff621ca
|
Provenance
The following attestation bundles were made for fledge_cli-0.0.1a2.tar.gz:
Publisher:
release.yml on bytehexe/fledge-cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fledge_cli-0.0.1a2.tar.gz -
Subject digest:
1767e412cea2b0a6786428f996798ecfc5f3404eb7a0004a0f6494904fd0ccd0 - Sigstore transparency entry: 774136088
- Sigstore integration time:
-
Permalink:
bytehexe/fledge-cli@f6f54771a8e2d6739511bcd45581933aed9ea277 -
Branch / Tag:
refs/tags/0.0.1a2 - Owner: https://github.com/bytehexe
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@f6f54771a8e2d6739511bcd45581933aed9ea277 -
Trigger Event:
push
-
Statement type:
File details
Details for the file fledge_cli-0.0.1a2-py3-none-any.whl.
File metadata
- Download URL: fledge_cli-0.0.1a2-py3-none-any.whl
- Upload date:
- Size: 11.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2aad76e141e8ff567d7b534fcdb63668948891d1bd3dcb126e307b8444de0580
|
|
| MD5 |
328cafa76c50a13ea189d40e77b632e1
|
|
| BLAKE2b-256 |
91f991a6e8283969e5a5fcb57dabe530fbe8d3fb427f23bbd48343a2f1b7d8a7
|
Provenance
The following attestation bundles were made for fledge_cli-0.0.1a2-py3-none-any.whl:
Publisher:
release.yml on bytehexe/fledge-cli
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
fledge_cli-0.0.1a2-py3-none-any.whl -
Subject digest:
2aad76e141e8ff567d7b534fcdb63668948891d1bd3dcb126e307b8444de0580 - Sigstore transparency entry: 774136089
- Sigstore integration time:
-
Permalink:
bytehexe/fledge-cli@f6f54771a8e2d6739511bcd45581933aed9ea277 -
Branch / Tag:
refs/tags/0.0.1a2 - Owner: https://github.com/bytehexe
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@f6f54771a8e2d6739511bcd45581933aed9ea277 -
Trigger Event:
push
-
Statement type: