Initial scaffold: context-aware notes app for iOS + macOS
XcodeGen project (Notes / NotesMac / NotesTests), Swift 6 strict concurrency, iCloud-document storage via IndieSync with a SwiftData cache, automatic capture context (location, place, time zone, device) on every note, context-based relevance ranking with a 'Right here, right now' shelf, tags, search, and the square.and.pencil-on-red app icon.
This commit is contained in:
+130
@@ -0,0 +1,130 @@
|
||||
name: Notes
|
||||
options:
|
||||
bundleIdPrefix: dev.rzen.indie
|
||||
deploymentTarget:
|
||||
iOS: "26.0"
|
||||
macOS: "26.0"
|
||||
xcodeVersion: "26.0"
|
||||
defaultConfig: Debug
|
||||
|
||||
settings:
|
||||
base:
|
||||
SWIFT_VERSION: "6.0"
|
||||
DEVELOPMENT_TEAM: ${APPLE_TEAM_ID}
|
||||
MARKETING_VERSION: "0.1"
|
||||
CURRENT_PROJECT_VERSION: "1"
|
||||
ENABLE_USER_SCRIPT_SANDBOXING: "NO"
|
||||
|
||||
packages:
|
||||
IndieSync:
|
||||
url: https://git.rzen.dev/rzen/indie-sync.git
|
||||
from: "0.1.0"
|
||||
|
||||
schemes:
|
||||
Notes:
|
||||
build:
|
||||
targets:
|
||||
Notes: all
|
||||
NotesTests: [test]
|
||||
run:
|
||||
config: Debug
|
||||
test:
|
||||
config: Debug
|
||||
targets:
|
||||
- NotesTests
|
||||
archive:
|
||||
config: Release
|
||||
|
||||
targets:
|
||||
NotesTests:
|
||||
type: bundle.unit-test
|
||||
platform: iOS
|
||||
sources:
|
||||
- NotesTests
|
||||
dependencies:
|
||||
- target: Notes
|
||||
- package: IndieSync
|
||||
settings:
|
||||
base:
|
||||
PRODUCT_BUNDLE_IDENTIFIER: dev.rzen.indie.NotesTests
|
||||
GENERATE_INFOPLIST_FILE: true
|
||||
SWIFT_STRICT_CONCURRENCY: complete
|
||||
IPHONEOS_DEPLOYMENT_TARGET: "26.0"
|
||||
|
||||
Notes:
|
||||
type: application
|
||||
platform: iOS
|
||||
sources:
|
||||
- path: Notes
|
||||
excludes:
|
||||
- "Resources/Info-*.plist"
|
||||
- "Resources/*.entitlements"
|
||||
- path: CHANGELOG.md
|
||||
buildPhase: resources
|
||||
type: file
|
||||
- path: README.md
|
||||
buildPhase: resources
|
||||
type: file
|
||||
- path: LICENSE.md
|
||||
buildPhase: resources
|
||||
type: file
|
||||
dependencies:
|
||||
- package: IndieSync
|
||||
settings:
|
||||
base:
|
||||
PRODUCT_BUNDLE_IDENTIFIER: dev.rzen.indie.Notes
|
||||
INFOPLIST_FILE: Notes/Resources/Info-iOS.plist
|
||||
CODE_SIGN_ENTITLEMENTS: Notes/Resources/Notes-iOS.entitlements
|
||||
GENERATE_INFOPLIST_FILE: false
|
||||
SWIFT_STRICT_CONCURRENCY: complete
|
||||
IPHONEOS_DEPLOYMENT_TARGET: "26.0"
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon
|
||||
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME: AccentColor
|
||||
TARGETED_DEVICE_FAMILY: "1,2"
|
||||
postBuildScripts:
|
||||
- script: '"${SRCROOT}/../indie-skills/skills/app-versioning/scripts/update_build_info.sh"'
|
||||
name: Update Build Info
|
||||
shell: /bin/sh
|
||||
basedOnDependencyAnalysis: false
|
||||
inputFiles:
|
||||
- $(TARGET_BUILD_DIR)/$(INFOPLIST_PATH)
|
||||
- $(DWARF_DSYM_FOLDER_PATH)/$(DWARF_DSYM_FILE_NAME)/Contents/Info.plist
|
||||
|
||||
NotesMac:
|
||||
type: application
|
||||
platform: macOS
|
||||
sources:
|
||||
- path: Notes
|
||||
excludes:
|
||||
- "Resources/Info-*.plist"
|
||||
- "Resources/*.entitlements"
|
||||
- path: CHANGELOG.md
|
||||
buildPhase: resources
|
||||
type: file
|
||||
- path: README.md
|
||||
buildPhase: resources
|
||||
type: file
|
||||
- path: LICENSE.md
|
||||
buildPhase: resources
|
||||
type: file
|
||||
dependencies:
|
||||
- package: IndieSync
|
||||
settings:
|
||||
base:
|
||||
PRODUCT_BUNDLE_IDENTIFIER: dev.rzen.indie.Notes
|
||||
PRODUCT_NAME: Notes
|
||||
INFOPLIST_FILE: Notes/Resources/Info-macOS.plist
|
||||
CODE_SIGN_ENTITLEMENTS: Notes/Resources/Notes-macOS.entitlements
|
||||
GENERATE_INFOPLIST_FILE: false
|
||||
SWIFT_STRICT_CONCURRENCY: complete
|
||||
MACOSX_DEPLOYMENT_TARGET: "26.0"
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME: AppIcon
|
||||
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME: AccentColor
|
||||
postBuildScripts:
|
||||
- script: '"${SRCROOT}/../indie-skills/skills/app-versioning/scripts/update_build_info.sh"'
|
||||
name: Update Build Info
|
||||
shell: /bin/sh
|
||||
basedOnDependencyAnalysis: false
|
||||
inputFiles:
|
||||
- $(TARGET_BUILD_DIR)/$(INFOPLIST_PATH)
|
||||
- $(DWARF_DSYM_FOLDER_PATH)/$(DWARF_DSYM_FILE_NAME)/Contents/Info.plist
|
||||
Reference in New Issue
Block a user