Zum Hauptinhalt springen

Projekt-Übersicht

ChurchApps umfasst etwa 20 unabhängige Repositories, die alle unter der ChurchApps GitHub-Organisation veröffentlicht werden. Diese Seite bietet einen vollständigen Bestand aller Projekte, organisiert nach Kategorie, zusammen mit ihren Frameworks, Ports und Beziehungen.

Vor dem Start

  • Installieren Sie die Voraussetzungen für die Projekt-Kategorie, die Sie bearbeiten möchten

Backend-APIs

Alle APIs werden mit Node.js, Express und TypeScript gebaut und sind als AWS Lambda via Serverless Framework deployed.

ProjektZweckDev-PortDatenbank
ApiCore modularer Monolith, der Membership, Attendance, Content, Giving, Messaging und Doing abdeckt8084Separate MySQL-Datenbank pro Modul (6 insgesamt)
LessonsApiLessons.church Backend--Einzelne lessons MySQL-Datenbank
AskApiAI-Query-Werkzeug powered by OpenAI----
Info

Das Core-Api-Projekt ist ein modularer Monolith. Jedes Modul (Membership, Attendance, Content, Giving, Messaging, Doing) hat seine eigene Datenbank und ist unter einem Unterpfad wie /membership oder /giving zugänglich. In Production werden diese als separate Lambda-Funktionen hinter API Gateway freigelegt.

Web-Apps

ProjektFrameworkDev-PortZweck
B1AdminReact 19 + Vite + MUI 75173Kirchenverwaltungs-Dashboard
B1AppNext.js 16 + React 19 + MUI 73301Öffentliche Gemeinde-Mitglieder-App
LessonsAppNext.js 163501Lessons.church Frontend
B1TransferReact + Vite--Daten-Import/Export-Werkzeug
BrochureSitesStatisch--Statische Kirchen-Brochure-Websites

Mobile-Apps

Alle Mobile-Apps nutzen React Native mit Expo.

ProjektZweckWichtige Versionen
B1MobileGemeinde-Mitglieder-App für iOS und AndroidExpo 54, React Native 0.81
B1CheckinCheck-in-Kiosk-AppExpo
LessonsScreenAndroid TV Lesson-AnzeigeExpo
FreePlayContent-Wiedergabe (inkl. TV OS)Expo
FreeShowRemoteMobile Fernbedienung für FreeShowExpo

Desktop

ProjektStackZweck
FreeShowElectron 37 + Svelte 3 + VitePräsentations- und Worship-Software

Gemeinsame Biblioteken

Gemeinsamer Code wird zu npm unter dem @churchapps-Scope veröffentlicht. Diese werden als reguläre npm-Abhängigkeiten von den oben genannten Projekten konsumiert.

Packagenpm-NameZweckNutzen durch
Helpers@churchapps/helpersBasis-Utilities (DateHelper, ApiHelper, CurrencyHelper, usw.)Alle Projekte
ApiHelper@churchapps/apihelperExpress-Server-Utilities (Auth-Middleware, DB-Helfer, AWS-Integration)Alle APIs
AppHelperWorkspace mit 6 PackagesReact-KomponentenbibliothekAlle Web-Apps
ContentProviderHelper@churchapps/content-provider-helperYouTube, Vimeo und lokale Content-ProviderFreeShow, FreePlay, Api

AppHelper Sub-Packages

Das AppHelper-Projekt ist ein Monorepo Workspace, der sechs Packages veröffentlicht:

Packagenpm-Name
Core@churchapps/apphelper
Login@churchapps/apphelper-login
Donations@churchapps/apphelper-donations
Forms@churchapps/apphelper-forms
Markdown@churchapps/apphelper-markdown
Website@churchapps/apphelper-website

Projekt-Beziehungen

Frontend-Apps              Gemeinsame Biblioteken     Backend-APIs
-------------- ---------------- ------------
B1Admin ──────┐
B1App ──────┤ @churchapps/helpers ◄───── Api
LessonsApp ──────┼──► @churchapps/apphelper LessonsApi
B1Mobile ──────┤ AskApi
FreeShow ──────┘ @churchapps/apihelper ◄────┘

Alle Frontend-Apps hängen von @churchapps/helpers ab. Web-Apps hängen zusätzlich von @churchapps/apphelper-Packages ab. Alle Backend-APIs hängen von @churchapps/helpers und @churchapps/apihelper ab.

Nächste Schritte