A responsive urban navigator that turns a text-heavy municipal sub-page into a real-time event discovery and visit-planning platform for Downtown Orlando's most iconic park.
Lake Eola Park is the cultural heart of Downtown Orlando — a central public space hosting weekly markets, performances, and daily recreational use. Yet its digital presence is restricted to a text-heavy sub-page within the orlando.gov directory, and event information is fragmented across multiple city pages and third-party platforms, making it difficult to access timely, relevant information on mobile.
Events, amenities, and park updates are scattered across sources with no single source of truth.
Text-heavy, non-task-oriented structure forces visitors to do the work official sites should be doing.
See the current orlando.gov Lake Eola Park page ↗
Market opportunity: by centralizing fragmented data from park-sanctioned events and local businesses, this platform reduces “information labor” for over 100,000 monthly visitors. Why this brief: it targets a genuine void in civic UX and urban utility, where responsive design and information architecture can meaningfully improve community interaction with a public space — drawing on a professional background in architecture and human-centered systems.
Lake Eola lacks a dedicated, mobile-optimized platform for real-time event discovery and visit planning. Users must manually search across multiple sources to answer simple questions: what’s happening right now or this weekend, where should I go and what can I do, how do I plan my visit quickly, and where do I park. This creates friction, decision fatigue, and limits accessibility and spontaneous engagement.
| Field | Value |
|---|---|
| Role | UX/UI Designer (solo) |
| Duration | 04.15.2026 – 08.30.2026 (~12 active working weeks) |
| Platform | Responsive website — mobile-first, scaling to desktop |
| Tools | Figma, FigJam, Figma Make, Claude, Google Gemini, Google Meet |
| Scope | Event & activity discovery, interactive directory & parking navigator, static select-to-path park navigation |
| Constraints | No live GPS / AR navigation, no full user accounts, static rather than fully automated real-time data — kept within a two-week-equivalent capstone scope |
A responsive feed splitting park engagements into “Happening Now” and “Upcoming Events,” with category and timeframe filters, turning static info into a decision-making tool.
Scannable planning details for parking, amenities, and key highlights; tapping a map pin opens a hi-fi bottom sheet with status details.
A simplified interaction map where users pick a landmark as Point A to view a static, high-contrast path — spatial orientation without real-time GPS complexity.
Understand how people currently discover park events and plan visits, so the platform can reduce information labor rather than just reskin what already exists.
Competitive analysis of major urban parks · 5 moderated remote interviews · affinity mapping across four research topics.
A review of major urban park platforms surfaced consistent strategic opportunities rather than a single feature gap:
5 participants, moderated and remote — urban residents who regularly visit local city parks and/or rely on digital schedules for events. Interviews covered discovery & filtering, planning friction, on-site spatial navigation, and information value.
Participants largely bypass official park websites, favoring community platforms (Telegram, Meetup), social media (Instagram, Luma), and physical signage.
Real-time GPS orientation frustrated users (“which way am I facing?”) — most preferred interactive maps with a “you are here” landmark over live GPS.
Parking cost/availability, weather, and amenity locations serve as the primary go/no-go factors for actually attending.
A visual-first, minimalist interface with hierarchical event cards, categorical filtering, and interactive calendars, to avoid information overload.
Park websites fail to surface relevant, real-time events; third-party platforms fill the gap.
Parking logistics, safety vetting, and fragmented critical details drive the go/no-go decision.
GPS orientation is confusing while walking; people want low-effort, landmark-based guidance instead.
Dog owner, car-light — relies on transit, biking, and walking; discovers events through social platforms and physical signage since official sites feel text-heavy and lack real-time context.
Car-dependent, plans for a group — the logistical anchor for family and friends, often coordinating a toddler or elderly parents; a park visit is a planned outing, not a drop-in.
Enable fast, reliable event discovery with real-time context — clear timing, cost, location, category, and status upfront.
Reduce visit-planning friction by surfacing logistics upfront: parking, amenities, accessibility, weather, crowd level, walking distance.
Improve on-site spatial awareness with intuitive, landmark-based wayfinding to locate destinations and key park areas confidently.
Design a centralized, mobile-friendly live hub that simplifies park event discovery, visit planning, and on-site navigation through real-time-feeling updates, clear logistical information, and intuitive spatial guidance.
Prioritized MoSCoW roadmap, translating the goals above into what actually made it into scope:
The flow maps three task paths rather than one happy path, because the research showed visitors arrive with different questions:
Each path shares the same three anchors — Home, Events, Park Map — so the map is never a dead end and every event stays one tap from its logistics. These are the same three flows carried forward into usability testing.
Every logistics detail a visitor needs to decide whether to go — cost, end time, parking, accessibility — surfaces before they have to commit to a tap, never buried a screen deeper.
The static, select-a-landmark A-to-B route first took shape here in the lo-fi and mid-fi sketches, and felt like a genuinely novel idea at the time — a way to give spatial orientation without the complexity of live GPS. It carried through to the Version 1 build, but usability testing later told a different story (see Key design decisions).
1. Home — Park conditions strip, Happening Now, and upcoming events
2. Events, default — browsing all upcoming events
3. Events, filtered — This Weekend + Free applied
4. Event detail sheet — opens as a bottom sheet, keeping list context
5. Park map, default — landmark directory and Find Route
6. Park map, route fields — route inputs and parking tied to a selected event
7. Park map, active route — a set route with along-the-way amenities listed
Home, events (default & filtered), event detail sheet, and park map (default, route fields, and an active route).
Moderated remote testing across three task flows: finding a free event this weekend, planning a family visit to the Sunday Farmers Market, and on-site navigation to find a restroom from the park entrance.
Overall: the product concept tested strong and usable — participants completed all three core flows. The issues that surfaced were about clarity, labeling, and information placement, not the underlying value of the product.
Signal to address next iteration:
Orlando Blue (derived from the City of Orlando's own brand) anchors navigation, headers, and trust; Jungle Green — pulled from the park's fountain and lawns — is reserved for calls to action; Bright Amber adds warmth for tags and attention-getting moments, used sparingly after failing WCAG contrast as a primary color. Barlow Condensed carries display headers; Inter carries body copy, each with its own mobile/tablet/desktop type scale.
The City's existing Lake Eola Park page is a single long, mostly-static scroll. The redesign keeps its information but restructures it around what a visitor actually does on-site: check what's happening now, then plan.
1. Browse & filter — default events list with category/type filters and a custom date range picker.
2. View on map — jump from an event straight to its location on the park map.
3. Event detail — schedule, rules, and what to bring for the selected event.
4. Parking & transportation — live availability, road closures, and alternate ways to get there.
1. Default view — landmarks & parking pins on the map
2. Filters — toggle amenities & categories
3. Restrooms filter applied — only matching pins remain
4. Tapped pin — status & hours for that restroom
Default view, the filters modal, a Restrooms filter applied, and a tapped pin's status card — the same route-finder pattern as the mobile flow above.
What we tried to change — the current orlando.gov page is a single long, mostly-static scroll with no live event or parking data, all delivered as generic municipal copy. For the desktop redesign, the goal was the same dashboard-first restructuring used on mobile, translated to the wider canvas: surface what’s happening now, then make planning (parking, transit, accessibility) easy to find, instead of burying it in a wall of text.
Critical decision point: Layout Variant A (Bento Box format) won by a clear 4-to-1 margin in testing and became the core desktop homepage foundation.
Key design decisions
Usability testing on the Version 1 screens surfaced real friction — some of it in the interaction patterns, some of it in the amount of iconography and unfamiliar features. Rather than restating every screen again wholesale, each frame below carries a marked snippet of its Version 1 counterpart so the “before” is visible right next to the “after,” in the same order as the sections above: homepage, events list, event detail, park map.
The same iteration pass carried through to desktop, where the wider canvas allowed the parking and transit accordions to sit side by side rather than stacked.
Ordered by priority — the fix that mattered most in testing, first.
Evaluate the discoverability of the custom date picker and category filters on mobile; assess the map's entry point from an event page and its wayfinding tools; identify friction in finding amenity status from the map.
5 participants — urban residents who regularly visit local parks and/or rely on digital schedules. Moderated remote prototype and A/B testing in Figma.
Find all free events next week, then specifically on July 4th, using the filter chips and custom date picker.
From the Fireworks at the Fountain event page, jump to the map, filter to restrooms only, and confirm one is open.
| Participant | Task Flow 1 — Free Event | Task Flow 2 — Restrooms on Map |
|---|---|---|
| JR | Pass with assistance | Fail |
| NM | Pass with assistance | Pass |
| DK | Pass | Pass with assistance |
| JF | Pass | Pass |
| SL | Pass with assistance | Pass |
Core finding: obscured date tags cost the most points, not the free-event search itself.
Core finding: the static A-to-B route was misread as GPS-based positioning, not a landmark sketch.
The friction points above became the concrete next-iteration list: make map amenity icons read as tappable rather than flat/decorative, drop the static A-to-B route feature since most participants misread it as GPS-based location tracking rather than a landmark-to-landmark sketch, and strengthen date-tag visibility on event cards so the calendar-entry steps need fewer corrections.
Beyond the task-based usability tests above, a persona-mapped mockup was paired with the interactive prototype to check something more specific: does the finished design actually serve what Maya and Alina each came here for?
The homepage's Happening Now banner and filterable Upcoming Events list let Maya find something spontaneous to do in well under a minute of browsing, with the visuals (hero carousel, event photography) doing most of the persuading — exactly the kind of scan-and-go discovery she needs.
The event detail page's split parking/transit accordions and the map's amenity filters let Alina confirm logistics — parking, restrooms, accessibility — in one pass before she commits the family to the trip, instead of discovering a gap once they've already arrived.
Walking the prototype against each persona's own goals, side by side, made the case plainly: the same set of screens serves two different jobs — browsing for something to do, and de-risking a trip already half-decided — without asking either persona to dig for what they need.
This project pushed past “make it look nice” into defending every decision with evidence. Early calls — which parking street to recommend, what the restroom hours were — were made on gut feeling and got corrected more than once for stating things that hadn't actually been verified. By the end, checking a claim before shipping it became automatic. Design-systems thinking grew alongside it: a typography hierarchy from H1 through Meta across mobile and desktop scales, color rules (Jungle Green for CTAs only, Bright Amber as decoration-only after a WCAG contrast failure, Prussian Blue for hover states), and consistent spacing conventions kept dozens of components coherent across a large file instead of drifting apart.
The strongest insight was that generic-sounding advice was often wrong once actually checked. “Park closest to your destination” sounds like good default parking advice — until you learn the closest, free streets around a major event are exactly the ones that fill first, and the better advice is to recommend a garage or street slightly farther out.
The iterative refinement loops on the Park Conditions cards — Weather, Crowd Level, Park Hours, Swan Boats — through rounds of “this looks empty,” “this text is filler,” “this doesn't have enough contrast,” watching a component earn its place on the page. Also the research digging itself: finding the real LYMMO holiday transit schedule, the actual Downtown Orlando Farmers Market vendor count, or that Central Florida's afternoon-thunderstorm pattern could genuinely justify the weather strip's icon sequence — grounding UI copy in real facts made the whole thing feel like a real product decision, not a mockup.
Translating mobile to desktop properly, rather than just stretching, was the most challenging part of the process. Resizing a component and calling it done consistently produced either dead space or cramped mobile-scale text inside an oversized box. Building a real desktop type scale and spacing system, and applying it component by component, was the only thing that actually solved it — validated by the Layout A vs. B desktop A/B test.