NUCLO / 12

भाषा

Nuclo v0.3.29 · कोई बाहरी निर्भरता नहीं

स्पष्ट अपडेट वाले
इंटरफ़ेस बनाएँ
nuclo के साथ।

एक छोटा, टाइप-सुरक्षित DOM फ़्रेमवर्क। स्टेट साधारण और परिवर्तनशील रहता है। हर अपडेट आपके नियंत्रण में है। कोई प्रॉक्सी, सिग्नल या वर्चुअल DOM नहीं।

$npm create nuclo@latest
0
निर्भरताएँ
175
टाइपयुक्त HTML और SVG बिल्डर
~18.4KB
gzip संपीड़ित कोर रनटाइम
01/09 · update()
पहले रंगें, फिर पैच करें
stateplain array · tap or dragupdate()domreal nodes
0 mutations · 0 update() · 0 patched
01/09 · update()
पहले रंगें, फिर पैच करें

एक स्पष्ट चक्र।

स्टेट पर निर्भर मान, बिना निर्भरता ग्राफ़ या शेड्यूलर के। आप तय करते हैं कि वे कब चलें: डेटा से स्क्रीन तक एक अनुमानित रास्ता।

  1. 01बदलाव

    अपना डेटा बदलें

    स्टेट साधारण JavaScript है: वेरिएबल, ऐरे और ऑब्जेक्ट। इसे जैसे चाहें और जितनी बार चाहें बदलें।

    todos.push(newTodo) user.name = 'Ada'
  2. 02लागू करें

    update() कॉल करें

    एक ग्लोबल फ़ंक्शन आपके बदलाव लागू करता है। कई बदलाव करके उन्हें एक बार में लागू करें। आपके कहने तक कुछ भी रेंडर नहीं होता।

    update()
  3. 03पैच

    Nuclo DOM को सिंक करता है

    हर डायनेमिक एक्सप्रेशन की दोबारा गणना होती है। Nuclo केवल वास्तव में बदले मान DOM में लिखता है। न ट्री तुलना, न दोबारा रेंडरिंग।

    // 2 नोड पैच हुए, // बाकी सब जस का तस
स्टेट बदलने पर कुछ नहीं होता। update() कॉल करें, और Nuclo ठीक वही करता है जो आपने कहा। न ज़्यादा, न कम।
  1. अप्रत्यक्ष से बेहतर है स्पष्ट

    कोई प्रॉक्सी आपकी हर गतिविधि को ट्रैक नहीं करती। आप स्टेट बदलते हैं, फिर update() कॉल करते हैं। कारण और परिणाम स्पष्ट और अनुमानित रहते हैं।

  2. मनचाहे बदलाव करें, अपडेट एक बार

    दस बदलाव करें, फिर update() एक बार कॉल करें। DOM को केवल अंतिम स्टेट दिखता है। कोई अनावश्यक रेंडरिंग नहीं होती।

  3. कंपोनेंट के बजाय फ़ंक्शन

    साधारण JavaScript फ़ंक्शन से बनाएँ। Nuclo को क्लास, डेकोरेटर या विशेष सिंटैक्स की ज़रूरत नहीं है। हर फ़ंक्शन DOM नोड लौटाता है। ज़रूरत होने पर ही onMount और onDestroy को सामान्य मॉडिफ़ायर के रूप में जोड़ें।

स्पष्टता के लिए बनाया गया।

कोई जादू या अप्रत्याशित व्यवहार नहीं। हर अपडेट जानबूझकर होता है।

  • 01स्पष्ट

    अपडेट चक्र आपके नियंत्रण में है

    मनचाहे बदलाव करें, फिर update() एक बार कॉल करें। Nuclo को सब्सक्रिप्शन या शेड्यूलर की ज़रूरत नहीं है और कोई अप्रत्याशित ट्री तुलना नहीं होती। DOM आपके तय किए समय पर सिंक होता है।

  • 02हल्का

    कोई बाहरी निर्भरता नहीं

    कोर रनटाइम gzip संपीड़न के बाद लगभग 18.4 KB है। कंपाइलर या बिल्ड प्लगइन की ज़रूरत नहीं है। एक import जोड़ें और बनाना शुरू करें।

  • 03टाइपयुक्त

    TypeScript को ध्यान में रखकर बनाया गया

    175 पूरी तरह टाइपयुक्त HTML और SVG बिल्डर हर एट्रिब्यूट, स्टाइल प्रॉपर्टी और इवेंट के लिए ऑटोकंप्लीट देते हैं।

  • 04सटीक

    सूक्ष्म पैचिंग

    डायनेमिक एक्सप्रेशन update() पर दोबारा गणना करते हैं। केवल वास्तव में बदले हुए मान DOM को छूते हैं।

जहाँ ज़रूरी है, वहाँ तेज़।

ये js-framework-benchmark के स्वतंत्र परिणाम हैं: हज़ारों पंक्तियाँ बनाना, अपडेट करना, आपस में बदलना और हटाना।

js-framework-benchmark · keyedकम होना बेहतर है
  1. Nuclo0.2.24
    1.12
  2. Solid1.9.3
    1.13
  3. Svelte5.42.1
    1.17
  4. Vue3.5.39
    1.31
  5. Riot10.1.2
    1.54
  6. React19.2.0
    1.58
  7. Angular22.0.0
    1.58
  8. Stencil4.23.0
    1.81
  9. Ember7.3.0-alpha.5
    2.06
  10. Knockout3.5.1
    2.26
  11. Qwik1.11.0
    3.29
यह स्कोर सबसे तेज़ मापे गए कार्यान्वयन के मुकाबले लगने वाले समय का अनुपात है। यह सभी की-आधारित बेंचमार्क का भारित ज्यामितीय माध्य है।स्रोत: js-framework-benchmark

जब आप तैयार हों, शुरू करें।

Nuclo इंस्टॉल करें, एक बार import करें और ऐसे UI बनाएँ जो आपके कहने पर ही अपडेट हों। पूरा API एक दोपहर में सीखा जा सकता है।