π©βπ» Developer Guide
Welcome to the Wurzel Developer Guide! This document provides the essential steps and best practices to help you contribute effectively to the Wurzel project.
π Getting Started
To install Wurzel with all necessary dependencies, run:
make install
This will install the core library along with all optional extras used for development, testing, and documentation.
π§Ό Code Quality: Linting
Wurzel uses pre-commit hooks to enforce consistent code quality and formatting.
β Set Up Pre-commit Hooks
To activate the hooks:
pre-commit install
π§ͺ Run Linting Manually
You can also trigger the linting process manually using:
make lint
This runs all configured linters and formatters across the codebase.
π§ͺ Running Tests
Before submitting your changes, make sure all tests pass:
make test
This runs the full test suite and ensures your changes donβt break existing functionality.
π Commit Strategy
We maintain a clean and readable Git history by squashing all commits when merging into the main branch.
π Commit Types
- Breaking Changes: For changes that are not backward-compatible.
- Use the tag:
breaking
- Use the tag:
- Features: For new features or enhancements that are backward-compatible.
- Use the tags:
feat
,feature
- Use the tags:
- Fixes and Improvements: For bug fixes, performance improvements, or small patches.
- Use the tags:
fix
,perf
,hotfix
,patch
- Use the tags:
Allowed Tags
To ensure consistency, the following tags are allowed in commit messages:
- feat
, feature
, fix
, hotfix
, perf
, patch
, build
, chore
, ci
, docs
, style
, refactor
, ref
, test
Commit Message Format
Commit messages should follow this structure:
<tag>: <short description>
<longer description (optional)>
Adhering to this format ensures clarity and improves the readability of the project's history.