Skip to main content

port-react-native-slice

Port one explicitly approved React Native or Expo feature slice into a declared SwiftUI target while preserving its parity contract.

Source facts

Repository
openai/community-plugins
Last source activity
August 26, 2026 at 02:17
Detected SKILL.md language
English
Stars
11
Forks
5

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

File Explorer
2 files

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
port-react-native-slice
description
Port one explicitly approved React Native or Expo feature slice into a declared SwiftUI target while preserving its parity contract.
# Port a React Native Slice Implement one approved vertical slice from an existing parity contract. Reimplement behavior deliberately; do not perform generic JSX-to-Swift translation. ## Safety contract Before writing, require: - one explicitly approved feature slice and its current parity contract; - one explicit target directory and target module; - an approved backend contract and licensing/provenance decision; - permission to change the named files or create named files inside the target directory. Stop without edits if source scope, target module, backend contract, licensing, parity expectations, or file ownership is ambiguous. A broad request such as “port the app” is not approval for multiple slices. ## Write boundary - Resolve the declared target directory before editing and keep every source, test, fixture, cache, and generated output write inside it or an explicitly approved disposable verification directory. - Do not write into the React Native source, plugin package, repository root, sibling modules, home directory, or unrelated paths. - Do not overwrite unrelated Swift files. Inspect a candidate file first; if it contains unrelated behavior or ownership is unclear, stop and propose a narrower patch or a new file within the target. - Do not install Xcode, XcodeGen, Simulator runtimes, packages, or accept Apple licenses. - Do not copy source, assets, submodules, private links, credentials, generated artifacts, or customer data. Use original or properly licensed assets and synthetic fixture data. - Before editing, run the bundled `scripts/native-port.mjs authorize-write` guardrail when available. It performs no writes and must authorize every approved relative file; a refusal is a stop condition. ## Implementation shape 1. Map each approved contract behavior to a small Swift implementation unit. 2. Put validation, state transitions, parsing, deterministic serialization, and business rules in pure Swift types or modules with no `SwiftUI` or `UIKit` import. 3. Keep SwiftUI views thin: render domain state, emit intents, and delegate platform work to narrow adapters. 4. Keep UIKit or other Apple framework bridges isolated at the edge, such as sharing, permissions, or lifecycle adapters. 5. Preserve the approved backend request/response, authentication, caching, persistence, error, and offline behavior. Never invent an endpoint, schema, credential flow, or side effect. 6. Implement approved native adaptations only when the contract explains their behavioral equivalence or intentional difference. 7. Add deterministic checks for each material domain invariant and stable synthetic fixtures for the approved path. Prefer fixed clocks, seeded randomness, stable IDs, and explicit locale/time-zone inputs. 8. Add accessibility semantics and stable identifiers called for by the contract. ## Verification during the port Run the smallest deterministic checks that do not require new installations. If an available Xcode/Simulator/XCUITest gate is requested, keep its derived data under the allowed boundary. If a prerequisite is missing, report the exact blocked gate; do not install, download, accept a license, or claim it passed. ## Completion report Report: - files changed, all relative to the explicit target directory; - contract behaviors implemented, adapted, deferred, or blocked; - pure-Swift domain boundaries and platform adapters; - deterministic checks run and their results; - platform gates run, skipped, failed, or blocked; - remaining parity, accessibility, licensing, backend, and release risks. Do not describe the slice as complete when a required contract behavior has no evidence.
View on GitHub