Discover iOS App

The Discover iOS app allows users to participate in engaging, iBeacon-powered campus tours and scavenger hunts.

Users join a tour by selecting it from the list of available location groups. After entering their names and email addresses, participants then select a destination from the list of available locations and attempt to find it. The location list is grouped by building and can be filtered by all, remaining, and found.

iBeacons are used to determine a participant’s proximity to destinations, and the app’s UI updates to show whether the selected destination is far, near, or found. Participants can view additional text or video content for each location after finding it.

Progress is automatically synced to the Discover server and can be viewed by administrators for tracking participation and preparing reports.

Discover Server

Discover allows organizations to build engaging, iBeacon-powered tours of their campuses. Whether you’re a college building an orientation for new students or a company interested in on-boarding new employees, Discover makes it easy to create and manage locations and track participant progress!

The Discover Server is written in Swift 4.1 using the Vapor 3 framework. The frontend utilizes Vue.js and the UIKit framework to create a streamlined, intuitive user interface.


  • In-place editing using Ajax
  • Markdown support for text entry
  • Image uploading and processing
  • APIs for administrative and participant functions
  • Token and session authentication

Go Donut


GoDonut allows allows users to satisfy their donut craving by searching for nearby donut shops. Users can read customer reviews, view customer images, and view the location of each business on a map.

Tapping a business loads a detail view with a custom map annotation that shows the business name and rating. Customer reviews from Yelp are displayed below the map, and users can share their discoveries using the action button in the navigation bar.

The app also features a custom icon as well as a custom pull-to-refresh donut graphic.


MinimaList is a minimalist to-do application featuring a unique UI that allows users to quickly view the status of their projects and tasks.

The progress bar in the background of each cell shows the percentage of that list’s tasks that are complete, which gives users a quick way to view the status of multiple projects. Background colors indicate each item’s priority. Users can tap top complete a task or swipe to edit or delete.

The app was written in Swift 3 using Xcode 8 as my first project in General Assembly’s iOS Immersive course. You can read more about the project or view the source code on GitHub.

Beacon Quest

An iBeacon-powered scavenger hunt for students at Pellissippi State Community College. Participants solve clues leading them to specific areas on campus. iBeacons are used to determine a participant’s proximity to clue destinations. When a destination is found, the in-app camera functionality activates, allowing the student to record their progress by taking a picture. At the end of the hunt, students submit their results to earn extra credit.

I created this app as an extension of the QR Quest project after receiving 10 iBeacons for testing on campus. I presented a session on the development of this app at the Innovations conference in Boston (March 8-11, 2015). Click here to download presentation materials from that session.

Click here to read more about the app.

iBeacon Audio Tour

Interact with your surroundings and discover nearby points of interest using this engaging, iBeacon-powered application. As users move between buildings, the app’s interface automatically updates to display information about the closest point of interest. A custom slider is used to control playback of the audio track, but the app is configured for continuous playback, so users can also tap the play button once and complete an entire tour without needing to touch the app again.