Project
Contributing
Contributions should keep Demetria small, predictable, accessible, and independent of application frameworks.
Local setup
git clone https://github.com/gustavoaroberto/demetria.git
cd demetria
npm ci
npm run check
Development and CI target Node.js 24 and npm. Read the repository contribution guide and agent instructions before changing behavior.
Quality gates
npm run lint
npm run typecheck
npm test
npm run build
npm run docs:check
npm run test:a11y
npm pack --dry-run
Use Conventional Commits. Add focused tests for behavior changes and keep README, website, and examples synchronized with the actual exported API.
Design principles
- Zero runtime dependencies unless there is a compelling, documented reason.
- Semantic browser APIs and accessible behavior from the first implementation.
- A narrow headless form-flow engine—not a full form framework.
- Strict TypeScript and explicit public boundaries.
- No claims of standards conformance without appropriate verification.
Before opening a pull request, review the complete CONTRIBUTING.md.