A Git hooks manager and commit message linter for automating development workflows
Project description
Thira - Git Hooks Manager
Thira is a Git hooks manager and commit message linter that helps you maintain consistent commit messages and automate your Git workflows.
Features
- Easy Git hooks management: Install, update, and remove Git hooks with a single command. Supports all standard Git hook events and custom hooks directories.
- Conventional commit message validation: Enforces customizable commit message rules based on the Conventional Commits standard, including type, scope, and subject/body length.
- Custom script automation: Define and run custom scripts for any workflow, with support for sequential or parallel execution, environment variables, and working directories.
- Flexible YAML configuration: Manage hooks, scripts, and linting rules in a single, human-readable
hooks.yamlfile. - Cross-platform support: Works seamlessly on macOS, Linux, and Windows.
- Colorful and informative CLI: User-friendly command-line interface with colored output, helpful error messages, and command trees.
- Auto-installation and validation: Automatically installs hooks and validates configuration integrity for a smooth developer experience.
- Real-time terminal UI: Displays live output and progress for long-running scripts and hook executions.
- Integrates with Cargo, npm, and pip: Installable via multiple package managers for easy adoption in any workflow.
Documentation
Our documentation is split into several sections for easier navigation:
- Installation Guide - How to install and set up Thira
- Basic Usage - Getting started with Thira
- Configuration Guide - Complete reference for hooks.yaml configuration
- Hook Management - Managing Git hooks
- Script Management - Creating and managing custom scripts
- Commit Message Guidelines - How to write valid commit messages
Quick Start
# Install with installer
curl -sSL https://raw.githubusercontent.com/ervan0707/thira/main/install.sh | bash
# Install with Cargo
cargo install thira
# Install with NPM
npm install -g thira
# Install with pip
pip install thira
# Install with Nix (flakes)
nix profile install github:ervan0707/thira
# Or run directly without installing
nix run github:ervan0707/thira
# Initialize configuration
thira hooks init
# Install Git hooks
thira hooks install
Your Git hooks are now managed by Thira! Check out the Basic Usage guide for more details.
Project Status
This project is under active development. Feel free to open issues and submit pull requests.
License
This project is licensed under the MIT License – see the LICENSE file for details.
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
Built Distributions
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 thira-0.2.1.tar.gz.
File metadata
- Download URL: thira-0.2.1.tar.gz
- Upload date:
- Size: 37.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c3785d5f41d80eeb687a887690c99bd0cb04ddd2fc7ed1a2e732cee4e9b21a33
|
|
| MD5 |
19f8a28f6e3a01a1cd5e71d1f4313dac
|
|
| BLAKE2b-256 |
cd2f4d44ec7b247fbffab6acba32525cf15dc8d48eb684274278a9187d45c662
|
File details
Details for the file thira-0.2.1-py3-none-win_arm64.whl.
File metadata
- Download URL: thira-0.2.1-py3-none-win_arm64.whl
- Upload date:
- Size: 1.2 MB
- Tags: Python 3, Windows ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8818ddbf9e3c75b6c51bd4bc0d08c132541eefc1a65a4f9e219894be51137693
|
|
| MD5 |
1a889b51b115bc4a57beda6beef05211
|
|
| BLAKE2b-256 |
f54c0efce3c886890c6fce54658a8ec531390e21738d5652cf24edf76d5c1bb3
|
File details
Details for the file thira-0.2.1-py3-none-win_amd64.whl.
File metadata
- Download URL: thira-0.2.1-py3-none-win_amd64.whl
- Upload date:
- Size: 1.3 MB
- Tags: Python 3, Windows x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a658e79a5d0e20ef4094cb8e5c55aaaf1079e6a999b938fd32cb0f9274bb9629
|
|
| MD5 |
f89a6f7cd68fdcc071e595fe49ef0465
|
|
| BLAKE2b-256 |
d05c41abe4c3c43a475937ef3ba0b726762efc4c12bde2dc61971b49b1aaaf1c
|
File details
Details for the file thira-0.2.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: thira-0.2.1-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 1.4 MB
- Tags: Python 3, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8104b29819b69217c22c2b2f4b0a13db99bdd862df3aa52a29c085bc5e565f7f
|
|
| MD5 |
472ae5d3124108301b64df77c856bf3d
|
|
| BLAKE2b-256 |
98c2fbb57641ffcc2a2977089cc88fad825d2b5757353105a18673b2c92d31ca
|
File details
Details for the file thira-0.2.1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.
File metadata
- Download URL: thira-0.2.1-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
- Upload date:
- Size: 1.3 MB
- Tags: Python 3, manylinux: glibc 2.17+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
277aeb3a18288f5c8d70ddf4b54c4b2a9e971fe1a6f8c6c40f13c8e632300477
|
|
| MD5 |
19fd57fc85f78d40438c0c9204a9d556
|
|
| BLAKE2b-256 |
91a991d8db20e3bd2f4612e44dd810b3501bbfa3426a1f950a3f198133e9579a
|
File details
Details for the file thira-0.2.1-py3-none-macosx_11_0_arm64.whl.
File metadata
- Download URL: thira-0.2.1-py3-none-macosx_11_0_arm64.whl
- Upload date:
- Size: 1.3 MB
- Tags: Python 3, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
db3c8e9d401526d4ad56eb1d8af4f6b57b432ebb4307ba39831a534e2f92e2e4
|
|
| MD5 |
f0784deb5a3073ad84af5885db25f6cb
|
|
| BLAKE2b-256 |
e4aebaa8f9dbedec3076c17f16efcd4bfd54aa61a4f21d96350c3f51deaaec6a
|
File details
Details for the file thira-0.2.1-py3-none-macosx_10_12_x86_64.whl.
File metadata
- Download URL: thira-0.2.1-py3-none-macosx_10_12_x86_64.whl
- Upload date:
- Size: 1.4 MB
- Tags: Python 3, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.12.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
592ae43fd331d3cd6b6c6d520a6b745ec97559f0a064d035119ecce944cc6573
|
|
| MD5 |
2b3002a19f5fe7ec8f2e705865860e2a
|
|
| BLAKE2b-256 |
c4cec0bef93cdae36ee6b8e81bcf4f3a99363b1a0b542cc8f3f926a979c2b113
|