Synaplan
开源 AI 软件平台,面向企业:自托管 AI 代理,符合 GDPR 的聊天机器人小部件,RAG 知识库,WhatsApp 与 Outlook AI,MCP,多模型路由。支持 Docker、Kubernetes 或在 Germ 托管。
AI 翻译
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
Solution ultra-légère de repas d'entreprise en 2 clics pour le Sénégal.
Développé selon le sprint fast-track 10 jours pour les 2 entreprises pilotes en essai gratuit.
PWA Mobile Employé (/p/[token]) :
localStorage).Espace RH (/rh) :
Nom, Téléphone), bouton direct de partage WhatsApp.Passerelle Traiteur (/resto/[token]) :
# 1. Cloner ou ouvrir le projet
cd "cantine Pro"
# 2. Installer les dépendances
npm install
# 3. Lancer le serveur de développement
npm run dev
# 4. Ouvrir dans le navigateur
# http://localhost:3000
supabase/schema.sql.companies, employes, menus_du_jour, commandes) et la vue d'agrégation..env.local :NEXT_PUBLIC_SUPABASE_URL=https://votre-id.supabase.co
NEXT_PUBLIC_SUPABASE_ANON_KEY=votre-cle-anon
SUPABASE_SERVICE_ROLE_KEY=votre-cle-service-role
NEXT_PUBLIC_APP_URL=http://localhost:3000
L'Espace RH /rh est protégé par un code d'accès par entreprise (cookie signé, 30 jours).
Une entreprise s'inscrit seule sur /inscription (14 jours d'essai, offre Starter / Pro / Business) et se
connecte ensuite avec son identifiant ou son e-mail. Pour ouvrir une entreprise à la main, dans l'éditeur SQL Supabase :
INSERT INTO public.companies (nom, slug, heure_ouverture_vote, heure_limite_vote, rh_code_hash)
VALUES ('Nom Entreprise', 'nom-entreprise', '08:00', '11:10',
encode(digest('CODE-SECRET-RH', 'sha256'), 'hex'))
RETURNING id;
Le RH se connecte sur /rh/login avec le slug + le code, puis ajoute ses restaurants partenaires
dans l'onglet Restaurants (nom, WhatsApp, heure de livraison). Chaque restaurant a son propre lien
de confirmation /resto/<token>.
Base de démo : slug pilote-thies, code pilote-thies-2026 (à changer avant le go-live).
Pour le pilote, rien n'est envoyé automatiquement : le RH déclenche chaque envoi depuis l'Espace RH.
/resto/<token> ; à 11h30, le
l'Espace RH signale les restaurants qui ont reçu leur récap sans le confirmer.Envoi automatique (plus tard) : la route
/api/cron/clotureclôture et envoie les récaps via l'API WhatsApp Cloud ou un webhook. Pour l'activer, ajoutez dansvercel.json"crons": [{ "path": "/api/cron/cloture", "schedule": "10 11 * * 1-5" }](ou appelez-la depuis QStash / cron-job.org avecAuthorization: Bearer CRON_SECRET).
Variables d'environnement : voir .env.local.example.
Import Excel (.xlsx) ou CSV : colonnes Nom, Prénom, Téléphone, Service (détection automatique des en-têtes, doublons ignorés, numéros à 9 chiffres complétés en +221).
Menus de la semaine (lundi → vendredi) avec « Dupliquer la semaine précédente ».
Modification manuelle par le RH d'une commande (y compris après 11h10 et après la clôture) tant que le restaurant concerné n'a pas confirmé. Si le récap avait déjà été envoyé, il est recalculé et repasse « à renvoyer ». Une fois le restaurant confirmé, ses commandes sont verrouillées.
Alerte 11h30 dans l'Espace RH si le restaurant n'a pas confirmé, avec bouton d'appel.
Compte à rebours sur la PWA employé, verrouillage automatique à l'heure limite, heure d'enregistrement du choix.
Export Excel paie (/rh/export?mois=AAAA-MM&format=xlsx) : onglets Paie par service, Récap services, Facture traiteur, Détail jour par jour.
Onglet Paramètres : heures d'ouverture et de fin des commandes, jours de travail (lundi → dimanche, par défaut lundi → vendredi : la grille des menus, la duplication de semaine et les commandes des salariés les suivent), coordonnées, changement du code RH, état de l'abonnement.
Onglet Historique & Factures : historique jour par jour (détail par collaborateur), facture PDF du mois (/rh/facture?mois=AAAA-MM : synthèse, une facture par restaurant avec zone signature et cachet, ventilation par service), exports Excel et CSV.
Onglet Statistiques (DG / DAF) : dépense du mois, évolution sur 6 mois, coût moyen, plats les plus commandés, taux de participation par service.
PWA installable : bannière « Ajouter à l'écran d'accueil » (bouton sur Android, mode d'emploi sur iPhone) ; l'icône rouvre directement la page du salarié. Hors-ligne : un choix fait sans réseau est gardé dans le téléphone et envoyé au retour de la connexion (refusé par le serveur si l'heure limite est passée entre-temps).
/admin (code SUPERADMIN_CODE, 12 caractères min.) : liste des entreprises, MRR, encaissé du mois, taux de conversion, changement d'offre et de statut, prolongation d'essai, enregistrement d'un paiement Wave (prolonge l'abonnement de N mois).WAVE_NUMERO_PAIEMENT (optionnel) : numéro Wave affiché aux RH dans l'onglet Paramètres.Après mise à jour, relancez
supabase/schema.sql(ajouteemployes.service,commandes.modifie_par_rh, la tablerestaurants, l'heure d'ouverture des commandes, les colonnes d'abonnement et la tablepaiements; l'ancien traiteur unique devient automatiquement le premier restaurant).
正在加载完整 README。
查看完整 README ↗