21 lines
810 B
Markdown
21 lines
810 B
Markdown
# Ascently for iOS
|
|
|
|
The native iOS and widget client for Ascently, built with Swift and SwiftUI.
|
|
|
|
## Project Structure
|
|
|
|
This is a standard Xcode project. The main app code is in the `Ascently/` directory.
|
|
|
|
- `Models/`: Swift `Codable` models (`Problem`, `Gym`, `ClimbSession`) that match the Android app.
|
|
- `ViewModels/`: App state and logic. `ClimbingDataManager` is the core here, handling data with SwiftData.
|
|
- `Views/`: All the SwiftUI views.
|
|
- `AddEdit/`: Views for adding/editing gyms, problems, etc.
|
|
- `Detail/`: Detail views for items.
|
|
- `Services/`: Handles HealthKit and sync server communication.
|
|
- `Utils/`: Helper functions and utilities.
|
|
|
|
## Other Targets
|
|
|
|
- `ClimbingActivityWidget/`: A home screen widget.
|
|
- `SessionStatusLive/`: A Live Activity for the lock screen.
|