Site Alpinux.org en version 2026
Find a file
2026-05-07 20:04:10 +00:00
.obsidian correction typo / ajout de la prestation openOffice / ajout idées presentations: 2026-03-25 12:08:16 2026-03-25 12:08:16 +01:00
admin security: remplace les chemins système hardcodés par des variables d'env 2026-05-03 17:34:38 +02:00
dynamic security: remplace les chemins système hardcodés par des variables d'env 2026-05-03 17:34:38 +02:00
feedback refactor: réorganise le monorepo en sous-dossiers par sous-domaine 2026-05-03 17:20:41 +02:00
home Suppression de la référence mastodon pour alpinux 2026-05-03 17:27:38 +02:00
portail refactor: réorganise le monorepo en sous-dossiers par sous-domaine 2026-05-03 17:20:41 +02:00
static security: retire les configs serveur du dépôt public 2026-05-03 17:25:55 +02:00
wiki typo 2026-05-07 20:04:10 +00:00
.gitignore security: retire les configs serveur du dépôt public 2026-05-03 17:25:55 +02:00
README.md docs: corrige typo README + commit final avant migration multi-repo 2026-05-03 17:44:13 +02:00

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.