React · React Native · 16 कंपोनंट

अवघड इंटरॅक्शन, पूर्ण झालेले.

Animated Chorus हा हाताने अचूक करायला अवघड इंटरॅक्शनसाठी मोशन कंपोनंटचा संच आहे: घरंगळणारे आकडे, स्ट्रीम होणारा मजकूर, आकार बदलणारी अदलाबदल, शीट्स, पेजर, स्वाइप क्रिया आणि फक्त बदललेले ॲनिमेट करणाऱ्या सूची. एक tag आणि तुमचा डेटा. Provider नाही, सेटअप नाही.

इन्स्टॉलेशन
npm install @kkwaenggwari/animated-chorus

या build वर मोजले

Chrome, 2026-09-28. प्रत्येक अट आणि नमुना कार्यक्षमता मार्गदर्शकात आहे. हे कसे मोजले

  • 28.0KBसर्व 16 export साठी KB gzip

    संपूर्ण वेब प्रवेश, minify केलेला. React हा एकमेव peer.

  • 0ॲनिमेट होताना JS frame callback

    एक संख्या, एक उंची आणि एक हायलाइट एकत्र बदलतात: ब्राउझर सर्व 12 ॲनिमेशन चालवतो.

  • 1प्रत्येक मूल्य बदलासाठी एक React commit

    MotionNumber मूल्य बदलल्यावर रेंडर होतो, घरंगळताना कधीही नाही.

  • 11स्ट्रीम झालेल्या 3000 अक्षरांसाठी React commit

    MotionStream अक्षरे थेट जोडतो आणि सेकंदाला काही वेळा React मध्ये मिसळतो.

01सर्वात सोपे

एक tag आणि तुमचा डेटा

प्रत्येक कंपोनंट स्वतंत्रपणे चालतो: Provider, रॅपर कंपोनंट किंवा सेटअप कॉल नाही. संग्रह items आणि renderItem घेतात, आणि तुमचा लेआउट, मजकूर व शैली तुमच्याच राहतात.

  • एक कंपोनंट import करा आणि मूल्य द्या. हेच संपूर्ण एकत्रीकरण.
  • सूची, टॅब आणि पेजर तुमचा ॲरे वाचतात; key डीफॉल्टनुसार item.id.
  • मजकूर खरा मजकूरच राहतो: तो गुंडाळला जातो, फॉन्टसह मोजला जातो आणि निवडता येतो.
  • <MotionNumber value={total} />;
  • <MotionSwap value={status}>{label}</MotionSwap>;
  • <MotionHeight open={open}>{details}</MotionHeight>;
  • <MotionHighlight items={tabs} value={tab} onValueChange={setTab} />;
  • <MotionList items={tasks} renderItem={(task) => task.title} />;
  • <ProgressRing value={progress} />;

सहा थेट कंपोनंट, आणि प्रत्येकामागील एक ओळ कोड.

उदाहरण तयार होत आहे…

02सर्वात वेगवान

ब्राउझर चालवतो. React स्थिर राहते.

वेबवर लोड करायची ॲनिमेशन लायब्ररी नाही: कंपोनंट त्यांचे मोशन Web Animations API कडे सोपवतात, त्यामुळे घरंगळणारी संख्या किंवा आकार बदलणारे पॅनेल हलताना प्रति फ्रेम JavaScript किंवा React रेंडर खर्च होत नाही.

  • 12 ॲनिमेशन एकत्र चालताना 0 JS frame callback.
  • प्रत्येक मूल्य बदलासाठी एक React commit, प्रत्येक फ्रेमसाठी नाही.
  • स्ट्रीम होणारा मजकूर: 3000 अक्षरांसाठी 11 React commit. खालील उदाहरण स्वतःचे रेंडर मोजते.

उदाहरण तयार होत आहे…

03सर्वात स्थिर

कशातही व्यत्यय आणा. ते कधीही उडी घेत नाही.

प्रत्येक नवीन मूल्य स्क्रीनवर दिसणाऱ्यापासून सुरू होते आणि spring आपला वेग राखतात, त्यामुळे जलद क्लिक, डेटाचे स्फोट आणि दिशा बदल जाणीवपूर्वक केल्यासारखे दिसतात. मोशन संपल्यावर काहीही चालू राहत नाही.

  • संख्या कधीही फुटत नाहीत: उरलेली स्थाने घरंगळतानाच सरकतात.
  • 5 ms अंतराने 200 नवीन मूल्ये: नंतर उरलेली ॲनिमेशन 0 आणि अचूक अंतिम मजकूर.
  • React StrictMode मध्ये सुरक्षित. पार्श्वभूमीतील React Native ॲपमध्ये मोशन अंतिम स्थितीत स्थिरावते.

उदाहरण तयार होत आहे…

16 कंपोनंट, त्यांच्या कामानुसार गटबद्ध

संख्या आणि मजकूर, आकार बदलणारा मजकूर, निवड, सूची, हावभाव, ओव्हरले आणि प्रगती. प्रत्येकाकडे बाजूला props असलेले थेट वर्कबेंच आहे.

सर्व कंपोनंट

एकत्र जोडलेले

अनेक कंपोनंट एकत्र करणाऱ्या पूर्ण स्क्रीन, प्रत्येकाची सेटिंग्ज उदाहरणाबाहेर.

सर्व उदाहरणे

वेब आणि React Native वर तेच import

Metro नेटिव्ह अंमलबजावणी निवडतो आणि वेब बंडलर DOM अंमलबजावणी. प्रत्येक प्लॅटफॉर्म मोशन त्याला सर्वोत्तम जमेल तसे चालवतो.

App.jsx
// Web and React Native: the same import.
import { MotionNumber, MotionList } from '@kkwaenggwari/animated-chorus';

export function Score({ points, players }) {
  return (
    <>
      <MotionNumber value={points} />
      <MotionList items={players} renderItem={(player) => player.name} />
    </>
  );
}
भागवेबReact Native
Transform आणि opacityWeb Animations API, spring विश्लेषणात्मक पद्धतीने नमुने घेतलेलेनेटिव्ह driver सह Animated
रुंदी आणि उंचीWeb Animations APIJS driver सह Animated, कारण हा लेआउट आहे
स्ट्रीम होणारा मजकूरअक्षरे जोडून फिकटपणे दिसतात; सेकंदाला काही React रेंडरखरा Text, फिकटपणाशिवाय दिसतो
शीट्स आणि झूमवरच्या थरात नेटिव्ह dialogपारदर्शक Modal; मागे बटण ते बंद करते

शोधा

दस्तऐवजांमध्ये शोधण्यासाठी टाइप करा.