12 घंटों में एक AI क्लाइमेट डिसीजन इंजन बनाना
अधिकांश कार्बन फुटप्रिंट ऐप्स विफल हो जाते हैं।
वे आपको केवल एक नंबर देते हैं। वे आपको सामान्य सलाह देते हैं। जागरूकता व्यवहार को नहीं बदलती। यह जानना कि आपका फुटप्रिंट 8 टन CO2 है, आपको यह नहीं बताता कि आगे क्या करना है।
मैंने इसे हल करने के लिए Climbit बनाया है। यह कोई कैलकुलेटर नहीं है। यह एक डिसीजन इंजन है। यह एक ही सवाल का जवाब देता है: मैं अभी सबसे अच्छा कदम क्या उठा सकता हूँ?
मुख्य लॉजिक (The Core Logic)
अधिकांश उपकरण माप (measurement) पर ध्यान केंद्रित करते हैं। Climbit निर्णयों (decisions) पर ध्यान केंद्रित करता है। सिस्टम आपके निम्नलिखित पहलुओं को देखता है:
- आवागमन (Commute)
- घर की ऊर्जा (Home energy)
- भोजन और आहार (Food and diet)
- यात्रा (Travel)
यह कार्बन कटौती, लागत, प्रयास और प्रासंगिकता के आधार पर कार्यों को रैंक करता है।
इंजीनियरिंग विभाजन (The Engineering Split)
मैंने एक महत्वपूर्ण निर्णय लिया। मैंने गणित को AI से अलग कर दिया।
लार्ज लैंग्वेज मॉडल्स गणित में कमजोर होते हैं। वे नंबरों के बारे में भ्रमित (hallucinate) हो सकते हैं। Climbit में, AI कभी भी उत्सर्जन (emissions) की गणना नहीं करता है।
वर्कफ़्लो इस प्रकार काम करता है:
- आप टेक्स्ट, वॉयस, या रसीदों की इमेज के माध्यम से डेटा प्रदान करते हैं।
- Gemini डेटा को स्ट्रक्चर्ड JSON में निकालता है।
- एक TypeScript इंजन वास्तविक गणित करता है।
- AI आपको एक व्यक्तिगत योजना देने के लिए परिणामों की व्याख्या करता है।
यह डेटा को सटीक और अनुभव को व्यक्तिगत बनाए रखता है।
टेक स्टैक (The Tech Stack)
- Next.js 15 and React 19
- TypeScript and Tailwind CSS
- Supabase and Clerk
- Google Gemini 1.5 Flash
- Vitest and Playwright
वास्तविक समस्याओं का समाधान
इसे बनाने के लिए कठिन तकनीकी समस्याओं को हल करना आवश्यक था:
- Hydration: Recharts के कारण सर्वर रेंडरिंग के दौरान त्रुटियां (errors) आ रही थीं। मैंने चार्ट रेंडरिंग को क्लाइंट माउंट होने तक टालकर (deferring) इसे ठीक किया।
- Security: मैंने एक token bucket rate limiter लागू किया। यह महंगे AI endpoints को दुरुपयोग से बचाता है।
- Accessibility: मैंने semantic HTML और ARIA labels का उपयोग किया। Accessibility एक आवश्यकता है, न कि बाद में सोचा गया कोई विचार।
सबक (The Lesson)
AI कोडिंग की गति बढ़ाता है। यह आर्किटेक्चर की जगह नहीं लेता है।
मैंने अपना अधिकांश समय इन पर बिताया:
- Hydration समस्याओं को ठीक करने में।
- Edge cases को वैलिडेट करने में।
- सुरक्षा को मजबूत करने में।
- विश्वसनीयता में सुधार करने में।
एक डेमो और एक प्रोडक्ट के बीच का अंतर इन्हीं बारीकियों में होता है। लोगों को और अधिक क्लाइमेट डेटा की आवश्यकता नहीं है। उन्हें बेहतर क्लाइमेट निर्णयों की आवश्यकता है।
Optional learning community: https://t.me/GyaanSetuAi