स्थानीय API सेटअप
यह गाइड आपको स्थानीय विकास के लिए ChurchApps API सेटअप करने की प्रक्रिया से गुज़ारती है। आप रिपॉज़िटरी क्लोन करेंगे, अपने डेटाबेस कनेक्शन कॉन्फ़िगर करेंगे, स्कीमा इनिशियलाइज़ करेंगे, और हॉट रीलोड के साथ डेव सर्वर शुरू करेंगे।
शुरू करने से पहले
- Node.js 22+, Git, और MySQL 8.0+ इंस्टॉल करें -- देखें पूर्वापेक्षाएँ
- डेटाबेस निर्माण विशेषाधिकारों वाला एक MySQL उपयोगकर्ता बनाएँ
- API कॉन्फ़िगरेशन के लिए पर्यावरण चर संदर्भ देखें
चरण-दर-चरण सेटअप
1. रिपॉज़िटरी क्लोन करें
git clone https://github.com/ChurchApps/Api.git
2. डिपेंडेंसी इंस्टॉल करें
cd Api
npm install
3. पर्यावरण चर कॉन्फ़िगर करें
cp .env.sample .env
.env खोलें और अपनी MySQL कनेक्शन स्ट्रिंग कॉन्फ़िगर करें। प्रत्येक मॉड्यूल को निम्नलिखित प्रारूप में अपने डेटाबेस कनेक्शन की आवश्यकता होती है:
mysql://root:password@localhost:3306/dbname
आपको सभी छह मॉड्यूल डेटाबेस (membership, attendance, content, giving, messaging, doing) के लिए कनेक्शन स्ट्रिंग की आवश्यकता होगी।
4. डेटाबेस इनिशियलाइज़ करें
npm run initdb
यह स्वचालित रूप से सभी छह डेटाबेस और उनकी तालिकाएँ बनाता है।
आप npm run initdb:membership (या attendance, content, giving, messaging, doing) के साथ एक मॉड्यूल का डेटाबेस इनिशियलाइज़ कर सकते हैं।
5. डेव सर्वर शुरू करें
npm run dev
API हॉट रीलोड के साथ http://localhost:8084 पर शुरू होता है।
प्रमुख कमांड
| कमांड | विवरण |
|---|---|
npm run dev | हॉट रीलोड के साथ डेव सर्वर शुरू करें (tsx watch) |
npm run build | क्लीन, TypeScript कंपाइल और एसेट कॉपी करें |
npm run test | Jest के साथ टेस्ट चलाएँ (कवरेज सहित) |
npm run test:watch | वॉच मोड में टेस्ट चलाएँ |
npm run lint | ऑटो-फिक्स के साथ Prettier और ESLint चलाएँ |
स्टेजिंग डिप्लॉयमेंट
स्टेजिंग एनवायरनमेंट पर डिप्लॉय करने के लिए:
npm run deploy-staging
यह प्रोडक्शन बिल्ड चलाता है और फिर Serverless Framework के माध्यम से डिप्लॉय करता है।
डिप्लॉय कमांड चलाने से पहले सुनिश्चित करें कि आपके AWS क्रेडेंशियल कॉन्फ़िगर हैं।
स्थानीय लाइब्रेरी विकास
यदि आपको API के साथ-साथ एक साझा लाइब्रेरी (@churchapps/helpers या @churchapps/apihelper) विकसित करनी है, तो npm link का उपयोग करें:
# लाइब्रेरी डायरेक्टरी में
cd Helpers
npm run build
npm link
# API डायरेक्टरी में
cd ../Api
npm link @churchapps/helpers
यह आपको npm पर पब्लिश किए बिना API के विरुद्ध लाइब्रेरी परिवर्तनों का परीक्षण करने देता है।
संबंधित लेख
- डेटाबेस -- डेटाबेस-प्रति-मॉड्यूल आर्किटेक्चर को समझना
- मॉड्यूल संरचना -- कंट्रोलर, रिपॉज़िटरी और मॉडल कैसे व्यवस्थित हैं
- साझा लाइब्रेरी --
@churchapps/helpersऔर@churchapps/apihelperके साथ काम करना