expo-boilerplate
npx skills add https://github.com/emirrtopaloglu/expo-boilerplate --skill expo-boilerplate
Agent 安装分布
Skill 文档
Expo Boilerplate Skill
Target: Expo SDK 53+ / React Native 0.79+
Interactive bootstrapper that collects architecture decisions via questions, then scaffolds a production-ready Expo project.
References
references/
questions.md All questions grouped into 3 tiers with defaults
setup-guide.md Package commands, config files, and boilerplate code
architecture-templates.md Folder structures and complete file contents
Workflow
Phase 0: Initialize Project
Before anything else, create the Expo project if it doesn’t exist:
npx create-expo-app@latest {{APP_NAME}} --template blank-typescript
Phase 1: Collect Decisions
Read references/questions.md. Ask questions one tier at a time:
Tier 1 â Required (always ask):
- Project Basics â name, bundle ID, platforms, workflow
- Folder & Architecture â feature-based vs domain-based
- State & Data â global state, server state, persist storage
- Navigation â tabs, drawer, auth flow, deep linking
- API & Network â REST/GraphQL, client, token management
Tier 2 â Recommended (ask “Would you like to make recommended architecture decisions?”): 6. Design System â colors, typography, spacing, UI kit 7. Authentication â methods, backend provider, token storage 8. Libraries â forms, animation, image, i18n, date 9. CI/CD & Deploy â EAS, build profiles, OTA channels 10. Testing â unit, E2E, coverage target
Tier 3 â Advanced (ask “Would you like to make advanced decisions, or use defaults?”): 11. Code Standards â naming, lint, commit format, branch strategy 12. Security â root detection, SSL pinning, log filtering 13. Analytics & Logging â provider, crash reporting 14. Offline First â cache strategy, sync mechanism
Shortcut: If user says “fast setup” or “use defaults”, apply Recommended Defaults from
questions.mdand only ask project name + bundle ID.
Phase 2: Summarize & Confirm
Show all decisions as a summary table and get user approval:
| Category | Choice |
|----------|--------|
| App Name | MyApp |
| State | Zustand |
| ... | ... |
Phase 3: Scaffold Project
After approval, read references/setup-guide.md and references/architecture-templates.md, then:
- Install packages â run
npx expo installandnpm installfor selected libraries - Create folder structure â directories and files per template
- Write config files â
tsconfig.json,.eslintrc.js,.prettierrc,app.json,eas.json,.gitignore - Set up design system â theme tokens in
src/theme/ - Create state stores â boilerplate store files per selected state manager
- Set up navigation â Expo Router layouts in
app/ - Set up API client â base URL, interceptors, error handler
- Set up auth flow â login/register screens, token storage, protected routes
- Create demo screen â
app/(tabs)/index.tsxshowing design system - Set up error handling â ErrorBoundary, splash screen, font loading
Phase 4: Completion Report
Show the user:
- â Created files/directories list
- ð Start command (
npx expo start) - ð Next steps (how to add your first feature)
- â ï¸ Manual steps if needed (Apple Developer account, Firebase config, etc.)
Important Rules
- Follow building-native-ui skill conventions (kebab-case files, expo-image, expo-router)
- Use ui-ux-pro-max skill when creating design system
- TypeScript always â never offer JS option
- Expo Router always â never React Navigation
- Default to
src/with feature-based structure - Default to
StyleSheet.createfor styling (Unistyles as advanced option) - Default to
Tabsfromexpo-router/tabs(NativeTabs only for iOS 26+ projects) - Write real file contents, never leave files empty
- Feature-specific state â
src/features/xxx/store/, app-wide state âsrc/store/