इस प्रोजेक्ट के बारे में

Create Go App CLI (cgapp) एक कमांड-लाइन टूल है जो नए प्रोजेक्ट्स जेनरेट करने के लिए उपयोग किया जाता है, जिसमें Go बैकएंड, JavaScript या TypeScript फ्रंटएंड और डिप्लॉयमेंट ऑटोमेशन का संयोजन होता है। इसका उद्देश्य प्रोजेक्ट स्कैफोल्डिंग और डिप्लॉयमेंट सेटअप को संभालकर डेवलपर्स को एप्लिकेशन कोड और बिजनेस लॉजिक पर ध्यान केंद्रित करने देना है। इंस्टॉलेशन विकल्पों में शामिल हैं: - go install github.com/create-go-app/cli/v4/cmd/cgapp@latest (Go 1.21 या उससे उच्च संस्करण आवश्यक) - Homebrew (brew tap create-go-app/tap; brew install create-go-app/tap/cgapp) - रिलीज पेज से प्रीबिल्ट deb, rpm, apk, या Arch Linux पैकेज - अलग उपयोग के लिए एक Docker इमेज (उस इमेज में deploy कमांड उपलब्ध नहीं है) मुख्य कमांड: - cgapp create [OPTION]: एक इंटरैक्टिव कंसोल UI के माध्यम से नया प्रोजेक्ट बनाता है। -t विकल्प कस्टम बैकएंड और फ्रंटएंड टेम्पलेट्स को सक्षम करता है। - cgapp deploy [OPTION]: Ansible के माध्यम से रिमोट सर्वर पर Docker कंटेनरों को डिप्लॉय करता है। स्थानीय मशीन पर Python 3.8+ और Ansible 2.9+ की आवश्यकता होती है। -k विकल्प रिमोट यूजर के sudo पासवर्ड के लिए प्रॉम्प्ट करता है। बैकएंड टेम्पलेट्स: - net/http: CRUD और JWT auth के साथ सरल REST API - Fiber: CRUD, रिन्यू टोकन के साथ JWT auth, DB और कैश के साथ जटिल REST API - go-chi: हेल्थ चेक के साथ बेसिक एप्लिकेशन फ्रंटएंड टेम्पलेट्स: फ्रंटएंड Vite.js के साथ जेनरेट किया जाता है, इसलिए यह React, Preact, Vue, Svelte, Solid, Lit, Qwik, या शुद्ध JavaScript/TypeScript के वर्तमान संस्करणों का उपयोग कर सकता है। Next.js और Nuxt को create-next-app और nuxi के साथ जेनरेट किया जाता है। अधिकांश विकल्पों के लिए JavaScript और TypeScript वेरिएंट सूचीबद्ध हैं, जिनमें react, react-swc, preact, vue, svelte, solid, lit, qwik, vanilla, next, nuxt, और sveltekit शामिल हैं। फ्रंटएंड जनरेशन के लिए npm वर्जन 7 या उससे उच्च संस्करण आवश्यक है। प्री-कॉन्फ़िगर Ansible रोल्स: - वेब/प्रॉक्सी सर्वर: Traefik (traefik, traefik-acme-dns) और Nginx (nginx)। Let's Encrypt से स्वचालित SSL प्रमाणपत्र और वेब UI के लिए v2.0.0 से Traefik की सिफारिश की जाती है। - डेटाबेस: PostgreSQL (postgres) जिसमें बैकएंड माइग्रेशन लागू होते हैं। - कैश: बैकएंड उपयोग के लिए Redis (redis)। प्रोजेक्ट डॉक्यूमेंटेशन, FAQ, चर्चाएं और इश्यूज GitHub विकी और रिपॉजिटरी के माध्यम से उपलब्ध हैं। यह प्रोजेक्ट Apache 2.0 के तहत लाइसेंस प्राप्त है।