Watch app MVP: XcodeGen project, gateway client, pair, feed, thread, new thread, notifications
SwiftUI watch-only app in watch/, generated by XcodeGen. Codable models mirror gateway/src/contract.ts, with lenient string enums so new phases or decisions still decode. A DemoGateway serves fixtures from the docs/api.md examples for previews and demo mode. Swift Testing covers decoding the documented JSON, request encoding, notification action parsing and the small view helpers. Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
1 parent
ba1624eb9e
commit
bdfb79b891
19 files changed
+2413
No files matched your search
@@ -0,0 +1,66 @@
|
||||
name: WristCode
|
||||
options:
|
||||
bundleIdPrefix: org.gbrown
|
||||
createIntermediateGroups: true
|
||||
deploymentTarget:
|
||||
watchOS: "27.0"
|
||||
settings:
|
||||
base:
|
||||
DEVELOPMENT_TEAM: GQJNM5YK2M
|
||||
CODE_SIGN_STYLE: Automatic
|
||||
SWIFT_VERSION: "6.0"
|
||||
SWIFT_STRICT_CONCURRENCY: complete
|
||||
MARKETING_VERSION: "0.1.0"
|
||||
CURRENT_PROJECT_VERSION: "1"
|
||||
targets:
|
||||
WristCode:
|
||||
type: application
|
||||
platform: watchOS
|
||||
sources:
|
||||
- WristCode
|
||||
info:
|
||||
path: WristCode/Info.plist
|
||||
properties:
|
||||
CFBundleDisplayName: WristCode
|
||||
CFBundleShortVersionString: $(MARKETING_VERSION)
|
||||
CFBundleVersion: $(CURRENT_PROJECT_VERSION)
|
||||
WKApplication: true
|
||||
# Watch only, with no iPhone companion. watchOS refuses to install an app that sets both
|
||||
# this and WKRunsIndependentlyOfCompanionApp, and requires WKCompanionAppBundleIdentifier
|
||||
# when WKRunsIndependentlyOfCompanionApp is set without WKWatchOnly.
|
||||
WKWatchOnly: true
|
||||
entitlements:
|
||||
path: WristCode/WristCode.entitlements
|
||||
properties:
|
||||
aps-environment: development
|
||||
settings:
|
||||
base:
|
||||
PRODUCT_BUNDLE_IDENTIFIER: org.gbrown.wristcode
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon
|
||||
WristCodeTests:
|
||||
type: bundle.unit-test
|
||||
platform: watchOS
|
||||
sources:
|
||||
- WristCodeTests
|
||||
dependencies:
|
||||
- target: WristCode
|
||||
settings:
|
||||
base:
|
||||
PRODUCT_BUNDLE_IDENTIFIER: org.gbrown.wristcode.tests
|
||||
GENERATE_INFOPLIST_FILE: YES
|
||||
TEST_HOST: $(BUILT_PRODUCTS_DIR)/WristCode.app/WristCode
|
||||
BUNDLE_LOADER: $(TEST_HOST)
|
||||
schemes:
|
||||
WristCode:
|
||||
build:
|
||||
targets:
|
||||
WristCode: all
|
||||
WristCodeTests: [test]
|
||||
run:
|
||||
config: Debug
|
||||
test:
|
||||
config: Debug
|
||||
targets:
|
||||
- WristCodeTests
|
||||
archive:
|
||||
config: Release
|
||||
Reference in new issue
Block a user