Files

3.0 KiB

BOTSU Collaborative Suite

Monorepo de la suite collaborative BOTSU.

Applications

  • apps/client : client Matrix basé sur Cinny v4.12.6

Structure

  • apps/ : applications déployables
  • packages/ : bibliothèques partagées BOTSU
  • docs/ : architecture, décisions et sécurité
  • infra/ : modèles de déploiement et migrations sans secrets
  • scripts/ : vérifications reproductibles du dépôt

Développement local sur Mac avec Codex

Prérequis : macOS, les outils en ligne de commande Apple, Git et nvm. Le dépôt fixe Node.js 24.13.1 dans .nvmrc et .node-version.

xcode-select --install                         # une seule fois si nécessaire
git clone https://git.botsu.net/botsu/botsu.app.git
cd botsu.app
./scripts/bootstrap-macos.sh
npm run dev

Ouvre ensuite http://127.0.0.1:5173. Le client et l'API de présence restent liés à la boucle locale. Les données de développement sont écrites dans .data/, qui est ignoré par Git. Arrête les deux services avec Ctrl-C.

Le bootstrap installe la bonne version de Node via nvm lorsqu'il est déjà présent, crée .env.local, exécute npm ci, puis les tests. Si nvm manque, il affiche le lien d'installation officiel sans modifier automatiquement le profil du shell.

Pour travailler avec Codex, lance simplement codex à la racine du dépôt. AGENTS.md lui fournit la carte du monorepo, les gates de validation et les limites de sécurité (aucun déploiement ni changement d'infrastructure).

Configuration optionnelle : copie et adapte .env.example. Le fichier .env.local reste local et ne doit jamais contenir de secret de production.

Commandes de développement

npm run dev                  # client + API locale
npm test                     # tests de tous les workspaces
npm run typecheck:botsu
npm run typecheck:presence
npm run build:client
npm run check                # toutes les gates BOTSU + build

npm run check vérifie la structure du monorepo, les packages BOTSU, l'API de présence, le client BOTSU et un build complet. Les échecs hérités de typecheck:client et lint:client sont documentés dans docs/adr/0001-development-isolation.md et ne doivent pas être masqués.

Les futurs packages BOTSU auront leurs propres gates vertes dès leur création.

La direction visuelle et ses tokens normatifs sont décrits dans DESIGN.md. Le moteur @botsu/ui permet de régler bordures, rayon, opacité du verre, flou, police et accent tout en conservant des valeurs sûres et accessibles.

Le premier shell applicatif est intégré à Cinny sous /botsu/. Il fournit le catalogue Discussions/Documents/Tableaux/Fichiers/Transferts/Services, un lanceur à origines strictes et les réglages visuels persistants. Voir docs/architecture/application-shell.md.

Dépôts Git

  • origin : dépôt privé BOTSU sur git.botsu.net
  • upstream : source officielle Cinny sur GitHub

Le développement reste isolé de la production jusqu’à validation explicite.