Skip to content

feat: add expo-when-to-rebuild skill#77

Open
zvadaadam wants to merge 2 commits into
mainfrom
zvadaadam/miami
Open

feat: add expo-when-to-rebuild skill#77
zvadaadam wants to merge 2 commits into
mainfrom
zvadaadam/miami

Conversation

@zvadaadam

Copy link
Copy Markdown
Contributor

Summary

Adds a new skill, expo-when-to-rebuild, for the front half of Expo's core development loop — the decision developers hit constantly: "I changed something, do I need a new native build?" The existing skills are all task "spokes"; none owned this mental model. It stays distinct from expo-dev-client (which covers how to build & distribute) — this covers whether & which.

What's included

  • Mental model — the JS ↔ native boundary: most changes reflect instantly via Fast Refresh; a new build is the exception you hit only when a change crosses into native.
  • Verified Mermaid decision diagram, reconstructed from the official docs flowchart.
  • Quick decision table — change type → build? → what to do.
  • Local vs. EAS Build guidance (delegates the how to expo-dev-client).
  • CNG + prebuild, including the prebuild --clean / .gitignore gotcha called out in the docs.
  • Cross-links to expo-dev-client, expo-module, upgrading-expo, expo-cicd-workflows.

Changes

File Change
plugins/expo/skills/expo-when-to-rebuild/SKILL.md New skill (121 lines)
plugins/expo/README.md Index entry under App Design

Validated with claude plugin validate ./plugins/expo ✔.

🤖 Generated with Claude Code

Adam Zvada and others added 2 commits June 8, 2026 17:00
Teaches the Expo core development loop: whether a change needs a new
native build (the JS vs. native boundary), local vs. EAS Build, and
CNG / `prebuild --clean`. Includes a Mermaid decision diagram, a
quick decision table, and the prebuild .gitignore/--clean gotcha.
Indexed in the plugin README next to its sibling expo-dev-client.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Expo-docs fact-check pass:
- Remove "routing" as an app-config property (it's Expo Router / JS).
- Reframe the no-rebuild app-config row around runtime values read via
  expo-constants (e.g. extra), per the configuration docs.
- Correct .gitignore guidance: android/ios are git-ignored by default in
  a CNG project, not something you add.
- Soften "most npm libraries" to "JS-only libraries" (many RN libs are native).
- Deliver on the description's Expo Go vs. development build promise, and
  add an autolinking note for why native changes need a rebuild.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants