Aller au contenu principal

Applications web

ChurchApps inclut trois applications web, chacune servant un public et un objectif différent. Elles partagent une fondation technologique commune de React 19, TypeScript et Material-UI 7, mais diffèrent dans leurs outils de build et leurs cibles de déploiement.

Applications en un coup d'œil

ApplicationObjectifFrameworkPort de développement
B1AdminTableau de bord d'administration d'égliseReact 19 + Vite + MUI 75173
B1AppApplication publique des membres de l'égliseNext.js 16 + React 19 + MUI 73301
LessonsAppGestion du contenu des leçonsNext.js 16 + React 193501

Pile technologique partagée

Toutes les trois applications web sont construites avec :

  • TypeScript -- Sécurité de type end-to-end
  • React 19 -- Bibliothèque de composants UI
  • Material-UI 7 -- Système de design et boîte à outils de composants
  • React Query 5 -- Gestion d'état du serveur

Composants partagés

Les applications partagent les composants UI et les utilitaires via la famille de paquets @churchapps/apphelper* :

PaquetObjectif
@churchapps/apphelperComposants React partagés core
@churchapps/apphelper-loginComposants UI d'authentification
@churchapps/apphelper-donationsFormulaires de donation et de donation
@churchapps/apphelper-formsComposants du générateur de formulaires
@churchapps/apphelper-markdownRendu Markdown
@churchapps/apphelper-websiteComposants de site web/CMS
astuce

Pour les détails sur le développement local de ces paquets partagés, voir la documentation AppHelper.

Script postinstall

Chaque application web a un script postinstall qui copie les fichiers de locale et les actifs CSS de @churchapps/apphelper dans le projet. Cela s'exécute automatiquement après npm install.

info

Si les composants semblent non stylisés après l'installation des dépendances, le script postinstall peut ne pas s'être exécuté correctement. Vous pouvez le déclencher manuellement avec npm run postinstall.

Outils de build

Les applications utilisent deux outils de build différents :

  • B1Admin utilise Vite -- un bundler rapide et moderne idéal pour les applications monopage
  • B1App et LessonsApp utilisent Next.js -- fournissant le rendu côté serveur, le routage basé sur les fichiers et les builds de production optimisés