Skip to content

svareX/TrailBuddy

Repository files navigation

TRAILBUDDY

❯ A native iOS + watchOS outdoor trail tracking and activity companion

license last-commit repo-top-language repo-language-count


Technologies used

Table of Contents


Overview

TrailBuddy is a smart, beautiful native iOS and watchOS application developed as part of the VI2 – Advanced iOS Application Development course at MENDELU (Winter 2025/2026). Partly inspired by Strava, it is designed for outdoor enthusiasts — enabling them to track hikes and trails, monitor activity metrics in real time, and synchronize data seamlessly between iPhone and Apple Watch. The project includes a dedicated watchOS companion app for on-wrist access to key stats during activity, wrapped in a polished, carefully crafted UI.


Features

  • Real-time trail and activity tracking using GPS
  • Live metrics: distance, pace, elevation, and duration
  • Apple Watch companion app with iOS–watchOS data sync
  • Interactive map view for route visualization
  • Activity history with detailed statistics
  • Multi-language support (translations branch)
  • HealthKit integration for activity data

Project Structure

└── TrailBuddy/
    ├── TrailBuddy/
    │   ├── AppDelegate.swift
    │   ├── Models/
    │   ├── Views/
    │   ├── ViewModels/
    │   ├── Services/
    │   └── Resources/
    ├── TrailBuddy WatchKit App/
    │   └── Interface.storyboard
    ├── TrailBuddy WatchKit Extension/
    │   ├── InterfaceController.swift
    │   └── ExtensionDelegate.swift
    ├── TrailBuddyTests/
    └── TrailBuddy.xcodeproj

Project Index

TRAILBUDDY/
TrailBuddy (iOS)
AppDelegate.swift ❯ App lifecycle and WCSession setup for Watch connectivity
Services/ ❯ Location, HealthKit, and Watch connectivity services
TrailBuddy WatchKit Extension
InterfaceController.swift ❯ Main watchOS UI controller displaying live activity data
ExtensionDelegate.swift ❯ watchOS extension lifecycle and background task management
branches
main ❯ Stable production branch
ios-watchos-sync ❯ Feature branch for iPhone–Apple Watch data synchronization
translations ❯ Multi-language localization support
testing ❯ QA and integration testing branch

Getting Started

Prerequisites

  • macOS (latest stable version recommended)
  • Xcode 15 or higher
  • iOS SDK 16+ and watchOS SDK 9+
  • Swift 5.9+
  • Apple Watch (physical or simulator) for watchOS features
  • An Apple Developer account (for running on physical devices)

Installation

Build from source:

  1. Clone the repository:
❯ git clone https://github.com/svareX/TrailBuddy.git
  1. Navigate to the project directory:
cd TrailBuddy
  1. Open the Xcode project:
❯ open TrailBuddy.xcodeproj
  1. Select the iOS target and a paired Apple Watch simulator, then build (⌘B).

Usage

Run the app using Xcode:

❯ Select the TrailBuddy scheme and press ▶ Run (⌘R)

For the watchOS app, select the WatchKit App scheme and run on a paired simulator.

Testing

Run the test suite:

❯ ⌘U in Xcode

Or from the command line:

❯ xcodebuild test -scheme TrailBuddy -destination 'platform=iOS Simulator,name=iPhone 15'

Project Roadmap

  • Task 1: GPS trail tracking with map visualization.
  • Task 2: Apple Watch companion app with iOS–watchOS sync.
  • Task 3: Social sharing of completed trails and leaderboards.

Contributing

Contributing Guidelines
  1. Fork the Repository: Start by forking the project repository to your GitHub account.
  2. Clone Locally: Clone the forked repository to your local machine.
    git clone https://github.com/svareX/TrailBuddy
  3. Create a New Branch: Always work on a new branch.
    git checkout -b new-feature-x
  4. Make Your Changes: Develop and test your changes locally.
  5. Commit Your Changes: Commit with a clear message.
    git commit -m 'Implemented new feature x.'
  6. Push to GitHub: Push the changes to your forked repository.
    git push origin new-feature-x
  7. Submit a Pull Request: Create a PR against the original project repository.

License

This project is protected under the MIT License. For more details, refer to the LICENSE file.


Acknowledgments

  • Developed as part of the VI2 – Advanced iOS Application Development course at MENDELU (Winter 2025/2026)
  • Course instructor and teaching staff at MENDELU FBE
  • Apple Developer Documentation — WatchConnectivity and Core Location frameworks

About

A polished iOS & watchOS outdoor activity tracker with real-time GPS metrics, HealthKit integration, and cross-device sync.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages