Files
punimtag/CONTRIBUTING.md
T
ilia 655a12963b Humanize README and entry docs for clearer tone
Replace marketing feature walls with a plain install/config README and
short entry guides per project-template docs/writing-docs.md.
2026-08-05 15:33:09 -04:00

41 lines
1.2 KiB
Markdown

# Contributing
## Setup
- Python 3.12+, Node 18+, PostgreSQL, Redis
- Follow the root [README](README.md) (`./install.sh`, `.env` from `.env.example`)
- Activate the venv before backend work: `source venv/bin/activate`
## Workflow
1. Branch from `main` / `master` for the change.
2. Keep commits focused; reference issues when you have them.
3. Run `npm run ci:local` before opening a PR.
4. Update docs when behavior or setup steps change.
## Coding notes
- Backend: FastAPI + SQLAlchemy under `backend/`; prefer typed Pydantic models for API I/O.
- Admin: React + Vite + TypeScript in `admin-frontend/`.
- Viewer: Next.js + Prisma in `viewer-frontend/`; regenerate Prisma clients after schema edits.
- Do not commit secrets, real `.env` files, or production photo paths with PII.
## Tests
```bash
npm run test:backend
npm run lint:python
npm run lint:all
npm run test:e2e # needs services; see e2e/README.md
```
## Pull requests
- Describe what changed and how you verified it.
- CI lint/test gates are hard; do not mute them with `|| true`.
- Screenshots help for UI changes.
## Project layout
See the root README. Deeper design notes: [docs/ARCHITECTURE.md](docs/ARCHITECTURE.md).