Inspiration
As a theme park fan, I always had to deal with slow official apps, digging through blogs to find details on menus and ride requirements, and keeping spreadsheets open in line to track the coasters I rode. On top of that, trying to guess walking routes often meant walking 15 minutes across the park only to find a ride had just broken down.
I built Themeparky to solve my own problems and make going to theme parks fun again. It replaces the clutter with one fast app that brings together curated park details, live wait times, breakdown history, and step-by-step walking paths to make planning effortless.
What it does
Themeparky is a fast companion app for major theme parks like Disney, Universal, and SeaWorld.
- Live wait times and reliability: See standby, single rider, and virtual queue times, plus a 30-day breakdown history to see how often a ride goes down before you walk over.
- Interactive maps and walking routes: Filter by ride type or height requirement, and get step-by-step walking paths with time estimates between any two spots.
- Reopening and wait alerts: Get pinged when a wait drops below your target or when a closed ride opens back up.
- Dining and showtimes: Check menus, price tiers, mobile ordering, and parade schedules in one place.
How I built it
I built the mobile app for iOS and Android using React Native and Expo. For interactive maps and navigation, I used MapLibre and Protomaps to render custom vector tiles and calculate in-park pedestrian walking paths. As a fan of data privacy, I deliberately avoided requiring user accounts or logins so all saved rides, alerts, and preferences are stored locally on the user's device. I also integrated RevenueCat to handle in-app subscriptions smoothly without needing personal user data, and the app connects to a lightweight Cloudflare API that syncs live wait times and downtime data.
Challenges I ran into
The hardest part was managing messy and incomplete theme park data. Raw feeds often have missing height requirements, outdated menus, and incorrect map coordinates. To solve this, I built a custom admin portal to review, curate, and generate clean datasets, making it easy to audit thousands of attractions, food spots, and show schedules so users get trustworthy information.
Accomplishments that I'm proud of
I am proud of building a clean, modern interface that follows the latest Apple and Google design guidelines, making the app feel truly native and intuitive across different screen sizes. On the feature side, the 30-day breakdown tracker gives visitors honest reliability metrics that official apps hide. Most of all, I was able to ship a lightweight, responsive app that loads wait times and is cleaner and more intuitive to use than other apps on the market.
What I learned
- Rendering custom vector tiles and calculating pedestrian routes on mobile with MapLibre.
- Building and optimizing a cross-platform mobile app with Expo.
- Deploying, configuring, and releasing across both the iOS App Store and Google Play Store.
- Integrating RevenueCat to handle user subscriptions without backend authentication.
What's next for Themeparky
- Smart day planning: Suggesting the best order to ride attractions based on crowd patterns throughout the day.
- Lock screen widgets & live activities: Quick-look wait alerts and directions right from the lock screen.
- More parks: Expanding to international resorts like Disneyland Paris, Tokyo Disney, and Europa Park.
Built With
- expo.io
- maplibre
- react-native
- revenuecat
- typescript
Log in or sign up for Devpost to join the conversation.