iOS Adventist Hymnarium App
- Consolidate multiple sheets into single item-based sheet to prevent SwiftUI sheet presentation conflicts - Increase toolbar button tap areas to 44x44pt minimum - Clarify clear cache alert message |
||
|---|---|---|
| Adventist Hymnarium.xcodeproj | ||
| Assets.xcassets | ||
| Extensions | ||
| Services | ||
| Views | ||
| .gitignore | ||
| Adventist-Hymnarium-Bridging-Header.h | ||
| adventist-hymnarium-info.plist | ||
| AdventistHymnariumApp.swift | ||
| HYMNARIUM_API_DOCUMENTATION.md | ||
| LICENSE | ||
| README.md | ||
| XCODE_SETUP.md | ||
Adventist Hymnarium iOS
iOS app for Seventh-day Adventist hymns with audio playback and sheet music.
Requirements
- Xcode 15+
- iOS 15+
- ChurchCore XCFramework (Rust bindings)
Setup
- Clone this repo
- Get the
ChurchCore.xcframeworkfrom the church-core repo and place it in the project root - Open
Adventist Hymnarium.xcodeprojin Xcode - Build and run
Architecture
- Services/ - HymnariumService, AudioPlayerManager, cache management
- Views/ - SwiftUI views (NumberPad, Browse, Favorites, HymnDetail, etc.)
- Extensions/ - SwiftUI helpers (MiniPlayerPadding, Font scaling)
The app uses Rust via UniFFI for the core hymn data layer (ChurchCore.xcframework).
License
Source code: GPLv3
Hymnal content (lyrics, music, sheet music) is copyrighted by the General Conference Corporation of Seventh-day Adventists®.