# org.alpinux.owni — Monorepo Alpinux Dépôt unique de l'association **Alpinux** (LUG de Savoie). Gitea : https://gitea.alpinux.org/alpinux.cedrica5l/alpinux.site.2026 --- ## Structure Chaque sous-dossier correspond à un sous-domaine indépendant de `alpinux.org`. ``` org.alpinux.owni/ ├── wiki/ → wiki.alpinux.org MkDocs Material (documentation publique) ├── home/ → alpinux.org Page d'accueil statique ├── dynamic/ → dynamic.alpinux.org Flask — quiz et jeux (public + membres) ├── admin/ → admin.alpinux.org Flask — interface d'administration ├── static/ → static.alpinux.org CDN assets : logos, favicons, images OG ├── portail/ → portail.alpinux.org Portail membres (ISPConfig, Nextcloud…) └── feedback/ → feedback.alpinux.org Formulaire de retours (à construire) ``` Les configurations serveur (Apache, systemd) sont gérées, par ISPConfig à l'adresse https://owni.alpinux.org:8080, séparément et ne sont **pas versionnées**. --- ## Projets indépendants, liés par l'infrastructure Chaque projet : - utilise **AlpID** (SSO Keycloak) pour l'authentification quand nécessaire - a son propre environnement Python (`venv/`) et son fichier `.env` (non versionés) Les projets sont liés par le SSO partagé, le serveur commun, et l'identité visuelle définie dans https://wiki.alpinux.org/communication/. --- ## Convention git et Claude > **Travailler dans le sous-dossier du projet concerné**, pas à la racine du dépôt. ```bash cd wiki/ # pour modifier le wiki ou MkDocs cd dynamic/ # pour modifier l'appli quiz cd admin/ # pour modifier l'interface admin cd static/ # pour modifier les CDN assets cd portail/ # pour modifier le portail membres cd feedback/ # pour modifier le formulaire de retour ``` De même, lorsqu'on utilise **Claude Code** (ou tout autre outil IA) : lancer Claude depuis le sous-dossier du projet pour que le contexte soit limité à ce projet. ```bash cd ~/Projects/org.alpinux.owni/wiki && claude cd ~/Projects/org.alpinux.owni/admin && claude cd ~/Projects/org.alpinux.owni/dynamic && claude cd ~/Projects/org.alpinux.owni/static && claude cd ~/Projects/org.alpinux.owni/portail && claude cd ~/Projects/org.alpinux.owni/feedback && claude ``` --- ## Démarrage rapide par projet ### wiki (wiki.alpinux.org) ```bash cd wiki python3 scripts/build-assets.py # génère docs/assets/alpinux-logo.png pip install mkdocs-material mkdocs serve # dev local mkdocs build --strict # build de prod dans site/ ``` ### dynamic (dynamic.alpinux.org) ```bash cd dynamic python3 -m venv venv && source venv/bin/activate pip install -r requirements.txt cp .env.example .env && nano .env # renseigner les clés AlpID flask run ``` ### admin (admin.alpinux.org) ```bash cd admin python3 -m venv venv && source venv/bin/activate pip install -r requirements.txt cp .env.example .env && nano .env # renseigner les clés AlpID flask run ``` --- ## Déploiement serveur Voir `wiki/docs/technique/` pour la documentation. Les fichiers de configuration serveur sont conservés localement hors dépôt.