Skip to main content

C++ project maintenance, automated

Project description

Project Flow

Python package workflow badge PyPI version badge PyPI License: MIT

Project Flow aims at being a one-stop tool for C++ projects, from creating new project, though building and verifying, all the way to publishing releases to the repository. It will run a set of known steps and will happily consult your project what do you want to call any subset of those steps.

Currently, it will make use of Conan for external dependencies, CMake presets for config and build and GitHub CLI for releases.

Installation

To create a new project with Project Flow, first install it using pip:

(.venv) $ pip install proj-flow

Every project created with Project Flow has a self-bootstrapping helper script, which will install proj-flow if it is needed, using either current virtual environment or switching to a private virtual environment (created inside .flow/.venv directory). This is used by the GitHub workflow in the generated projects through the bootstrap command.

On any platform, this command (and any other) may be called from the root of the project with:

python .flow/flow.py bootstrap

From Bash with:

./flow bootstrap

From PowerShell with:

.\flow bootstrap

Creating a project

A fresh C++ project can be created with a

proj-flow init cxx

This command will ask multiple questions to build Mustache context for the project template. For more information, see the documentation.

Project details


Download files

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

Source Distribution

proj_flow-0.31.1.tar.gz (171.4 kB view details)

Uploaded Source

Built Distribution

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

proj_flow-0.31.1-py3-none-any.whl (229.7 kB view details)

Uploaded Python 3

File details

Details for the file proj_flow-0.31.1.tar.gz.

File metadata

  • Download URL: proj_flow-0.31.1.tar.gz
  • Upload date:
  • Size: 171.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for proj_flow-0.31.1.tar.gz
Algorithm Hash digest
SHA256 58111899a9b726d8a74b533fb279f3687dfb196032506b5b7f18b8b8410e281b
MD5 41364b0df1e41202bc897c504c7f6f5a
BLAKE2b-256 c10bcb5170e842732a719a6f42f998c9cfa20a6b794e49ef4f0419b4a6e28707

See more details on using hashes here.

Provenance

The following attestation bundles were made for proj_flow-0.31.1.tar.gz:

Publisher: release.yml on mzdun/proj-flow

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

File details

Details for the file proj_flow-0.31.1-py3-none-any.whl.

File metadata

  • Download URL: proj_flow-0.31.1-py3-none-any.whl
  • Upload date:
  • Size: 229.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for proj_flow-0.31.1-py3-none-any.whl
Algorithm Hash digest
SHA256 64ffae951f205ccc9304030d70c8f1bc82ea4fbd69ce3bc3a2df33cba546b9f2
MD5 03304154a9d41bcb17cb4e0c0c55667c
BLAKE2b-256 5bbf79625a9f21f58eb5d1d0a75d69c322477c631b61e6b1e2acda75eceff2b7

See more details on using hashes here.

Provenance

The following attestation bundles were made for proj_flow-0.31.1-py3-none-any.whl:

Publisher: release.yml on mzdun/proj-flow

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

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page