A full UX/UI redesign of a university student app — turning a fragmented experience with repeated sign-ins and scattered functions into one coherent, modern interface.
The existing university app worked, technically — but the experience around it didn't. Students had to sign in separately across multiple connected university systems, frequently-used functions were either missing, repeated, or buried, and the visual design hadn't kept pace with modern mobile UI conventions. None of this was a single broken feature; it was death by a thousand small frictions.
Before touching any screens, I mapped a general user flow representing the proposed solution space in Miro — grounded in the app's actual limitations and the opportunities they created. This became the blueprint for every wireframe that followed, keeping the redesign anchored to real friction points rather than surface polish.
From limitations analysis to a Miro-mapped user flow, then low-fidelity Adobe XD wireframes and a working prototype.
Drawing on current mobile UI trends from Behance, Dribbble and Pinterest, I moved the interface to a clean black, white and grey base — with small, deliberate flashes of colour in illustrations, notifications and hover states to keep the experience from feeling flat. Lato carries the type system throughout: professional, warm and easy to read, with a clear hierarchy across headings and body copy. A mix of line and filled icons keeps the UI minimal while still guiding attention exactly where it's needed.
Every change was tied back to a specific, named problem. Four of the clearest examples:
No welcome screen, and multiple separate sign-ins required to access different university portals.
A welcome screen with a single one-time sign-in, creating one student profile recognised across university portals.
Repetitive, low-relevance options cluttered the interface, while genuinely in-demand functions weren't accessible at all.
Functions regrouped by actual usage frequency; repeat categories removed; day, date, location and weather added for practical, everyday value.
The "Alerts" feature existed but surfaced no real notifications — a dead end disguised as a feature.
A functional notification icon surfacing emails, announcements, calendar events and Teams alerts in one place.
Layout wasted screen space, with a redundant "Arrange" icon and drop-down menu adding clutter, not clarity.
Screen space reallocated around the functions that actually mattered, removing redundant controls entirely (Nielsen, 1994 usability heuristics).
The high-fidelity screens became a working Adobe XD prototype, using tap transitions to follow the mapped user flow, and time-triggered transitions for sign-in and home-screen promotional content — small interaction details designed to hold attention without becoming a distraction. Hover and toggle states were given strong contrast against their default states, so the app always signals clearly what's interactive.
Not every part of this redesign was fully solvable at the design layer, and I documented that rather than glossing over it. Integrating Microsoft Teams and the school timetable, linking the campus space-finder to the map, and enabling one sign-in across every partner site (Edge, Great Food at Leeds, and others) all require technical validation with engineering that sits outside a design prototype's reach. And critically: opening email inside the app still surfaces Microsoft Outlook's own interface, not the app's black-and-white theme — a visible seam between what the redesign controls and what it inherits from partner platforms.
Naming this distinction clearly — rather than presenting a seamless prototype that couldn't actually be built as shown — is exactly the kind of judgment this kind of role calls for: knowing what's genuinely deliverable now versus what needs engineering input before it can be promised.
This project sharpened my instinct for applying established frameworks — Nielsen's usability heuristics, the elements of UX, dimensions of interaction design — directly against real interface decisions, rather than treating them as theory. It's also where I got comfortable being transparent about a prototype's edges: a redesign that pretends away real platform constraints is a worse deliverable than one that names them plainly.
Want the full research, wireframes, storyboards and prototype video for this project?