Veelzy
A city-cycling app for riding together: the Group Rides feature, a real-world bike-rave launch with DJ Dom Whiting, and a design system built to move fast.

Turning a solo app into a social one
Veelzy is a micromobility app for city cycling: find a bike, plan a route, and ride, with a social layer on top.
I joined as a Senior Product Designer. I owned Group Rides, the feature for riding together, and its real-world launch with DJ Dom Whiting, and I co-built the product's design system and icon library with our design lead, Serg Borisov.
Group Rides, from a focused MVP
Group Rides was one of the first big features we tackled: a way to help people ride together instead of solo.
The MVP lets a rider create a ride with a start and end point, set a time, and share an invite link. You can start solo and invite others mid-setup, then everyone navigates the same route together.
We shipped it as a focused MVP to validate the concept, with a long-term goal of merging the solo and group experiences into one seamless flow, where any ride could become a shared one, even mid-route.





A real-world test: a London bike rave
To launch Group Rides we partnered with Dom Whiting, the British DJ behind massive “bike raves” that draw up to 8,000 riders. One of his London events became the perfect real-world test case: riders registered through Veelzy, accessed every ride detail, and navigated the route together in the app.
With so many users expected, we took a deliberate approach, prioritising stability over scope and leaving room for extended testing. The goal: build small, build solid, and support not just small groups but entire moving crowds.
We amplified the event itself rather than leaning on traditional marketing, partnering with bike-rental companies and venues along the route (Forest, BrewDog) to give riders a richer experience and our partners real value.




A design system built to move fast
Under the product we rebuilt the design system from the ground up, co-built with design lead Serg Borisov.
Tokens, elements and 48 core components became the building blocks: a base layer of Text, Icon and Button, then richer patterns like Search, Selector and Input. Colour palettes were defined as themes (inverse and brand).
Everything was documented in Widgetbook for the Flutter team, so design and code stayed in sync. Development sped up by about 40% and inconsistencies vanished.

A 650-icon library
Alongside the system we drew a custom icon library: 650 icons, organised by domain (brand, vehicles, profile, maps, weather, transport and more) so the whole product spoke one visual language.


Project figures (5,000 new users from the Dom Whiting event, ~40% faster development, 48 components, 650 icons) reflect the team's reported outcomes. The design system and icon library were co-built with design lead Serg Borisov.
Group Rides was about turning a solo product into a social one, and the Dom Whiting launch was the proof: a real crowd, riding a real route, navigating through the app we had built.
The discipline was making something stable enough to hold a moving crowd, on a system solid enough to keep moving fast.
