Coverage for src / rhiza / __init__.py: 100%
6 statements
« prev ^ index » next coverage.py v7.13.5, created at 2026-04-02 07:04 +0000
« prev ^ index » next coverage.py v7.13.5, created at 2026-04-02 07:04 +0000
1"""Rhiza — Manage reusable configuration templates for Python projects.
3Rhiza is a command-line interface (CLI) that helps you maintain consistent
4configuration across multiple Python projects using templates stored in a
5central repository. It can initialize projects with standard configuration,
6materialize (inject) template files into a target repository, and validate the
7template configuration.
9## Key features
11- Template initialization for new or existing projects.
12- Template materialization with selective include/exclude support.
13- Configuration validation (syntax and basic semantics).
14- Multi-host support (GitHub and GitLab).
16## Quick start
18Initialize a project with Rhiza templates:
20```bash
21cd your-project
22rhiza init
23```
25Validate your configuration:
27```bash
28rhiza validate
29```
31Customize `.rhiza/template.yml`, then sync templates into your project:
33```bash
34rhiza sync
35```
37## Main modules
39- `rhiza.commands` — Core command implementations (init, sync, validate).
40- `rhiza.models` — Data models and schemas for template configuration.
42## Documentation
44For an overview and usage guides, see the repository files:
46- [README.md](https://github.com/jebel-quant/rhiza-cli/blob/main/README.md) —
47Project overview and installation instructions.
48- [USAGE.md](https://github.com/jebel-quant/rhiza-cli/blob/main/USAGE.md) —
49Practical examples, workflows, and best practices.
50- [CLI.md](https://github.com/jebel-quant/rhiza-cli/blob/main/CLI.md) —
51Command reference with examples.
53Latest version and updates: https://github.com/jebel-quant/rhiza-cli
54"""
56from importlib.metadata import PackageNotFoundError, version
58try:
59 __version__ = version("rhiza")
60except PackageNotFoundError:
61 # Package is not installed, use a fallback version
62 __version__ = "0.0.0+dev"
64__all__ = ["commands", "models"]