mirror of
https://github.com/mauriceboe/TREK.git
synced 2026-06-30 18:46:00 +00:00
doc: add missing pages in wiki
This commit is contained in:
@@ -0,0 +1,82 @@
|
||||
# Contributing
|
||||
|
||||
Thanks for your interest in contributing to TREK! Here are the guidelines for submitting pull requests.
|
||||
|
||||
## Before You Start
|
||||
|
||||
- **Ask in Discord first** — Before writing any code, pitch your idea in the `#github-pr` channel on our [Discord server](https://discord.gg/NhZBDSd4qW). We'll let you know if the PR is wanted and give direction. PRs without prior approval will be closed
|
||||
- **Check existing issues** — Look for open issues or discussions before starting work
|
||||
- **Target the `dev` branch** — All PRs must be opened against `dev`, not `main`
|
||||
- **One thing per PR** — Keep PRs focused on a single change. Don't bundle unrelated fixes
|
||||
|
||||
## Pull Request Guidelines
|
||||
|
||||
### Code Quality
|
||||
|
||||
- Write clean, readable code that matches the existing style
|
||||
- No unnecessary abstractions or over-engineering
|
||||
- Don't add features beyond what was discussed in the issue
|
||||
- Don't add comments unless the logic isn't self-evident
|
||||
- Don't add error handling for scenarios that can't happen
|
||||
|
||||
### What We Look For
|
||||
|
||||
- **Does it solve the stated problem?** — The PR should match the issue it addresses
|
||||
- **Is it minimal?** — No extra refactoring, no "while I'm here" changes
|
||||
- **Does it break anything?** — Breaking changes are not acceptable
|
||||
- **Is the code clean?** — Consistent style, no debug logs, no dead code
|
||||
|
||||
### Commit Messages
|
||||
|
||||
Use conventional commits:
|
||||
```
|
||||
fix(component): short description of what was fixed
|
||||
feat(component): short description of new feature
|
||||
```
|
||||
|
||||
### PR Description
|
||||
|
||||
Include:
|
||||
1. **Summary** — What does this PR do? (1-3 bullet points)
|
||||
2. **Test plan** — How was this tested?
|
||||
3. **Related issue** — Link the issue (e.g. `Fixes #123`)
|
||||
|
||||
### What Will Get Your PR Closed
|
||||
|
||||
- PRs that weren't discussed and approved in `#github-pr` on Discord first
|
||||
- PRs that add unnecessary complexity (e.g. a redo button when undo already exists)
|
||||
- PRs with breaking changes
|
||||
- PRs that change code style or formatting across unrelated files
|
||||
- PRs that add dependencies without justification
|
||||
|
||||
## Development Setup
|
||||
|
||||
```bash
|
||||
git clone https://github.com/mauriceboe/TREK.git
|
||||
cd TREK
|
||||
|
||||
# Server
|
||||
cd server
|
||||
npm install
|
||||
npm run dev
|
||||
|
||||
# Client (separate terminal)
|
||||
cd client
|
||||
npm install
|
||||
npm run dev
|
||||
```
|
||||
|
||||
- Server runs on `http://localhost:3001`
|
||||
- Client runs on `http://localhost:5173` (with proxy to server)
|
||||
|
||||
## Tech Stack
|
||||
|
||||
| Layer | Technology |
|
||||
|---|---|
|
||||
| Frontend | React 18, TypeScript, Zustand, Leaflet, Tailwind CSS, Vite |
|
||||
| Backend | Express, TypeScript, better-sqlite3 |
|
||||
| Real-time | WebSocket (ws) |
|
||||
| Database | SQLite with WAL mode |
|
||||
| Auth | JWT (HS256), bcrypt, TOTP MFA, OIDC |
|
||||
| Maps | Leaflet + react-leaflet, OSRM, Nominatim, CartoDB tiles |
|
||||
| i18n | 13 languages (EN, DE, ES, FR, NL, IT, PT-BR, CS, PL, HU, RU, ZH, AR) |
|
||||
Reference in New Issue
Block a user