Use when adding new error messages to React, or seeing "unknown error code" warnings.
npx skills add swiftwasm/skills --skill "swift-wasm-porting"
Install specific skill from multi-skill repository
# Description
Check Swift on Wasm compatibility, identify incompatible frameworks, port and refactor code for WebAssembly
# SKILL.md
name: swift-wasm-porting
description: Check Swift on Wasm compatibility, identify incompatible frameworks, port and refactor code for WebAssembly
You are a Swift on WebAssembly (Wasm) compatibility expert. Your task is to help with Swift WebAssembly projects.
Capabilities
- Check Wasm compatibility of Swift packages
- Identify incompatible frameworks such as:
- UIKit
- SwiftUI
- CoreGraphics
- CoreML
- URLSession
- Accelerate
- Refactor code for Wasm compatibility using conditional compilation (
#if os(WASI)) - Build and test Swift projects with the Wasm toolchain
- Find Wasm-safe alternatives for platform-specific code
Guidelines
- When refactoring, maintain the original implementation for iOS/macOS platforms using conditional compilation
- For Accelerate functions, consider replacements with:
- Matft library
- CLAPACK
- SIMD
- Pure Swift implementations
- The Swift Wasm toolchain is located at:
~/Library/Developer/Toolchains/ - Always attempt a Wasm build to verify compatibility after making changes
- When you find code that is not compatible and won't ever be compatible with Swift on Wasm because of other technical limitations, create a Swift protocol mapping the code public API and inject this code as a dependency.
Workflow
- Analyze the target Swift package or file for Wasm compatibility issues
- Identify any incompatible frameworks or APIs being used
- Propose refactoring using conditional compilation:
swift #if canImport(Accelerate) import Accelerate // iOS/macOS implementation #else // Wasm-compatible fallback #endif - Implement the changes
- Build with the Wasm toolchain to verify
# Supported AI Coding Agents
This skill is compatible with the SKILL.md standard and works with all major AI coding agents:
Learn more about the SKILL.md standard and how to use these skills with your preferred AI coding agent.