43 lines
1.8 KiB
Markdown
43 lines
1.8 KiB
Markdown
Contributing to Eyrie Templates
|
||
|
||
Thanks for your interest in improving Eyrie Templates! This guide explains how to propose changes, report issues, and build the project.
|
||
|
||
Code of Conduct
|
||
By participating, you agree to abide by our Code of Conduct (see CODE_OF_CONDUCT.md).
|
||
|
||
Getting started
|
||
- Fork the repository and create a topic branch off main.
|
||
- Use clear commit messages and keep changes focused.
|
||
- For larger proposals, open an issue first to discuss the approach.
|
||
|
||
Development setup
|
||
- PHP: 8.1+ (proposed minimum; confirm in SPEC.md).
|
||
- Install dependencies via Composer once added to the project.
|
||
- Run linters/formatters if configured.
|
||
|
||
Pull requests
|
||
- Describe the problem and solution clearly; include screenshots for UX-facing changes.
|
||
- Add tests where applicable (parsing, rendering, loaders, escaping, security, components/props).
|
||
- Update documentation (README.md, SPEC.md) as needed.
|
||
- Ensure CI passes before requesting review.
|
||
|
||
Commit message style (suggested)
|
||
- Use the imperative mood: "Add X", "Fix Y".
|
||
- Reference issues: Fixes #123 or Refs #456.
|
||
|
||
Issue reports
|
||
- Include steps to reproduce, expected vs actual behavior, and environment details.
|
||
- For parser/runtime errors, include a minimal template snippet and context data.
|
||
|
||
Security
|
||
- Do not file security issues publicly. See SECURITY.md for private reporting instructions.
|
||
|
||
Style and design principles
|
||
- Security by default: auto-escaping on, minimal use of safe.
|
||
- Predictable behavior: no implicit state; explicit configuration.
|
||
- Maintain a small, coherent core; prefer helpers/filters/components over new syntax.
|
||
- Components are pure render units: no filesystem/network access and no mutation of outer context.
|
||
|
||
License
|
||
By contributing, you agree that your contributions will be licensed under the repository’s LICENSE.
|