मुख्य सामग्री पर जाएं

प्रोजेक्ट अवलोकन

ChurchApps में लगभग 20 स्वतंत्र रिपॉज़िटरीज़ शामिल हैं, जो सभी ChurchApps GitHub संगठन के तहत प्रकाशित हैं। यह पृष्ठ श्रेणी के अनुसार सभी प्रोजेक्ट्स की एक पूर्ण सूची प्रदान करता है, साथ ही उनके फ्रेमवर्क, पोर्ट और संबंधों का विवरण भी।

शुरू करने से पहले

  • जिस प्रोजेक्ट श्रेणी पर आप काम करना चाहते हैं, उसके लिए आवश्यक शर्तें इंस्टॉल करें

बैकएंड API

सभी API Node.js, Express, और TypeScript के साथ बनाए गए हैं, और Serverless Framework के माध्यम से AWS Lambda पर डिप्लॉय किए जाते हैं।

प्रोजेक्टउद्देश्यडेव पोर्टडेटाबेस
Apimembership, attendance, content, giving, messaging, और doing को कवर करने वाला कोर मॉड्यूलर मोनोलिथ8084प्रति मॉड्यूल अलग MySQL डेटाबेस (कुल 6)
LessonsApiLessons.church बैकएंड--एकल lessons MySQL डेटाबेस
AskApiOpenAI द्वारा संचालित AI क्वेरी टूल----
जानकारी

कोर Api प्रोजेक्ट एक मॉड्यूलर मोनोलिथ है। प्रत्येक मॉड्यूल (membership, attendance, content, giving, messaging, doing) का अपना डेटाबेस है और /membership या /giving जैसे सबपाथ पर पहुँचा जा सकता है। प्रोडक्शन में, ये API Gateway के पीछे अलग Lambda फ़ंक्शन के रूप में एक्सपोज़ किए जाते हैं।

वेब ऐप्स

प्रोजेक्टफ्रेमवर्कडेव पोर्टउद्देश्य
B1AdminReact 19 + Vite + MUI 73101चर्च प्रशासन डैशबोर्ड
B1AppNext.js 16 + React 19 + MUI 73301सार्वजनिक चर्च सदस्य ऐप
LessonsAppNext.js 163501Lessons.church फ्रंटएंड
B1TransferReact + Vite--डेटा आयात/निर्यात उपयोगिता
BrochureSitesStatic--स्थिर चर्च ब्रोशर वेबसाइटें

मोबाइल ऐप्स

सभी मोबाइल ऐप्स Expo के साथ React Native का उपयोग करते हैं।

प्रोजेक्टउद्देश्यमुख्य संस्करण
B1MobileiOS और Android के लिए चर्च सदस्य ऐपExpo 54, React Native 0.81
B1Checkinचेक-इन कियोस्क ऐपExpo
LessonsScreenAndroid TV पाठ प्रदर्शनExpo
FreePlayसामग्री प्लेबैक (TV OS सहित)Expo
FreeShowRemoteFreeShow के लिए मोबाइल रिमोट कंट्रोलExpo

डेस्कटॉप

प्रोजेक्टस्टैकउद्देश्य
FreeShowElectron 37 + Svelte 3 + Viteप्रस्तुतीकरण और उपासना सॉफ़्टवेयर

साझा लाइब्रेरीज़

साझा कोड npm पर @churchapps scope के तहत प्रकाशित किया जाता है और ऊपर दिए गए प्रोजेक्ट्स द्वारा नियमित npm dependencies के रूप में उपभोग किया जाता है। सभी साझा पैकेज एक एकल repository -- Packages -- में रहते हैं, जिसे Yarn workspace के रूप में प्रबंधित किया जाता है और changesets के साथ released किया जाता है।

पैकेजउद्देश्यउपयोग किए गए
@churchapps/helpersआधार उपयोगिताएं और साझा TypeScript इंटरफेस (DateHelper, ApiHelper, CurrencyHelper, आदि)सभी प्रोजेक्ट्स
@churchapps/apihelperExpress सर्वर उपयोगिताएं (auth, base controllers, database access, AWS integrations)सभी API
@churchapps/apphelperलॉगिन, दान, फॉर्म, markdown, और website building के लिए subpath modules वाली React component libraryसभी web apps
@churchapps/content-providersतीसरे पक्ष की सामग्री प्रदाता abstraction (Lessons.church, Planning Center, Dropbox, और अन्य)Api, B1Admin, B1App, FreePlay
@churchapps/integration-sdkB1.church integration toolkit: webhooks, REST client, OAuthबाहरी integration developers
@churchapps/textingSMS provider abstractionApi

साझा लाइब्रेरीज़ देखें workspace setup और release workflow के लिए।

प्रोजेक्ट संबंध

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

सभी फ्रंटएंड ऐप्स @churchapps/helpers पर निर्भर करते हैं। वेब ऐप्स अतिरिक्त रूप से @churchapps/apphelper पैकेजों पर निर्भर करते हैं। सभी बैकएंड API @churchapps/helpers और @churchapps/apihelper दोनों पर निर्भर करते हैं।

अगले कदम