React Native Skills
Umfassende Best Practices für React Native und Expo-Anwendungen. Enthält Regeln für mehrere Kategorien, die Performance, Animationen, UI-Muster und plattformspezifische Optimierungen abdecken.
Wann anwenden
Diese Richtlinien heranziehen, wenn:
- React Native- oder Expo-Apps erstellt werden
- Listen- und Scroll-Performance optimiert wird
- Animationen mit Reanimated implementiert werden
- Mit Bildern und Medien gearbeitet wird
- Native Module oder Schriftarten konfiguriert werden
- Monorepo-Projekte mit nativen Abhängigkeiten strukturiert werden
Regelkategorien nach Priorität
| Priorität | Kategorie | Auswirkung | Präfix |
|---|---|---|---|
| 1 | Listen-Performance | KRITISCH | list-performance- |
| 2 | Animation | HOCH | animation- |
| 3 | Navigation | HOCH | navigation- |
| 4 | UI-Muster | HOCH | ui- |
| 5 | State-Management | MITTEL | react-state- |
| 6 | Rendering | MITTEL | rendering- |
| 7 | Monorepo | MITTEL | monorepo- |
| 8 | Konfiguration | NIEDRIG | fonts-, imports- |
Kurzreferenz
1. Listen-Performance (KRITISCH)
list-performance-virtualize– FlashList für große Listen verwendenlist-performance-item-memo– Listenelement-Komponenten memoizierenlist-performance-callbacks– Callback-Referenzen stabilisierenlist-performance-inline-objects– Inline-Style-Objekte vermeidenlist-performance-function-references– Funktionen außerhalb des Renderings extrahierenlist-performance-images– Bilder in Listen optimierenlist-performance-item-expensive– Aufwändige Arbeit außerhalb von Elementen verschiebenlist-performance-item-types– Elementtypen für heterogene Listen verwenden
2. Animation (HOCH)
animation-gpu-properties– Nur Transform und Opazität animierenanimation-derived-value– useDerivedValue für berechnete Animationen verwendenanimation-gesture-detector-press– Gesture.Tap anstelle von Pressable verwenden
3. Navigation (HOCH)
navigation-native-navigators– Native Stapel- und native Tab-Navigatoren gegenüber JS-Navigatoren verwenden
4. UI-Muster (HOCH)
ui-expo-image– expo-image für alle Bilder verwendenui-image-gallery– Galeria für Bild-Lightboxen verwendenui-pressable– Pressable anstelle von TouchableOpacity verwendenui-safe-area-scroll– Sichere Bereiche in ScrollViews handhabenui-scrollview-content-inset– contentInset für Header verwendenui-menus– Native Kontextmenüs verwendenui-native-modals– Native Modals wenn möglich verwendenui-measure-views– onLayout anstelle von measure() verwendenui-styling– StyleSheet.create oder Nativewind verwenden
5. State-Management (MITTEL)
react-state-minimize– State-Abonnements minimierenreact-state-dispatcher– Dispatcher-Muster für Callbacks verwendenreact-state-fallback– Fallback beim ersten Rendern anzeigenreact-compiler-destructure-functions– Für React Compiler destrukturierenreact-compiler-reanimated-shared-values– Gemeinsame Werte mit Compiler behandeln
6. Rendering (MITTEL)
rendering-text-in-text-component– Text in Text-Komponenten umschließenrendering-no-falsy-and– Falsy && für bedingtes Rendern vermeiden
7. Monorepo (MITTEL)
monorepo-native-deps-in-app– Native Abhängigkeiten im App-Paket belassenmonorepo-single-dependency-versions– Einheitliche Versionen über alle Pakete hinweg verwenden
8. Konfiguration (NIEDRIG)
fonts-config-plugin– Konfigurations-Plugins für benutzerdefinierte Schriftarten verwendenimports-design-system-folder– Design-System-Importe organisierenjs-hoist-intl– Intl-Objekterstellung nach oben ziehen
Verwendung
Einzelne Regeldateien für detaillierte Erklärungen und Codebeispiele lesen:
rules/list-performance-virtualize.md
rules/animation-gpu-properties.md
Jede Regeldatei enthält:
- Kurze Erklärung, warum es wichtig ist
- Falsches Codebeispiel mit Erklärung
- Richtiges Codebeispiel mit Erklärung
- Zusätzlicher Kontext und Referenzen
Vollständig kompiliertes Dokument
Für die vollständige Anleitung mit allen Regeln: AGENTS.md