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.
|