Back to Design Lab

Design Lab study

Bus Ticket

An interactive ticket component study that turns a static mobile UI concept into coded motion, status patterns, ticket variants, and reusable travel-interface pieces.

Version
v1.0
Period
May 2025 to February 2026
Type
Interaction study
  • Astro
  • React
  • Tailwind CSS
  • Motion
  • Figma
  • SVG patterns
Logo

March 21, 2026

Hämeenlinna

Helsinki

7:23

8:45

bus

E58

seat

41A Window

type

Comfort

Passenger

Adult

Additional services

Present to driver for scanning

Context

Story and motivation

This ticket started as a static mobile UI concept, then moved into code so the interaction could be tested instead of only imagined. The prototype explores how travel details, ticket status, QR information, and motion can support a small but believable transit interface.

The coded version gave the design a more useful evaluation surface: the ticket can flip, tilt, expose alternate variants, and reuse the same status language across different layouts.

Original visual direction: Concept on Dribbble.

Stack

Tools

Astro, React, Tailwind CSS, Motion, Figma for ticket design and SVG assets, GitHub Copilot, Claude, and OpenAI DALL-E 3.

Variant

Alternative ticket

The one-sided ticket explores a simpler card-like structure with an animated logo and QR area. It keeps the same travel data but changes the reading rhythm and interaction surface.

Logo

October 16, 2025

Maxton

Trevorstad

21:01

00:15

bus

E58

seat

11B Window

type

Economy

Passenger

Senior

Additional services

Palette

Color-coded days

The animated logo uses a unique color for each day of the week, generated from an HSL palette. The goal is a small repeatable system for quickly distinguishing ticket days while keeping the graphic language consistent.

Color Palette Controls

Angle shift between weekdays

Color intensity

Brightness level

Monday

Tuesday

Wednesday

Thursday

Friday

Saturday

Sunday

Inactive

Status language

Pattern variants

The ticket status indicator supports multiple animated pattern variants. Each pattern creates a distinct visual identity while keeping the status area recognizable across the ticket family.

Diagonal Lines

Geometric

Star Swing

Tire Swing

Grid

Variant

Tear-off ticket

The tear-off version separates journey information from proof-of-travel details. The top portion carries the trip, while the lower section holds the QR code and status indicator.

Nordic Railroad Logo

October 18, 2025

New Cruz

Makennaport

11:33

15:48

coach

G77

seat

23A Window

type

Economy

Passenger

Senior

Additional services

Coach G77Seat 23A Window

Complimentary journey perk:

1x Free Coffee or Tea

Standard selection only

e74bc764-fef2-4124-bfa6-1a129f9af917

Redeem at Restaurant Car, Coach 3 or wait for Trolley Service

Takeaway

Learning

Designing this ticket highlighted the importance of clear hierarchy, responsive layout, and real-time status feedback. Building it as an interactive component also informed future patterns for animating state changes while keeping the interface accessible and easy to scan.

History

Timeline

The idea originated as a Figma UI concept published on Dribbble in June 2021. A revised static version followed in 2022. Development of the interactive prototype began in May 2025, producing the first flippable ticket component. The tiltable one-sided ticket was added in December 2025, and the first released version was published in February 2026.