React · React Native · 16 bileşen

Zor etkileşimler, hazır.

Animated Chorus, elle doğru yapması zor etkileşimler için bir hareket bileşenleri setidir: dönen sayılar, akan metin, boyut değiştiren geçişler, sheet'ler, sayfa çeviriciler, kaydırma eylemleri ve yalnızca değişeni canlandıran listeler. Tek etiket ve verileriniz. Provider yok, kurulum yok.

Kurulum
npm install @kkwaenggwari/animated-chorus

Bu sürümde ölçüldü

Chrome, 2026-09-28. Tüm koşullar ve örnekler performans kılavuzunda. Nasıl ölçüldü

  • 28.0KB16 export'un tamamı için KB gzip

    Web giriş noktasının tamamı, küçültülmüş. Tek peer React.

  • 0Animasyon sırasında JS kare callback'leri

    Bir sayı, bir yükseklik ve bir vurgu birlikte değişir: tarayıcı 12 animasyonun hepsini oynatır.

  • 1Değer değişikliği başına React commit'i

    MotionNumber değer değiştiğinde render edilir, dönerken asla.

  • 11Akan 3000 karakter için React commit'leri

    MotionStream karakterleri doğrudan ekler ve saniyede birkaç kez React'e katar.

01En kolay

Tek etiket ve verileriniz

Her bileşen kendi başına çalışır: provider, sarmalayıcı bileşen ya da kurulum çağrısı yok. Koleksiyonlar items ve renderItem alır; düzeniniz, metniniz ve stilleriniz size ait kalır.

  • Tek bir bileşen import edin ve bir değer verin. Tüm entegrasyon bu kadar.
  • Listeler, sekmeler ve sayfa çeviriciler dizinizi okur; key varsayılan olarak item.id'dir.
  • Metin gerçek metin olarak kalır: satır kaydırır, yazı tipiyle ölçeklenir ve seçilebilir.
  • <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} />;

Altı canlı bileşen ve her birinin arkasındaki tek satır kod.

Örnek hazırlanıyor…

02En hızlı

Tarayıcı oynatır. React kıpırdamaz.

Web'de yüklenecek bir animasyon kütüphanesi yok: bileşenler hareketlerini Web Animations API'ye devreder; dönen bir sayı ya da boyutu değişen bir panel hareket ederken kare başına JavaScript ve React render'ı harcamaz.

  • 12 animasyon birlikte çalışırken 0 JS kare callback'i.
  • Değer değişikliği başına bir React commit'i, kare başına değil.
  • Akan metin: 3000 karakter için 11 React commit'i. Aşağıdaki örnek kendi render'larını sayar.

Örnek hazırlanıyor…

03En kararlı

Her şeyi kesin. Asla sıçramaz.

Her yeni değer ekranda olandan başlar ve yaylar hızlarını korur; hızlı tıklamalar, veri patlamaları ve yön değişiklikleri kasıtlı görünür. Hareket bitince hiçbir şey çalışır hâlde kalmaz.

  • Sayılar asla bölünmez: kalan basamaklar dönerken kayar.
  • 5 ms arayla 200 yeni değer: ardından 0 animasyon kalır ve son metin tam doğrudur.
  • React StrictMode altında güvenli. Arka plandaki bir React Native uygulamasında hareket bitiş durumuna yerleşir.

Örnek hazırlanıyor…

Yaptıkları işe göre gruplanmış 16 bileşen

Sayılar ve metin, boyutu değişen içerik, seçim, listeler, hareketler, katmanlar ve ilerleme. Her birinin yanında props'uyla canlı bir çalışma tezgâhı var.

Tüm bileşenler

Web'de ve React Native'de aynı import

Metro native uygulamayı, web paketleyicileri ise DOM olanı seçer. Her platform hareketi en iyi oynattığı şekilde oynatır.

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} />
    </>
  );
}
KısımWebReact Native
Transform'lar ve opaklıkWeb Animations API, yaylar analitik örneklenirNative driver ile Animated
Genişlik ve yükseklikWeb Animations APIJS driver ile Animated, çünkü bu bir düzen
Akan metinKarakterler eklenir ve belirir; saniyede birkaç React render'ıGerçek bir Text, solma olmadan gösterilir
Sheet'ler ve yakınlaştırmaÜst katmanda native bir dialogŞeffaf bir Modal; geri düğmesi onu kapatır

İki dakikada başlayın

Kurun, tek bileşen import edin, bir değer verin.

npm install @kkwaenggwari/animated-chorus

Ara

Belgelerde aramak için yazın.