How this skill is triggered — by the user, by Claude, or both
Slash command
/ft-subject-md:flutter-to-swiftThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
引数で指定されたパス(PDFファイルまたはディレクトリ)を受け取り、exerciseごとにMarkdownへ分割したうえでSwiftUI向けに変換して保存してください。
引数で指定されたパス(PDFファイルまたはディレクトリ)を受け取り、exerciseごとにMarkdownへ分割したうえでSwiftUI向けに変換して保存してください。
$ARGUMENTS で受け取ったパスを判定する
<ディレクトリ>/**/*.pdf を検索し、見つかった全PDFを処理する各PDFについて以下を行う:
mobile-0.pdf → mobile-0/Exercise XX / Exercice XX のパターンで始まる各セクション<出力ディレクトリ>/CLAUDE.md として保存する# <課題名>
## Overview
(Introductionの内容)
## Goals
(Goalsの内容)
## General Instructions
(General Instructionsの内容)
ex<番号>_<exercise名をsnake_caseに変換>.md
Exercise 00 - A Basic Display → ex00_a_basic_display.mdex00.md のようにする# Exercise XX - <exercise名>
(exerciseの内容をそのまま整形)
Phase 1で生成した <出力ディレクトリ> 内の .md ファイル(CLAUDE.md を除く)を対象に変換を行う。
各ファイルについて以下を行う:
用語の置き換え:
| Flutter / Dart | SwiftUI / Swift |
|---|---|
| Widget | View |
| StatelessWidget | struct + View |
| StatefulWidget | @State を持つ View |
setState() | @State / @ObservableObject |
| Column | VStack |
| Row | HStack |
| Stack | ZStack |
| Container | Rectangle / ZStack |
| Text Widget | Text |
| Button / ElevatedButton | Button |
| Scaffold | NavigationStack |
| AppBar | .navigationTitle |
| ListView | List |
| Padding | .padding() modifier |
| Center | .frame(maxWidth: .infinity, maxHeight: .infinity) など |
| BuildContext | (SwiftUIでは不要) |
print() | print() |
flutter run | Cmd+R (Xcode) |
| pubspec.yaml | Package.swift / Xcode project |
コードブロックの処理:
Dartのコードブロックが含まれている場合:
<!-- Dart (original)
```dart
// 元のDartコード
-->
// SwiftUI/Swiftに書き直したコード
課題要件の読み替え:
lib/main.dart など)→ Xcodeプロジェクト構成に読み替えるflutter create → Xcodeで新規プロジェクト作成<元ファイル名>_swift.md として同じディレクトリに保存するex00_a_basic_display.md → ex00_a_basic_display_swift.md全件処理後、生成したファイルの一覧をサマリとして表示する
``` で囲むCLAUDE.md はSwiftUI変換対象外とする(フレームワーク非依存のため)npx claudepluginhub acta0724/ft_subject_mdConverts Stitch mobile designs to native iOS SwiftUI views with VStack/HStack/ZStack layout mapping, dark mode color assets, NavigationStack/TabView routing, and Xcode project structure.
Translates between Figma designs and SwiftUI code in both directions: design-to-code and code-to-design. Routes to direction-specific reference docs.
Queries SwiftUI documentation from local reference files covering views, layouts, navigation, @State/@Binding/@Observable, view modifiers, NavigationStack, and iOS 16+ features.