Replace marketing feature walls with a plain install/config README and short entry guides per project-template docs/writing-docs.md.
41 lines
1.2 KiB
Markdown
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).
|