alpinux.site.2026/README.md
Cédrix 762f0777e4 docs: corrige typo README + commit final avant migration multi-repo
Ce dépôt devient une archive. Chaque sous-dossier migre vers
son propre dépôt Gitea indépendant (public ou privé).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-03 17:44:13 +02:00

3.2 KiB

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.

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.

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)

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)

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)

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.