Metadata-Version: 2.1
Name: mazel
Version: 0.0.5
Summary: Simple bazel-inspired Makefile runner for monorepos
Home-page: https://github.com/equium-io/mazel
License: Apache-2.0
Author: John Paulett
Author-email: john.paulett@equium.io
Requires-Python: >=3.10,<4.0
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Provides-Extra: yaml
Requires-Dist: click (>=8.1.3,<9.0.0)
Requires-Dist: ruamel.yaml (>=0.17.21,<0.18.0) ; extra == "yaml"
Requires-Dist: tomlkit (>=0.11.5,<0.12.0)
Project-URL: Repository, https://github.com/equium-io/mazel
Description-Content-Type: text/markdown

# mazel: make helpers for monorepos

>  bazel(-ish) for Makefiles = **mazel**

`mazel` is a simple [bazel](https://bazel.build/)-inspired Makefile-based build system for monorepos.

The goal is to not create another build system, rather we provide simple helpers around GNU `make`, along with common (though not required) Makefile patterns.

mazel provides:
1. Ability to execute make targets in one or more subpaths.
2. Dependency graph to allow execution of targets in a logical order. Either parsed from the package manager (e.g. poetry's `pyproject.toml` or npm's `package.json`).


```
mazel test //libs/py/common          # Runs `make test` for the common library
mazel test                           # Runs tests for any packages under the current directory
mazel format //libs/py               # Code formats all code under libs/py
mazel run //tools/docker/base:image  # Builds the base docker image
```

See https://mazel.readthedocs.io/ for more info

