79 lines
2.4 KiB
Markdown
79 lines
2.4 KiB
Markdown
# Veza Monorepo
|
|
|
|
[](https://github.com/okinrev/veza/actions/workflows/ci.yml)
|
|
|
|
**Version cible** : v0.101 (stabilisation en cours). Voir [docs/V0_101_RELEASE_SCOPE.md](docs/V0_101_RELEASE_SCOPE.md) pour le périmètre.
|
|
|
|
## Project Structure
|
|
|
|
- **`apps/web`**: The main frontend application (React + Vite). **This is the single source of truth for the UI.**
|
|
- **`veza-desktop`**: A thin Electron wrapper that loads `apps/web`. It creates the native desktop experience.
|
|
- **`veza-backend-api`**: Main Go API service.
|
|
- **`veza-stream-server`**: Rust streaming server.
|
|
- **`veza-chat-server`**: Rust chat server.
|
|
|
|
## Development Setup (v0.9.3)
|
|
|
|
Prerequisites: Node 20 (see `.nvmrc`), Go, Rust, Docker. Configure `.env` from `.env.example`.
|
|
|
|
```bash
|
|
# Verify environment
|
|
make doctor
|
|
./scripts/validate-env.sh development
|
|
|
|
# Install dependencies
|
|
make install-deps
|
|
|
|
# Option A — Backend in Docker + Web local
|
|
make dev
|
|
|
|
# Option B — All apps local with hot reload (infra from docker-compose.dev.yml)
|
|
make dev-full
|
|
|
|
# Option C — Infra only, then run services manually
|
|
docker compose -f docker-compose.dev.yml up -d
|
|
make dev-web # or make dev-backend-api, make dev-stream-server
|
|
```
|
|
|
|
See [docs/ENV_VARIABLES.md](docs/ENV_VARIABLES.md) for required variables. `make build` builds all services.
|
|
|
|
## Quick Start
|
|
|
|
### Frontend
|
|
```bash
|
|
cd apps/web
|
|
npm install
|
|
npm run dev
|
|
```
|
|
|
|
### Desktop (Optional)
|
|
Requires `apps/web` to be running.
|
|
```bash
|
|
cd veza-desktop
|
|
npm install
|
|
npm run dev
|
|
```
|
|
|
|
## Docker Production
|
|
|
|
**Canonical production compose file**: `docker-compose.prod.yml`
|
|
|
|
```bash
|
|
docker compose -f docker-compose.prod.yml up -d
|
|
```
|
|
|
|
**Deprecated** (use docker-compose.prod.yml):
|
|
- `docker-compose.production.yml` — legacy, may be removed
|
|
- `config/docker/docker-compose.production.yml` — legacy config
|
|
|
|
See `make/config.mk` for COMPOSE_PROD and deployment docs.
|
|
|
|
## CI/CD
|
|
|
|
- **Badge** : CI status above. Set `SLACK_WEBHOOK_URL` (Incoming Webhook) in repo secrets to receive Slack notifications on failure.
|
|
|
|
## Documentation
|
|
|
|
- **[Developer Onboarding](docs/ONBOARDING.md)** — Setup, architecture, conventions, troubleshooting
|
|
- **[Documentation index](docs/README.md)** — Index complet de la documentation
|
|
- See `docs/` for detailed architecture and development guides. Older audits and reports are archived in `docs/archive/`.
|