Under Construction
This site is currently under construction. This page is generated by AI and has not undergone thorough review by a human. There may be hallucination!
In fact, for now only /, /reactive, and the llms.txt are carefully crafted by myself.
Contributing¶
We welcome contributions. This guide covers the workflow and standards.
Setup¶
git clone https://github.com/YOUR_USERNAME/hmr.git
cd hmr
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -e ".[dev]"
Workflow¶
- Branch:
git checkout -b feature/your-name - Make focused changes. Add tests for new behavior.
- Run checks locally:
- (Optional) Build docs to preview:
- Commit with concise, lowercase messages under 80 characters, no trailing period.
- Push and open a PR with a clear description and any related issue links.
Code standards¶
- Target Python 3.12+.
- Follow PEP 8; prefer
pathliboveros.path; use explicit imports. - Type public APIs.
- Keep docs concise; prefer clear names over redundant docstrings.
Testing¶
- Tests in
tests/, files start withtest_. - Use descriptive test names.
- Example:
from reactivity import effect, signal
def test_signal_notifies_on_change():
s = signal(0)
seen = []
effect(lambda: seen.append(s.get()))
s.set(1)
assert seen == [0, 1]
Documentation¶
- Edit
.mdfiles underdocs/. - Build with
zensical buildto preview. - Structure:
docs/getting-started/,docs/reactive/,docs/integrations/,docs/references/.
Common tasks¶
- New primitive: implement in
reactivity/primitives.py, export, add tests, document indocs/reactive/. - Bug fix: add a failing test, fix, verify, describe in PR.
- New integration: add
docs/integrations/<name>.md, link from index, add example underexamples/orpackages/.
Help¶
- Check existing issues and discussions.
- Review source under
reactivity/andpackages/.
License¶
Contributions are licensed under the project's existing license.