Full-stack exploration app
A town to explore. A reason to look closer.
I designed and built a full-stack exploration guide for Medora. Players discover locations, complete challenges, earn XP, and keep a personal journal.
- Role
- Concept · UX · database · full-stack development
- Stack
- HTML · CSS · JavaScript · Node.js · Express · SQLite
- Result
- Code complete and presented; awaiting final company content
YOU ARE HERE
Von Hoffman House
What detail tells you how this home changed over time?
- 01Session verifiedrequireAuth
- 02Location resolvedroute_stops
- 03Challenge loadedstop_challenges
- 04Answer recordeduser progress
- 05XP committedprofile update
- 06Journal createdhistory preserved
Discover. Complete. Remember.
Built for guests, employees, and seasonal workers, the guide connects location discovery, personal progress, recommendations, and a journal.
Profile
Character, XP, completed locations and challenges, personal stats, and leaderboard position.
Hunt
Medora locations with Observe, Investigate, and Experience challenges.
Recommendations
Places and activities to help players decide what to explore next.
Journal
Completed challenges, timestamps, locations, answers, XP, and Did You Know facts.
Deeper exploration earns more XP.
XP accumulates across independent locations. The more a person observes, investigates, and experiences, the more progress they earn and the farther they can move on the leaderboard.
Something a player can notice in seconds or within a few minutes. It introduces the location and asks them to look with purpose.
Lower XPThe player must search, read, compare, or spend several minutes looking around to find the answer.
Higher XPThe player must actually engage with what the location offers. These challenges take the most time and intentionally earn the greatest XP.
Highest XPA personal record for every player.
Authentication happens behind the interface. Once signed in, every answer and completion belongs to the correct user and remains available when they return.
Chosen character
Each user selects a character that becomes part of their personal profile and experience.
Built for the next administrator.
Locations, questions, rewards, and recommendations live in the database. Administrators can update content without changing application code.
- Locations and display order
- Questions, answers, and categories
- XP rewards and automatic totals
- Users, characters, and progress
- Recommended places and activities
- Did You Know facts and journal content
-- Add or update content
UPDATE stop_challenges
SET xp_reward = 1500
WHERE difficulty = 'experience';
-- Result
Database change → API response → web app
Ready-to-use SQL instructions let a future administrator copy the correct statement into the database application. The updated location, question, reward, recommendation, or order then appears in the web app without requiring knowledge of the underlying code.
From a fixed route to free exploration.
The final product kept the playful motivation of the original scavenger hunt while removing the restrictions that made the early version harder to expand and less flexible for players.
Routes, letters, and character powers
- Three predefined routes
- Locations completed in a required order
- One question and one earned letter per stop
- Letters combined into a final word
- Characters planned to have task-solving powers
- A simpler points-per-question model
Free-roam locations and independent progress
- Start anywhere and visit places in any order
- Every location works independently
- Multiple questions and activities per location
- Observe, Investigate, and Experience categories
- Characters personalize the profile rather than changing difficulty
- XP accumulates by completed activity and location
Next: approve locations and questions, decide XP incentives, enter the final content, and launch.
READY FOR CONTENT