React Native Screen Component Creation

VerifiedCaution

Create React Native screen components in src/screens/ directory with standard template. Useful for requests like "add a screen" or "create home screen".

Sby Skills Guide Bot
DevelopmentBeginner
406/2/2026
Claude Code
#react-native#screen-component#mobile-ui#component-generation

Recommended for

Our review

Creates a React Native screen component in src/screens/ with a template.

Strengths

  • Automatically creates file with proper naming convention
  • Adds 'Screen' suffix if missing
  • Includes basic structure with StyleSheet and StatusBar
  • Generates exportable component

Limitations

  • Only generates a minimal template
  • No business logic or state management included
  • Assumes Expo project structure
When to use it

When you need to quickly scaffold a new screen in a React Native project.

When not to use it

When you need a component with complex logic or custom styling beyond the basic template.

Security analysis

Caution
Quality score80/100

The skill uses Bash for directory creation and file writing, which is a legitimate use, but Bash is a powerful tool that introduces risk if combined with untrusted arguments.

Findings
  • Bash tool is allowed, which could be exploited if malicious input is provided.

Examples

Add a home screen
Add a home screen to the project.
Create a settings screen
Create a settings screen.

name: screen description: React Nativeの画面(Screen)コンポーネントを作成する。「画面を追加して」「ホーム画面を作って」などのリクエストで使用する。 allowed-tools: Read, Write, Edit, Glob, Grep, Bash argument-hint: [画面名]

画面コンポーネント作成

src/screens/ に画面用コンポーネントを作成する。

手順

  1. src/screens/ ディレクトリが存在しなければ作成する
  2. PascalCase のファイル名で .tsx ファイルを作成する(例: $ARGUMENTS.tsx または ${ARGUMENTS}Screen.tsx
  3. 画面名が "Screen" で終わっていなければ自動でサフィックスを付ける

テンプレート

import React from 'react';
import { StyleSheet, View, Text } from 'react-native';
import { StatusBar } from 'expo-status-bar';

export const ScreenNameScreen: React.FC = () => {
  return (
    <View style={styles.container}>
      <Text style={styles.title}>ScreenName</Text>
      <StatusBar style="auto" />
    </View>
  );
};

const styles = StyleSheet.create({
  container: {
    flex: 1,
    backgroundColor: '#fff',
    alignItems: 'center',
    justifyContent: 'center',
  },
  title: {
    fontSize: 24,
    fontWeight: 'bold',
  },
});

ルール

  • 画面コンポーネントは flex: 1 でフルスクリーンにする
  • SafeAreaViewStatusBar を適切に使う
  • ナビゲーションライブラリが導入済みなら、navigation props の型を適切に定義する
  • ビジネスロジックが複雑な場合はカスタムフックに切り出す
Related skills