Skip to main content

🧹 Eutaxis

PyPI - Version Test Workflow Status

Eutaxis (from Ancient Greek εὖ “good” + τάξις “arrangement, ordering”) is a command-line tool for normalizing and cleaning up project code layouts. It focuses on consistent headers, include ordering, and formatting across common project structures.

Currently supported:

  • Python projects:
    • isort and ruff
    • optional licence headers
  • Meson projects:
    • Lark-based argument reordering for many functions
    • muon fmt
    • optional licence headers
  • C++ projects:
    • header guards
    • include ordering
    • Meson targets
    • simple qualifier reordering
    • optional licence headers

📦 Installation

Eutaxis is available on PyPI and can be installed as usual, for example:

pip install eutaxis

🚀 Usage

Eutaxis is driven by “workers” (one per language):

eutaxis <worker> [options]

Examples:

# Clean a Python project in the current directory
eutaxis python

# Clean a Meson project
eutaxis meson -c muon.cfg

# Clean a C++ project using .eutaxis config
eutaxis cpp

To see options:

eutaxis -h
eutaxis python -h
eutaxis meson -h
eutaxis cpp -h

⚙️ C++ Configuration

C++ clean-up is configured via a .eutaxis YAML file in the project root, for example:

fix_meson: false
license: MPL-2.0
url: https://github.com/your/repo
project_name: mylib
ignore_parent_header:
  - include/mylib/detail
ignore_folders:
  - external

The C++ worker expects the following layout:

  • headers: include/<project_name>/...
  • sources (optional): src/, test/, perf/, tools/

🧠 Behaviour Overview

  • Licence/file headers:
    • Inserts or normalizes licence/file headers for supported languages.
  • C++:
    • Normalizes header guards.
    • Maintains “base headers” <dir>.hpp with an IWYU export block.
    • Re-sorts and groups includes into:
      • C++ standard headers
      • other system headers
      • project headers
      • relative headers
    • Adjusts a few qualifiers (e.g. constexpr explicit → explicit constexpr).
    • Updates Meson snippets for per-source targets.
  • Python and Meson:
    • Runs formatters:
      • Python: isort, ruff format
      • Meson: Lark-based argument reordering for many functions, muon fmt

⌨️ Shell Completion

Eutaxis integrates with argcomplete. Once argcomplete is installed and enabled in your shell,

eutaxis <TAB>

can be used to complete available workers and options.

📜 Licence

This library is licensed under the terms of the Mozilla Public Licence 2.0, provided in License.

Metadata

Release files for eutaxis 1.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for eutaxis 1.2.0
File Size Uploaded
eutaxis-1.2.0.tar.gz 21.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for eutaxis 1.2.0
File Interpreter ABI Platform
eutaxis-1.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 46.1 kB

Release files / eutaxis-1.2.0.tar.gz

Download URL eutaxis-1.2.0.tar.gz
Size 21.4 kB
Tags Source
SHA-256 checksum
How to use checksums
1be9ce40926e3a919d9b731a973b6c3ca5f228d52e868b4272fc681c0443a4da
BLAKE2b-256 checksum
How to use checksums
c3a6027058609006097b7fbe4c2c176945baba9f6ac6f3553805756269b4074e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 3, 2026.

Transparency log

Release files / eutaxis-1.2.0-py3-none-any.whl

Download URL eutaxis-1.2.0-py3-none-any.whl
Size 24.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
efea46b58dee0a0132244b315e670fb8153f7f55dd2cdfff9025471b68c05f4b
BLAKE2b-256 checksum
How to use checksums
a6850465d2bdfc213c2efec7e6f18b4668aa96f43b9444b4457a7d4255e5e824
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 3, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.2.0 This release

2 release files

1.1.0

2 release files

1.0.0

2 release 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