Run for It is a Swift-based running app that helps users track their runs, monitor performance, and analyze their running history. Designed for runners of all levels, the app provides real-time stats, an intuitive interface, and a seamless experience for logging and reviewing runs.
- Track your distance, duration, pace, and average speed while running.
- View your running route in real-time on an interactive map.
- Save your running stats and routes locally.
- Access a detailed history of all your runs, complete with:
- Date and time of the run.
- Distance covered.
- Duration and average speed.
- A map screenshot of the route.
- Minimalist design for easy navigation.
- Two main tabs for quick access:
- Run Tab: Start a new run.
- History Tab: Review previous runs.
- Future integration with CloudKit for cross-device data sync and sharing.
- Social features, including group challenges and performance comparisons.
- Swift & SwiftUI: For app development and user interface.
- MapKit: For map rendering and real-time route tracking.
- Core Location: For GPS-based tracking of user movement.
- UIGraphicsImageRenderer: For capturing route screenshots.
- MVVM Architecture: Ensuring scalability and maintainability.
- RunViewModel.swift: Handles business logic, including tracking, statistics calculations, and data persistence.
- MapView.swift: A custom
UIViewRepresentablethat integrates with MapKit to display the user's route. - Views: SwiftUI views for the app's user interface, including
RunView,HomeView,HistoryView, andHistoryDetailView.
- Clone the repository:
git clone https://github.com/tarik-bratic/RunforIt.git
- Open the project in Xcode.
- Build and run the app on your simulator or physical device.
- Launch the app to access the Home Screen.
- Start a Run:
- Tap "Start Run" to begin tracking.
- Swipe between real-time stats and the route map during your run.
- Stop and Save:
- Tap "Stop" to save your run and add it to your history.
- View History:
- Navigate to the "Previously" tab to review your past runs.
| Home View | Run View | Map View |
|---|---|---|
- CloudKit Integration: Sync run history across devices.
- Social Features: Share runs, challenge friends, and view leaderboards.
- Enhanced Analytics: Provide more detailed performance insights.
Contributions are welcome! To contribute:
- Fork the repository.
- Create a new branch for your feature or fix.
- Submit a pull request detailing your changes.
This project is licensed under the MIT License. See the LICENSE file for details.
For questions or feedback, feel free to reach out:
Tarik Bratic – tarik.bratic@gmx.com