mobile-file-organization

Defines folder structure, naming conventions, and export rules for Expo Router mobile apps.

3|1|Updated Jan 12, 2026
One-click install
npx skills add https://github.com/nghyane/VSTEP --skill mobile-file-organization-nghyane
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: mobile-file-organization
Source: https://github.com/nghyane/VSTEP/tree/main/apps/mobile-v2/.agents/skills/mobile-file-organization
Command: npx skills add https://github.com/nghyane/VSTEP --skill mobile-file-organization-nghyane

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Developers working on the mobile-v2 React Native app often struggle with inconsistent file placement, naming styles, and export patterns, leading to a disorganized codebase that is hard to navigate and maintain. ## Core Features & Use Cases - Folder Structure Reference: Documents the complete directory layout for Expo Router routes, feature modules, shared components, hooks, and theme tokens. - Naming & Route Conventions: Enforces kebab-case files, PascalCase components, use-* hooks, and Expo Router patterns like route groups, dynamic routes, and hidden tabs. - Feature Module Template: Provides a standard structure for features with types.ts, queries.ts, actions.ts, and optional Zustand stores. - Use Case: When adding a new vocabulary practice screen, consult this Skill to decide whether the component belongs in src/features/vocabulary/ or src/components/, how to name the files, and how to register the route. ## Quick Start Ask the AI to create a new feature or screen in the mobile app following the mobile file organization conventions.

Frequently Asked Questions about mobile-file-organization

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I organize files in an Expo Router React Native project?▼

Place file-based routes in the app/ directory using route groups like (auth) and (app), and keep business logic in src/features/ with types.ts, queries.ts, and actions.ts per feature. Shared UI goes in src/components/ only when used by two or more route groups.

What naming conventions should React Native components and hooks use?▼

Files use kebab-case such as depth-button.tsx, components use PascalCase like DepthButton, and hooks follow the use-*.ts pattern such as use-auth.ts. Constants use UPPER_SNAKE and functions use camelCase.

How do Expo Router route groups and dynamic routes work?▼

Route groups like (tabs)/ organize screens without appearing in the URL, dynamic routes use [id].tsx syntax, and layout files named _layout.tsx render Stack or Tabs navigators. Hidden routes are configured with options href set to null in the layout.

When should a component move from a feature folder to shared components?▼

Move a component to src/components/ when it is used in at least two different route groups, has no feature-specific dependencies, and works with theme tokens alone. Keep it in the feature folder if it is coupled to feature data types or business logic.

Should React Native modules use default or named exports?▼

Use named exports only, with the sole exception of route components which require default exports for Expo Router. Barrel files are acceptable in src/components/index.ts but not inside feature folders.