6 पॉइंट द्वारा GN⁺ 2024-10-04 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • Gumroad ने नया प्रोजेक्ट Helper शुरू करते समय htmx पर विचार किया।
  • React की जटिलता से बचने के लिए htmx इस्तेमाल करना चाहा गया, लेकिन टीम के भीतर इस पर मतभेद थे।
  • शुरुआत में htmx साधारण इंटरैक्शन जोड़ने के लिए आशाजनक लगा।

htmx की सीमाएँ

  • सहजता और developer experience: htmx के साथ काम करना Next.js की तुलना में उतना सहज नहीं था। जटिल फ़ॉर्म और dynamic validation लागू करते समय server-side logic अधिक जटिल हो गया।
  • UX सीमाएँ: htmx मूल रूप से Rails/CRUD दृष्टिकोण अपनाता है, जिससे user experience कुछ एकरस हो गया। drag-and-drop interface लागू करना React की तुलना में अधिक कठिन था।
  • AI और tool support: Next.js, AI tools के साथ अधिक अनुकूल है, जबकि htmx ऐसा नहीं है। इसका असर development speed और समस्या-समाधान पर पड़ा।
  • स्केलेबिलिटी की समस्या: जैसे-जैसे प्रोजेक्ट जटिल हुआ, htmx आवश्यकताओं के साथ कदम नहीं मिला पाया। real-time collaboration और जटिल data visualization फीचर जोड़ते समय state management मुश्किल हो गया।
  • कम्युनिटी और ecosystem: React/Next.js ecosystem परिपक्व है और कई तरह के समाधान देता है, जबकि htmx में यह मजबूती नहीं थी।

अंतिम निर्णय : React/Next.js पर स्विच

  • जटिल UX बनाने के लिए React/Next.js अधिक उपयुक्त था।
  • drag-and-drop फीचर, जटिल state management, dynamic form generation, real-time collaboration, performance optimization आदि में React के फ़ायदे लिए गए।
  • htmx की सीमाओं को पार करने के लिए React पर स्विच किया गया, और इसने प्रोजेक्ट के दीर्घकालिक विज़न का समर्थन किया।
  • टीम इस निर्णय से संतुष्ट है, और अभी के लिए वे अधिक तेज़ी से आगे बढ़ पा रहे हैं, अधिक आकर्षक user experience बना पा रहे हैं, और मौजूदा tools व libraries का बेहतर उपयोग कर पा रहे हैं।

अनुभव से मिली सीख

  • हल्के विकल्पों पर विचार करना महत्वपूर्ण है, लेकिन ऐसी तकनीक चुनना भी उतना ही ज़रूरी है जो प्रोजेक्ट के साथ बढ़ सके और दीर्घकालिक विज़न का समर्थन कर सके।
  • Helper के मामले में React और Next.js ने खुद को ऐसे ही विकल्प के रूप में साबित किया, और स्विच करने के बाद मुख्य ग्राहकों के लिए ऐप के user experience में बड़ा सुधार किया जा सका।

GN⁺ का सार

  • Gumroad का अनुभव दिखाता है कि हल्के विकल्पों पर विचार करना ज़रूरी है, लेकिन ऐसी तकनीक चुनना और भी महत्वपूर्ण है जो प्रोजेक्ट की वृद्धि और दीर्घकालिक विज़न का समर्थन कर सके।
  • htmx साधारण इंटरैक्शन मॉडल या मौजूदा server-rendered applications के लिए उपयुक्त हो सकता है।
  • Helper के जटिल state-based interface के लिए React और Next.js बेहतर विकल्प साबित हुए।
  • तकनीकी स्टैक का ज़रूरत के अनुसार पुनर्मूल्यांकन किया जा सकता है, और नई तकनीकों के आने पर लचीलापन बनाए रखना महत्वपूर्ण है।

1 टिप्पणियां

 
GN⁺ 2024-10-04
Hacker News टिप्पणियाँ
  • Gumroad के CEO ने htmx इस्तेमाल करके फिर NextJS पर स्विच करने का अपना अनुभव साझा किया। यह htmx के नकारात्मक अनुभव ढूंढ रहे लोगों के लिए उपयोगी जानकारी थी

    • AI टूल्स Next.js से परिचित हैं, लेकिन htmx से नहीं। यह डेवलपमेंट टूल्स के भविष्य के बारे में एक महत्वपूर्ण संकेत देता है
    • यह अनुमान है कि LLMs मौजूदा winner-takes-all संरचना को और मजबूत करेंगे और open source टूल्स के उपयोग को बढ़ावा देंगे
  • जटिल forms बनाते समय server-side logic जटिल हो गया, और React में client-side काम करने की तुलना में यह अधिक कठिन था

    • इस बात पर ज़ोर देने वाला एक meme है कि server-side पर भी validation लागू करना चाहिए
  • htmx से frontend को हल्का रखने की कोशिश की गई, लेकिन जटिल UI/UX और state management के लिए third-party libraries का उपयोग करना पड़ा

    • यह राय है कि React में काम आसान इसलिए लगा क्योंकि third-party libraries का उपयोग किया गया
    • यह भी राय है कि अगर जटिल state और rendering संभालनी हो, तो htmx शुरुआत से ही अच्छा विकल्प नहीं था
  • htmx में drag-and-drop interface लागू करना कठिन था, जबकि React libraries से अधिक सहज अनुभव मिला

    • htmx में frontend bundle उतना ही इस्तेमाल करना बेहतर है जितनी ज़रूरत हो
    • htmx.onLoad इवेंट का उपयोग करके लोड की गई content में attributes वाले markup को खोजकर जोड़ा जा सकता है
  • टीम frontend development में अधिक सहज लगती थी और backend के साथ संचार में कठिनाई हुई

    • React components के फ़ायदों और documentation व help ढूँढने की आसानी को स्वीकार किया गया
  • यह राय है कि Next.js के साथ development process अधिक स्वाभाविक लगा

    • यह राय भी है कि ReactJS syntax स्वाभाविक नहीं लगता
  • यह राय है that HTMX के लिए इस तरह का अनुभव साझा करना दिलचस्प है, और कुछ projects ऐसे भी होते हैं जहाँ केवल HTMX पर्याप्त नहीं होता

    • backend पर भी form validation की आवश्यकता होने की बात पर ज़ोर दिया गया
    • AI tools पर अधिक निर्भर हो चुकी टीम का मामला दिलचस्प लगा
    • यह राय है कि HTMX की सीमाओं को पूरा करने वाले plugins की ज़रूरत है
  • HTMX.org द्वारा इस तरह के essay को होस्ट करने की प्रशंसा की गई

  • यह चिंता है कि AI tools नए frameworks या programming languages को अपनाना कठिन बना सकते हैं

    • यह कल्पना की गई कि इसका असर SEO की तरह development tools पर भी पड़ सकता है