This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
# Contributing
|
||||
|
||||
Ekklesia is being built in verified, reviewable phases. Changes should preserve the dependency
|
||||
boundaries described in [repository-boundaries.md](docs/architecture/repository-boundaries.md).
|
||||
|
||||
Before opening a change, run:
|
||||
|
||||
```bash
|
||||
pnpm verify
|
||||
```
|
||||
|
||||
If Docker is available, also validate the development infrastructure:
|
||||
|
||||
```bash
|
||||
pnpm infrastructure:config
|
||||
```
|
||||
|
||||
## Package rules
|
||||
|
||||
- Use strict TypeScript for production packages.
|
||||
- Expose supported entry points through package `exports`; do not import another package's
|
||||
private source paths.
|
||||
- Use `workspace:` ranges for internal package dependencies.
|
||||
- Keep modules backend-only. Module packages cannot contain React, mobile, stylesheet, or other
|
||||
UI source files.
|
||||
- Put rendering, layout, navigation, accessibility, and all other presentation concerns in a
|
||||
surface.
|
||||
- Add or update tests when changing a contract or architectural rule.
|
||||
- Record major architectural changes in an ADR rather than burying them in an implementation.
|
||||
|
||||
Generated registries and schemas will be produced by later phases. Do not add a manually
|
||||
maintained feature-module registry.
|
||||
Reference in New Issue
Block a user