Synaplan
開源 AI 平台,供企業使用:自行託管的 AI 代理、符合 GDPR 的聊天機器人小工具、RAG 知識庫、WhatsApp 與 Outlook AI、MCP、多模型路由。Docker、Kubernetes 或託管於 Germ
AI 翻譯
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證Application de gestion pour une association de parents d'élèves : événements, bénévoles, adhérents, comptabilité, documents et serveur MCP pour Claude.ai
翻譯準備中
取自儲存庫 README
正在載入完整 README。
檢視完整 README ↗Application de gestion pour une APEL (association de parents d’élèves de l’enseignement libre) ou toute association scolaire équivalente. Elle centralise le travail de l’équipe, de la préparation d’un événement jusqu’au suivi administratif et financier.
Le dépôt ne contient aucune donnée d’association : identité, coordonnées, numéro RNA, événements, adhérents et écritures comptables vivent uniquement dans la base de l’instance déployée et se saisissent depuis l’application.
Docker Engine et Docker Compose sont les seuls prérequis :
git clone https://github.com/flocom/APEL-manager.git
cd APEL-manager
docker compose up --build -d
| Service | Adresse locale |
|---|---|
| Application | http://localhost:3000 |
Boîte e-mail Mailpit (profil mailpit) | http://localhost:8025 |
| État de santé | http://localhost:3000/api/health |
Au premier lancement, les secrets internes sont générés, PostgreSQL est
initialisé et les migrations sont appliquées automatiquement. Le premier
compte créé depuis /register devient administrateur. Ensuite, chaque
demande se confirme depuis le lien reçu par e-mail, puis reste en attente —
elle ne voit rien — jusqu’à ce qu’un administrateur la valide dans
Utilisateurs. L’administrateur peut ensuite ouvrir
Configuration pour renseigner l’identité officielle (nom de l’association,
établissement, e-mail de contact, numéro RNA), les fenêtres de rappel, Telegram
et le fournisseur e-mail.
Les données restent conservées après un docker compose down. Pour arrêter la
stack :
docker compose down
Le logo se règle dans Tableau de bord → Configuration → Logo : importez une image PNG, JPEG ou WebP, elle remplace aussitôt le logo neutre sur le site public, dans l’espace de travail et dans l’onglet du navigateur. Le fichier est conservé dans le volume des pièces jointes, jamais dans le dépôt.
Il figure aussi en tête des e-mails, converti en PNG pour que tous les clients
de messagerie l’affichent (Outlook ignore le WebP). Il faut pour cela que
APP_URL soit renseignée : l’image est chargée depuis le site, et une adresse
relative ne mène nulle part depuis une boîte de réception. Sans logo, les
e-mails gardent leur en-tête habituel.
| Conteneur | Rôle |
|---|---|
app | Application Next.js 15 et migrations Drizzle |
db | PostgreSQL 16 avec stockage persistant |
scheduler | Rappels quotidiens et nettoyage des imports abandonnés |
mailpit | Facultatif : serveur SMTP d’essai et boîte de contrôle, sur la machine hôte seulement |
caddy | Reverse proxy HTTP/HTTPS et certificats TLS automatiques |
Des volumes dédiés conservent la base, les pièces jointes, les secrets générés,
les e-mails locaux et les certificats. La procédure de configuration, de
sauvegarde et de mise en production est détaillée dans
docs/DOCKER.md.
Copiez le modèle unique, renseignez les paramètres d’infrastructure, puis
démarrez l’instance. Docker Compose charge automatiquement .env :
cp .env.example .env
docker compose up --build -d
Caddy peut obtenir automatiquement un certificat TLS dès qu’un domaine public
pointe vers le serveur. Le choix de Resend ou d’un relais SMTP, ses
identifiants et l’expéditeur se règlent exclusivement dans Tableau de bord →
Configuration. Mailpit reste disponible pour les essais locaux : démarrez-le
avec docker compose --profile mailpit up -d, puis sélectionnez SMTP avec
l’hôte mailpit et le port 1025. Il capture les messages sans les distribuer
et affiche leur contenu, liens de réinitialisation de mot de passe compris :
jamais en production. Hors relais local, l’envoi SMTP exige une connexion
chiffrée.
Installation antérieure : Mailpit démarrait autrefois d’office, avec une
interface ouverte à tout le réseau sur le port 8025. Ni git pull ni
docker compose up -d n’arrêtent cet ancien conteneur, et l’application
continue d’y relayer son courrier si elle était réglée ainsi. Vérifiez-le avec
docker ps --filter name=mailpit --format '{{.Names}} {{.Ports}}' : la
démarche pour le retirer ou le republier sur la seule machine hôte figure dans
docs/DOCKER.md, partie Courrier, sous « Installation
antérieure ».
Les images publiées sont signées : docs/DOCKER.md explique comment figer une
version par son empreinte et vérifier sa signature plutôt que d’installer
automatiquement chaque nouvelle image.
Le .env ne contient que ce dont l’application a besoin avant de pouvoir lire
la base : URL publique, accès PostgreSQL, secrets de sessions/chiffrement,
stockage, orchestration et ports. L’identité, les rappels, Telegram et la
messagerie se règlent dans l’application. Les mêmes noms d’environnement sont
utilisés en exécution directe, dans Docker et chez un hébergeur.
Claude.ai doit joindre une URL HTTPS publique. Le connecteur personnalisé utilise alors l’adresse :
https://votre-domaine.fr/api/mcp
Consultez docs/MCP_CLAUDE.md pour l’authentification et
la connexion du serveur MCP.
npm ci
cp .env.example .env
npm run db:migrate
npm run dev
Renseignez au minimum DATABASE_URL, AUTH_SECRET et
SETTINGS_ENCRYPTION_KEY dans .env. L’application accepte toute base
PostgreSQL compatible ; le guide Vercel utilise Neon.
Ne versionnez jamais de données réelles : dumps de base, exports d’adhérents, plannings internes, pièces comptables ou fichiers
.envrenseignés.