Expo 项目结构指南
为全新的 Expo Router 应用建立清晰、可扩展的文件结构。
技能明确限定仅用于新项目,并要求在不确定时先询问;没有发现恶意行为、凭据窃取、隐蔽外传或破坏性默认操作。它提到服务器代码可读取秘密环境变量,但未提供更细的数据流、权限隔离、确认、回滚或依赖安全指导,因此扣8分。
目录规则、路由约束和平台文件规则整体一致,且描述了默认文件和命名要求。未提供测试、执行结果、异常输入处理或可诊断失败信息;仅凭静态材料无法验证关键路径,因此按静态上限给8分。
名称、触发条件和非适用范围较清楚,明确面向新建 Expo Router 项目且不得重构已有应用;输出是可直接采用的目录骨架。未明确输入检查、更多边界场景、中文支持或本地网络适配,但核心功能不依赖海外服务,因此扣3分。
文档分层清晰,包含目录示例、命名约定、平台变体、测试共置、许可证和版本1.0.0。缺少 FAQ、故障排查、变更日志、维护责任和明确更新路径;仓库级 README 提供了安装更新信息,但不完全属于该技能自身,因此扣6分。
技能覆盖 src/app、components、screens、server、平台文件和测试共置等核心布局,示例可直接指导新项目起步。没有静态可验证的代表性执行输出,也缺少对替代方案和适用成本的比较;按静态评估上限给7分。
技能引用了 Expo 博客和官方文档,并给出可审计的具体规则;仓库还有许可证和基础 CI 检查。但没有覆盖该技能关键路径的提交测试或第三方执行证据,且本评估未执行任何内容,因此给4分。
- 仅适用于尚无既定目录结构的新 Expo 项目;对已有项目应用这些规则可能造成不必要迁移。
- 涉及 app/api、server/ 和秘密环境变量时,文档没有说明访问边界、部署安全、日志处理或回滚方案。
- Expo Router、src/app 行为及相关最佳实践可能随版本变化,应在采用前核对当前官方文档。
这个 Skill 能做什么,适合哪些场景?
这是一个面向新 Expo 应用的项目结构技能,适用于尚未提交目录结构的项目。它规划 src/app、components、screens、server、utils、hooks 等目录的职责,并说明路由、服务端 API、平台差异、样式和测试应如何放置。它不会要求重构已有应用;项目是否为新项目不明确时,应先确认。Expo 文档、Expo CLI 和 EAS CLI 仍是事实来源。
提供一个新 Expo 应用的目录骨架;规定 src/app 仅存放 Expo Router 路由;指导可复用组件、屏幕主体、服务端辅助代码、工具函数、钩子、配置和资源的放置;说明平台专属文件命名、默认文件、样式内聚和测试内聚规则;给出从 app 切换到 src/app 以及使用 @/* 别名时需要注意的配置。
- 正在用 Expo Router 创建第一个新应用、尚未决定目录结构的开发者。
- 需要判断某个新文件应放在路由、组件、屏幕、服务端或工具目录中的团队。
- 需要组织 app/api API 路由及其服务端专用辅助函数的开发者。
- 需要为 iOS、Android 和 Web 变体安排平台专属文件的开发者。
- 希望将测试文件与被测试工具函数放在一起的新项目维护者。
这个 Skill 有哪些优点和局限?
- 目录职责明确,区分路由、屏幕主体、可复用组件和服务端代码。
- 覆盖平台专属文件、样式内聚和测试内聚等常见组织问题。
- 明确限制在新项目使用,避免将默认结构当作迁移标准。
- 提供 API 路由分组和服务端辅助代码隔离建议。
- 只提供结构和组织规则,没有脚本、自动迁移工具或测试套件。
- 适用范围限定为新 Expo 项目,不负责重构已有应用。
- 源码没有展示对不同 Expo、React Native 或 Metro 版本的测试证据。
- 具体业务架构和团队约定仍需由项目自行决定。
如何安装这个 Skill?
该仓库 README 记录的是整套 Expo skills 的安装方式,没有记录此技能的独立安装命令。使用 Skills CLI 可安装整个集合:npx skills@latest add expo/skills --skill '*'。Claude Code 可运行 claude plugin install expo@claude-plugins-official;Codex 可运行 codex plugin add expo@openai-curated。安装后重启或刷新 agent 会话。
如何使用这个 Skill?
在一个尚未形成固定目录结构的新 Expo Router 项目中提出结构设计请求,例如:“为我的新 Expo Router 应用规划项目文件夹结构,并说明每个文件应放在哪里。”如果应用已有目录布局,不要用此技能强行迁移;不确定项目是否为新项目时,先确认。
这个 Skill 与同类方案有什么区别?
Expo 文档、Expo CLI 和 EAS CLI 是官方事实来源;本技能主要提供项目文件结构指导,不能替代这些工具和文档。