Zum Hauptinhalt springen

Web-Apps

ChurchApps enthält drei Web-Anwendungen, die jeweils eine andere Zielgruppe und einen anderen Zweck bedienen. Sie teilen sich eine allgemeine Tech-Foundation aus React 19, TypeScript und Material-UI 7, unterscheiden sich jedoch in ihren Build-Tools und Deployment-Zielen.

Anwendungen auf einen Blick

AppZweckFrameworkDev-Port
B1AdminKirchenverwaltungs-DashboardReact 19 + Vite + MUI 75173
B1AppÖffentliche Gemeinde-Mitglieder-AppNext.js 16 + React 19 + MUI 73301
LessonsAppLesson-Content-ManagementNext.js 16 + React 193501

Gemeinsamer Tech-Stack

Alle drei Web-Apps werden mit folgendem gebaut:

  • TypeScript — End-to-End-Type-Sicherheit
  • React 19 — UI-Komponentenbibliothek
  • Material-UI 7 — Design-System und Komponentenbaukasten
  • React Query 5 — Server-State-Management

Gemeinsame Komponenten

Die Apps teilen sich UI-Komponenten und Utilities durch die @churchapps/apphelper*-Familie von Packages:

PackageZweck
@churchapps/apphelperCore gemeinsame React-Komponenten
@churchapps/apphelper-loginAuthentifizierungs-UI-Komponenten
@churchapps/apphelper-donationsSpenden- und Spendenformulare
@churchapps/apphelper-formsForm-Builder-Komponenten
@churchapps/apphelper-markdownMarkdown-Rendering
@churchapps/apphelper-websiteWebsite/CMS-Komponenten
Tipp

Für Details zur Entwicklung dieser gemeinsamen Packages lokal, siehe AppHelper-Dokumentation.

Postinstall-Skript

Jede Web-App hat ein postinstall-Skript, das Locale-Dateien und CSS-Assets von @churchapps/apphelper ins Projekt kopiert. Dies läuft automatisch nach npm install.

Info

Wenn Komponenten nach der Installation von Abhängigkeiten unstyled aussehen, ist das postinstall-Skript möglicherweise nicht korrekt gelaufen. Sie können es manuell mit npm run postinstall auslösen.

Build-Tools

Die Apps nutzen zwei verschiedene Build-Tools:

  • B1Admin nutzt Vite — ein schneller, moderner Bundler, ideal für Single-Page-Anwendungen
  • B1App und LessonsApp nutzen Next.js — bieten Server-Side-Rendering, File-Based-Routing und optimierte Production-Builds