diff options
| author | soryu-co <bot@soryu.co> | 2026-04-24 13:15:29 +0000 |
|---|---|---|
| committer | soryu-co <bot@soryu.co> | 2026-04-24 13:21:12 +0000 |
| commit | db092c79a175e3283f479ee0b234b24bde3c736e (patch) | |
| tree | 16ae5ba1f2f2f6089ad9f625953fa02d19463ab0 /makima/ios/Sources/Makima/Resources | |
| parent | 3679ceb3325033faa2f889ef3dfee5668ef7aeea (diff) | |
| download | soryu-makima-ios-scaffold.tar.gz soryu-makima-ios-scaffold.zip | |
Add Makima iOS app scaffold (M0 + M1 design system)makima-ios-scaffold
Pure-native SwiftUI client for makima.jp under makima/ios/.
M0 (scaffold)
- XcodeGen project (iOS 18+, Swift 5.10, bundle co.soryu.makima)
- Makefile targets: bootstrap, xcgen, ios-sim-fast, ios-device-fast, test, lint
- GitHub Actions workflow ios-ci.yml — builds + runs XCTest on macos-14
- MIT repo root license already in place
M1 (design system, web-aesthetic port)
- Palette: #0c1729 background, #9bc3ff accent, #3f6fb3 border (ported from Tailwind)
- Typography: SF Mono for chrome, uppercase tracked nav labels
- Components: DashedBorder, GridOverlay, MastheadBar + WebSocketStatus pill,
NavStripPlaceholder (NAV// prefix), JapaneseLongPressText (mobile analogue
of JapaneseHoverText), Logo (reuses frontend/public/logo/makima-logo.svg with
Canvas concentric-ring fallback), Badge
- RootView demo screen: masthead, nav strip, logo, CONTROL SYSTEM badge,
SYSTEM// status card, GLOSSARY// card with 命令/契約/聴取/史料 long-press terms
Auth (v1 plan, not wired here): x-makima-api-key header — verified against
src/server/auth.rs. Authorization: Bearer reserved for v1.1 Supabase OAuth.
v1 plan doc: makima/ios/docs/ios-v1-plan.md
Not in this PR: networking, WebSocket client, stores, feature surfaces
(Home/Contracts/Tasks/Directives/Daemons/Listen), notifications. Those land
across M2-M8 per the plan.
Diffstat (limited to 'makima/ios/Sources/Makima/Resources')
6 files changed, 73 insertions, 0 deletions
diff --git a/makima/ios/Sources/Makima/Resources/Assets.xcassets/AppIcon.appiconset/Contents.json b/makima/ios/Sources/Makima/Resources/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 0000000..caefc04 --- /dev/null +++ b/makima/ios/Sources/Makima/Resources/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,13 @@ +{ + "images": [ + { + "idiom": "universal", + "platform": "ios", + "size": "1024x1024" + } + ], + "info": { + "author": "xcode", + "version": 1 + } +}
\ No newline at end of file diff --git a/makima/ios/Sources/Makima/Resources/Assets.xcassets/BrandAccent.colorset/Contents.json b/makima/ios/Sources/Makima/Resources/Assets.xcassets/BrandAccent.colorset/Contents.json new file mode 100644 index 0000000..81e0580 --- /dev/null +++ b/makima/ios/Sources/Makima/Resources/Assets.xcassets/BrandAccent.colorset/Contents.json @@ -0,0 +1,20 @@ +{ + "colors": [ + { + "idiom": "universal", + "color": { + "color-space": "srgb", + "components": { + "red": "0.608", + "green": "0.765", + "blue": "1.000", + "alpha": "1.000" + } + } + } + ], + "info": { + "author": "xcode", + "version": 1 + } +}
\ No newline at end of file diff --git a/makima/ios/Sources/Makima/Resources/Assets.xcassets/BrandBackground.colorset/Contents.json b/makima/ios/Sources/Makima/Resources/Assets.xcassets/BrandBackground.colorset/Contents.json new file mode 100644 index 0000000..64d84a0 --- /dev/null +++ b/makima/ios/Sources/Makima/Resources/Assets.xcassets/BrandBackground.colorset/Contents.json @@ -0,0 +1,20 @@ +{ + "colors": [ + { + "idiom": "universal", + "color": { + "color-space": "srgb", + "components": { + "red": "0.047", + "green": "0.090", + "blue": "0.161", + "alpha": "1.000" + } + } + } + ], + "info": { + "author": "xcode", + "version": 1 + } +}
\ No newline at end of file diff --git a/makima/ios/Sources/Makima/Resources/Assets.xcassets/Contents.json b/makima/ios/Sources/Makima/Resources/Assets.xcassets/Contents.json new file mode 100644 index 0000000..c47b5f2 --- /dev/null +++ b/makima/ios/Sources/Makima/Resources/Assets.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info": { + "author": "xcode", + "version": 1 + } +}
\ No newline at end of file diff --git a/makima/ios/Sources/Makima/Resources/Logo/makima-icon-red.svg b/makima/ios/Sources/Makima/Resources/Logo/makima-icon-red.svg new file mode 100644 index 0000000..ec21830 --- /dev/null +++ b/makima/ios/Sources/Makima/Resources/Logo/makima-icon-red.svg @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" aria-hidden="true"> + <circle cx="12" cy="12" r="9.5" stroke="#b30000" stroke-width="2" /> + <circle cx="12" cy="12" r="6.5" stroke="#b30000" stroke-width="1.6" /> + <circle cx="12" cy="12" r="3.6" stroke="#b30000" stroke-width="1.6" /> + <circle cx="12" cy="12" r="1.4" fill="#b30000" /> +</svg> diff --git a/makima/ios/Sources/Makima/Resources/Logo/makima-logo.svg b/makima/ios/Sources/Makima/Resources/Logo/makima-logo.svg new file mode 100644 index 0000000..4872d43 --- /dev/null +++ b/makima/ios/Sources/Makima/Resources/Logo/makima-logo.svg @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"> + <circle cx="12" cy="12" r="10" stroke="#003366" stroke-width="2" /> + <circle cx="12" cy="12" r="7" stroke="#003366" stroke-width="1.6" /> + <circle cx="12" cy="12" r="4" stroke="#003366" stroke-width="1.6" /> + <circle cx="12" cy="12" r="1.6" fill="#003366" /> +</svg> |
