Kullanım kılavuzuna geç
animate-expoyazan Emil Kowalski

Animate Expo Skill.

Mobil uygulama tasarımı için bir Claude Code ve Codex skill'i: React Native ve Expo için hareketler, yaylar ve geçişler.

  • Mobil Uygulamalar
  • UI kodu
emilkowalski/skills · skills/animate-expo/SKILL.mdSKILL.md
--- name: animate-expo description: Build animations in React Native and Expo, making the decisions in the order that determines whether they feel right — should it animate, which thread it runs on, which properties, spring or timing, how the gesture hands off, how it degrades. Writes the implementation with Reanimated, Gesture Handler, Expo Router and expo-haptics. Use when animating anything in an Expo app, adding gestures, sheets, screen … --- ## Operating Posture ## Hard Rules ## The Build Sequence ## Setup that silently breaks motion ## 120fps ## Recipes
Ön bilgi ve bölüm başlıkları yukarı akış dosyasından 2026-09-14 tarihinde okundu · tam hâliyle 17.458 karakter

01 Ne yapar

animate-expo Skill'i Claude Code ve Codex'te Ne Yapar

Özet, iş akışı ve çıktılar; hepsi skill'in SKILL.md dosyasından okundu.

SKILL.md'den14-09-2026 tarihinde okundu · kayıtlı bir çalıştırma değil

Skill'in Kendi İfadeleriyle

React Native ve Expo'da hareket için bir yapılandırma skill'i. Bir animasyon isteğini, gerçek bir cihazda incelemeden geçen bir uygulamaya dönüştürür ve kararları doğru hissettirip hissettirmediğini belirleyen sırayla verir: hiç animasyonlanmalı mı, hangi thread'de çalışmalı, hangi özellikler, spring mi timing mi, jest nasıl devralınmalı, nasıl kademeli olarak zayıflamalı.

Her şey üç mobil gerçeğinden çıkar: hover yoktur, iki runtime vardır ve kullanıcının parmağı öğenin üzerindedir. Bir Expo uygulamasını animasyonlandıran, jest ekleyen, sheet, ekran geçişi, basma geri bildirimi veya haptik ekleyen ya da cihazda takılan hareketi düzeltmek isteyen herkes için. Kod Reanimated, Gesture Handler, Expo Router ve expo-haptics ile yazılır.

Neler üretir

  • Seçenek olarak sunulmak yerine doğrudan yazılmış uygulama kodunun kendisi.
  • Frekans katmanını ve adlandırılmış amacı belirten, neyin ve neden reddedildiğini de içeren kısa bir kapı sonucu.
  • Malzeme satırı: araç, özellikler, spring veya curve artı süre ve işin hangi runtime üzerinde gerçekleştiği.
  • Jest teslimi ve haptik zamanlaması koddan okunamayacağı için, bir cihazda hissederek kontrol edilmesi gerekenlerin listesi.
Örnek istemi görün ↗

Nasıl Çalışır

  1. 01
    Animasyonu Her Şeyden Önce Kapıdan Geçir

    Bir frekans tablosu, hareketin gerçekleşip gerçekleşmeyeceğine karar verir; en üst katman durur ve hiç kod yazmaz. Sekmeler bir hiyerarşi değil eşit olduğundan sekme geçişleri asla kaymaz.

  2. 02
    Amacı Tek Kelimeyle Adlandır

    Skill, devam etmeden önce tek kelimelik bir amaç zorlar — geri bildirim, uzamsal tutarlılık, durum belirtme, sert bir değişimi önleme, açıklama veya keyif; sonuncusu yalnızca nadir ilk deneyim anları için.

  3. 03
    İşe Yarayan En Ucuz Aracı Seç

    Bir tabloda aşağı inin ve uyan ilk satırda durun: CSS transition, CSS keyframes, layout animation, shared value artı Gesture, ardından native stack, formSheet, NativeTabs, Link.Menu, RefreshControl, Lottie veya Skia.

  4. 04
    Animasyonlu Özellikleri Sınırla

    Transform ve opacity hiçbir maliyete sahip değildir; diğer her şey her karede düğüm ve kardeşleri üzerinde Yoga'yı yeniden çalıştıran bir layout geçişi zorlar.

  5. 05
    Spring veya Timing'i Parmağa Göre Seç

    Bir parmağın yönlendirdiği her etkileşim, hız bir kesintiden geçerek aktarılabilsin diye bir spring alır; diğer her şey timing curve kullanır, ease-in asla.

  6. 06
    Kareyi JS Thread'in Dışında Tut

    Shared value'lar, React state yerine useAnimatedStyle'ı besler ve RN-runtime çağrıları bir gesture güncellemesi içinde tetiklenmek yerine onEnd'e veya bir eşik tepkisine itilir.

02 Uyumunuzu bulun

animate-expo Skill Ne Zaman Kullanılır

İş bu türden bir mobil uygulama tasarımıysa Claude Code veya Codex'te animate-expo skill'ini kullanın. Uyum ve sınırlar aşağıda skill'in kendi dosyasından alınmıştır.

İyi Uyum

  • Bir Expo uygulamasında herhangi bir şeyi animasyonlandırmak; jestler, sheet'ler, ekran geçişleri, basma geri bildirimi ve haptikler dahil.
  • Bir parmağın dahil olduğu hareket; kesintiye uğratılabilirlik ve hız devri, süsleme yerine temel olarak ele alınır.
  • Adlandırılmış tariflerden biriyle eşleşen bir istek; bu durumda boş bir dosyadan değil tarifden başlamalısınız.
  • Hover'ın olmadığı bir platform için web etkileşim öğelerini yeniden tasarlamak; hover durumlarının basma, konum veya hiçbir şeye dönüşmesi gerekir.

Sınırları Bilin

  • Farklı bir skill'e ait olan web animasyonu.
  • Hareketi Expo Go'da test etmek; bu bir performans ortamı değildir ve aranan sorunları gizler.
  • Frekans kapısından geçemeyen istekler — skill nedeni adlandırır ve animasyonu yazmayı reddeder.
  • Reanimated 4, New Architecture gerektirdiğinden hâlâ eski mimaride olan projeler.

Ne Sağlamalısınız

  • Etkileşim ve ne sıklıkla gerçekleştiğiFrekans katmanı, herhangi bir şeyin inşa edilip edilmeyeceğine karar verir; sekme geçişleri, klavyenin açılıp kapanması, kaydırma ve ayar geçişleri en üst katmandadır.
  • Tek kelimeyle adlandırılan amaçAdlandırılabilir tek bir amaç olmadan inşa edilmez.
  • Projenin gereksinim duyduğu paketler, Expo üzerinden kurulurKurulum, Expo CLI üzerinden yapılır; böylece sürümler projenin SDK'sına göre çözümlenir, ki düz npm install bunu yapmaz.

03 Skill'in içinde

animate-expo Skill'in Claude Code ve Codex'e Verdiği Kurallar

SKILL.md'nin ajan için belirlediği 8 somut talimat, varsayılan ve sınır — dosyanın sonucu değiştiren kısmı.

  1. Sırayı Takip Ederek Uygulayın

    1. ve 2. adımlar sonrasında gelen her şeyi belirler; bu yüzden frekans ve adlandırılmış amaç, herhangi bir araç veya özellik seçiminden önce netleştirilmelidir.

  2. Reanimated, Core Animated Değil

    Core Animated, köprüyü aşmadan bir jestle sürülemez ve useNativeDriver, transform ve opacity dışında hiçbir şeye izin vermez.

  3. Yaklaşık Değer Kullanılmaz

    Eğriler ve spring yapılandırmaları icat edilmemeli, dosyadaki tablolardan alınmalıdır.

  4. Azaltılmış Hareket, Animasyonla Birlikte Gelir

    Erişilebilirlik ele alımı, aynı değişikliğin bir parçasıdır, sonradan açılan bir görev değil.

  5. Hissi Yalnızca Bir Release Build'de Değerlendirin

    Doğrulama, desteklediğiniz en yavaş cihazda, bir release build üzerinde yapılır; simülatör ve dev build'ler sayılmaz.

  6. Apple'ın İki Spring Parametresini Kullanın

    Spring'ler mass, stiffness ve damping olarak değil; duration ve dampingRatio ve velocity olarak yazılır; varsayılan yerleşme { duration: 400, dampingRatio: 1 }'dir ve sert bir kenarın tutunması gerektiğinde overshootClamping: true kullanılır.

  7. Dokunma Alanına Saygı Gösterin

    iOS'ta minimum 44x44pt ve Android'de 48dp, görseli büyütmek yerine hitSlop ile sağlanır; ayrıca sürüklenme bir dokunuşu iptal etmesin diye pressRetentionOffset kullanılır.

  8. Kullanıcı Eylemi Başına Bir Haptik

    Haptikler, görselle aynı karede, nedensel anda tetiklenir; asla scroll üzerinde veya kare başına değil ve asla tek geri bildirim olarak kullanılmaz.

04 İşe koyun

Claude Code veya Codex'e animate-expo Kurun

Bir npx skills add komutu, ardından ajanınızda ilk görev ve sonuç için bir kontrol listesi.

Claude Code, Codex veya Ajanınıza animate-expo Ekleyin

Projenizde çalıştırın; kurulum aracı, bunun hangi ajana ekleneceğini sorar.

Terminal
npx skills add https://github.com/emilkowalski/skills --skill animate-expo

skills/animate-expo/SKILL.md için genel skills CLI biçimi; depo kendi yolunu belgeleyebilir.

Skill'e İlk Mobil Uygulama Tasarım Görevini Verin

Skill'in kendi terimleriyle yazıldı; köşeli parantezli bölümleri kendi malzemenizle değiştirin.

Starter prompt
In my Expo app the [filter sheet] is a bottom sheet people open a few times a session, and dragging it down should dismiss it, snapping back if the drag was short. Add press feedback to the [row component] in the list and a selection haptic when the sheet detent catches. Keep all of it on the UI thread — nothing should stutter on a three-year-old Android — and ship reduced-motion handling in the same change.

Kaynak: SKILL.md'den, skill'in kendi terimleriyle yazıldı.

İlk Sonucu Kontrol Edin

SKILL.md'nin doğru bir sonucun nasıl göründüğüne dair söyledikleri:

  • Etkileşimi cihazda elle sürün: fırlatın, uçuşun ortasında kesin, tersine çevirin.
  • ProMotion iPhone'lar için CADisableMinimumFrameDurationOnPhone'un mevcut olduğunu doğrulayın, çünkü son Expo SDK'ları bunu varsayılan olarak ayarlar.
  • Azaltılmış hareketin sıfıra değil, daha az ve daha yumuşak hale düştüğünü kontrol edin; opacity ve renk açıklamasını koruyun.
  • Hiçbir şey çalışmadığında önce sessiz bozucuları kontrol edin: worklets Babel eklentisi ve uygulamayı saran GestureHandlerRootView.

OpenDesign'da animate-expo'yu SKILL.md bağlantısından içe aktarın: Plugins → Add → Skill → Import from link, ardından üst çubuktan seçin.

05 Açık kaynak, izlenebilir

Kaynak, Lisans ve Doğrulama

Bu sayfadaki bilgilerin nereden geldiği ve en son ne zaman kontrol edildiği.

Repository
github.com/emilkowalski/skills Branch main
Skill dosyası
skills/animate-expo/SKILL.md İçerik sağlama toplamı doğrulama sırasında kaydedildi; commit d23d7f8
License
MIT LICENSE dosyasından.
Repository yıldızları
37.516 GitHub anlık görüntüsü 2026-09-14 tarihinde tüm emilkowalski/skills deposu için alındı; bu katalogda 9 beceri içerir. animate-expo için bir değerlendirme veya kullanım sayısı değildir.
OpenDesign tarafından doğrulandı
2026-09-14 Kaynak dosya, yol, lisans metni ve yıldız sayısı kontrol edildi. OpenDesign ana sürümünde dahil değil (2026-08-28 kontrol edildi); bu sayfada canlı bir çalıştırma kaydedilmedi.

SKILL.md içinde

  1. Çalışma TavrıKıdemli mühendis gibi davranın: karar verin, nedeni tek satırda belirtin, kodu yazın.
  2. Katı KurallarBeş taviz verilmez kural: sıra düzeni, Reanimated, tablo değerleri, azaltılmış hareket, sürüm derlemesi değerlendirmesi.
  3. Derleme SırasıFrekans kapısından özelliklere, yaylara, thread'e ve haptiklere kadar dokuz sıralı adım.
  4. Hareketi sessizce bozan kurulumKurulumun, Babel eklentisinin, kök view'ın ve mimarinin hiçbir zaman çalışmayan animasyona neden olma yolları.
  5. 120fpsProMotion iPhone'ların 8ms'lik bir çerçeve bütçesi alması için CADisableMinimumFrameDurationOnPhone'un etkinleştirilmesi.
  6. TariflerBasma geri bildirimi, sheet'ler, kaydırma, başlıklar, klavye arayüzü, sekmeler için RECIPES.md dosyasına yönlendirir.
  7. Asla KullanmaYasaklanmış desenleri, kullanılması gereken alternatiflerle eşleştiren iki sütunlu tablo.
  8. ÇıktıKod ile birlikte kapı sonucu, bileşenler ve nelerin hissederek kontrol edilmesi gerektiği hakkında birkaç satır.
  9. TonKararlı ve kısa; bir şeyin hiç animasyonlu olmaması gerektiğinde bunu söyler.
Skill'in Kendi Açıklaması
"React Native ve Expo'da animasyonlar oluşturur, kararları doğru hissetmeyi belirleyen sırada verir — animate etmeli mi, hangi iş parçacığında çalışmalı, hangi özellikler, spring mi timing mi, hareket nasıl devredilmeli, nasıl bozunmalı. Uygulamayı Reanimated, Gesture Handler, Expo Router ve expo-haptics ile yazar. Expo uygulamasında herhangi bir şeyi animasyonlandırırken, hareket, sheet, ekran geçişi, basma geri bildirimi veya haptic eklerken ya da cihazda takılan hareketi düzeltirken kullanın. Web animasyonu için `animate` kullanın."

SKILL.md dosyasından ön madde açıklaması. Tam dosya yaklaşık 17.458 karakter. GitHub'da tam dosyayı okuyun.

06 Kurmadan önce

animate-expo Skill Hakkında Sorular

Yanıtlar, 2026-09-14 tarihinde okunan SKILL.md üzerinden alınmıştır, kaydedilmiş bir çalıştırmadan değil.

Neden çekirdek Animated API yerine Reanimated?

Çekirdek Animated, köprüyü aşmadan bir jest tarafından yönlendirilemez ve useNativeDriver, transform ve opacity dışında hiçbir şeyi kabul etmez. Reanimated worklet'leri UI thread üzerinde çalışır ve JS meşgulken de çalışmaya devam eder.

Etkileşim günde onlarca kez gerçekleşirse ne olur?

Kapı, en üst frekans katmanı için hiçbir animasyon döndürmez — platform varsayılanını kullanın veya hiçbir şey yapmayın ve durun. Animasyon, sheet'ler, modal'lar, toast'lar ve başarı durumları gibi ara sıra ve nadir görülen anlar için ayrılmıştır.

Animate Expo

Gerçek bir mobil uygulama tasarım görevinde animate-expo'yu çalıştırın.

OpenDesign'ı indirin, animate-expo'yu SKILL.md bağlantısından içe aktarın, yukarıdaki prompt'u yapıştırın ve sonuçtan önce planı okuyun.

Terminal
npx skills add https://github.com/emilkowalski/skills --skill animate-expo

OpenDesign Masaüstü

Tek tasarım sistemi. Her çıktıda tutarlı bir marka

Tam Vibe Design Workspace içinde aynı marka kurallarını web sitelerine, sunumlara, etkileşimli prototiplere, panolara, görsellere ve HTML videolara uygulayın. Yerel Codex, Claude Code, Cursor ve diğer kodlama ajanlarını bağlayıp ücretsiz üretin.

  • Web, sunum, prototip, pano, görsel ve video
  • 140+ tasarım sistemi ve eksiksiz şablon ile beceri kitaplığı
  • Yerel Codex ve 21+ kodlama ajanını bağlayın · Ücretsiz
Ücretsiz indir

macOS ve Windows için