Retroway - VEC canonical Forgejo repository
  • JavaScript 51.4%
  • TypeScript 23.6%
  • HTML 22.8%
  • Shell 1.3%
  • CSS 0.9%
Find a file
2026-05-08 08:50:57 -04:00
apps Update Retroway TV admin data flow 2026-05-08 08:50:57 -04:00
docker/nginx feat: consolidate retroway monorepo updates 2026-05-01 15:28:04 -04:00
packages chore: initialize monorepo scaffold 2026-04-17 15:45:22 -04:00
scripts feat: consolidate retroway monorepo updates 2026-05-01 15:28:04 -04:00
.gitignore feat: consolidate retroway monorepo updates 2026-05-01 15:28:04 -04:00
.nvmrc chore: initialize monorepo scaffold 2026-04-17 15:45:22 -04:00
.prettierrc.json chore: initialize monorepo scaffold 2026-04-17 15:45:22 -04:00
deploy feat: consolidate retroway monorepo updates 2026-05-01 15:28:04 -04:00
docker-compose.nginx.ssl.yml feat: consolidate retroway monorepo updates 2026-05-01 15:28:04 -04:00
docker-compose.nginx.yml feat: add dockerized nginx dev proxy 2026-04-17 16:15:15 -04:00
package.json feat: consolidate retroway monorepo updates 2026-05-01 15:28:04 -04:00
pnpm-lock.yaml feat: consolidate retroway monorepo updates 2026-05-01 15:28:04 -04:00
pnpm-workspace.yaml chore: initialize monorepo scaffold 2026-04-17 15:45:22 -04:00
README.md feat: consolidate retroway monorepo updates 2026-05-01 15:28:04 -04:00
turbo.json chore: initialize monorepo scaffold 2026-04-17 15:45:22 -04:00

Retroway Monorepo

Monorepo pnpm + Turborepo pour les projets Retroway.

Structure

  • apps/retroway-bbs: application BBS avec backend Node et frontend Vite existants
  • apps/retroway-cards: application NestJS
  • apps/retroway-tv: application Vite + React
  • packages/typescript-config: bases TypeScript partagees
  • packages/eslint-config: bases ESLint partagees
  • packages/ui: surface UI React reutilisable

Commandes racine

  • pnpm install
  • pnpm dev
  • pnpm proxy:up
  • pnpm proxy:down
  • pnpm proxy:logs
  • pnpm build
  • pnpm lint
  • pnpm test
  • pnpm typecheck

Deploiement

Le monorepo expose maintenant un point d'entree unique:

sh ./deploy --all

Flux disponibles:

  • sh ./deploy --postgres: deploie uniquement PostgreSQL pour retroway-bbs
  • sh ./deploy --bbs: deploie les JSON runtime, l'admin et le backend retroway-bbs
  • sh ./deploy --tv: deploie retroway-tv
  • sh ./deploy --cards: deploie retroway-cards
  • sh ./deploy --all: orchestre postgres + bbs + tv + cards

Variables d'environnement principales:

  • REMOTE_HOST
  • BBS_BACKEND_ENV_FILE
  • BBS_REMOTE_BACKEND_DIR
  • BBS_REMOTE_ADMIN_DIR
  • BBS_REMOTE_SERVICE
  • TV_REMOTE_DIR
  • CARDS_ENV_FILE
  • CARDS_REMOTE_DIR
  • CARDS_REMOTE_SERVICE

Commandes ciblees

  • pnpm dev:bbs
  • pnpm dev:cards
  • pnpm dev:tv
  • pnpm build:bbs
  • pnpm build:cards
  • pnpm build:tv

Conventions

  • Les workspaces sont nommes avec le prefixe @retroway/.
  • Les imports inter-packages doivent passer par les noms de workspace, pas par des chemins relatifs transverses.
  • Le premier objectif est une migration executable. Les convergences de config plus profondes se font ensuite, par etape.

Etat actuel

Le socle monorepo est initialise. Les trois repos applicatifs sont importes sous apps/ avec historique Git preserve.

Si node ou pnpm ne sont pas disponibles sur la machine, installer l'outillage avant d'executer les commandes racine.

Nginx local

Le repo inclut une stack nginx Docker de dev pour reproduire le routage type rag3 sur un seul port public local.

Demarrage:

pnpm dev

Endpoints locaux:

  • http://localhost:6400/ vers retroway-tv
  • http://localhost:6400/admin/ vers l'admin retroway-bbs
  • http://localhost:6400/api/ vers l'API retroway-bbs
  • ws://localhost:6400/ws vers le viewer bridge retroway-bbs

La config est dans docker-compose.nginx.yml et docker/nginx/dev.conf.

pnpm dev demarre maintenant automatiquement le proxy nginx Docker avant les serveurs Turbo. Pour l'arreter apres usage: pnpm proxy:down.

SSL local

Un mode HTTPS local dedie est disponible sans modifier le mode HTTP existant.

Preparation du certificat:

pnpm proxy:certs

Demarrage en HTTPS:

pnpm dev:ssl

Endpoints HTTPS locaux:

  • https://localhost:6443/ vers retroway-tv
  • https://localhost:6443/admin/ vers l'admin retroway-bbs
  • https://localhost:6443/api/ vers l'API retroway-bbs
  • wss://localhost:6443/ws vers le viewer bridge retroway-bbs

Le certificat est auto-signe et stocke dans docker/nginx/certs/. Le navigateur affichera un avertissement de confiance tant que le certificat n'est pas ajoute au trousseau local.