UI KitEvent ticket

A pass that feels like your event. Compose the cover, content, and attendee details, from a playful workshop ticket to a landscape conference pass. The QR code, reflection, and gentle motion are built in.

Open playground
afterglow

One night at the Printworks

Night
shift.

Live music. Late into the night.
When
26 June 2027Doors 19:00 BST
Where
The PrintworksLondon
Section
Balcony
Row
C
Seat
12
Save your ticketButton previews
Reserved seatingAlex MorganAG-0201 · Admit one
Check-in code for Alex MorganScan at check-in
Offscript

Design · code · craft

Off
script.

Assembly / 2027
When
19 August 202709:30–18:00 CEST
Where
The FoundryBerlin
Your booked workshopBeyond the screen11:00–12:00 · Room B2
Add to calendar
All-access delegateMaya ChenOFF-0128
Check-in code for Maya ChenScan at check-in
Elsewhere Air

A change of scenery

Lisbon/ EA 207

Gate
C14 · London Heathrow
Seat
14A · Window
LHR ───── LIS8 September 2027 · Boarding 08:35 BST
Boarding group AAvery ParkEA-207 · Economy
Check-in code for Avery ParkScan at check-in

Playground

Try it your way.

Form & Field
You’re on the list

A day for good ideas.

Workshop · your selected sessionDesigning with good constraintsHands-on · 24 places
Where
Studio 02Chapter, Cardiff
When
18 June 2027
09:00–18:00 BST

Admit one

Daniel Paul

daniel@example.com

All-day pass

FF-2027-0042

Check-in code for Daniel PaulScan at check-in

Your own React content, inside the same ticket.

Installation

React
Download files

The npm package is being prepared for its first release. For now, download the files and install the dependencies below.

npm install motion@14.9.0 qrcode.react@4.2.0

Usage

'use client'

import { EventTicket, TicketDetails, TicketDetail, TicketDisclosure } from './EventTicket'

export default function RegistrationComplete() {
  return <EventTicket
    brand="Form & Field"
    event="A day for good ideas."
    attendee="Daniel Paul"
    email="daniel@example.com"
    ticketId="FF-2027-0042"
    qrValue="https://example.com/check-in/demo-0042"
    admission="All-day pass"
    brandColor="#3453eb"
    brandMark={<svg width="28" height="28" viewBox="0 0 28 28" fill="none" aria-hidden="true"><path d="M4 22V6h9v7H4m9 9V6h11M13 14h9" stroke="currentColor" strokeWidth="2" /></svg>}
  >
    {/* Children replace the default date/venue area. Add any React content. */}
    <div style={{ display: 'grid', gap: 8 }}>
      <span style={{ fontSize: 10, color: 'var(--ticket-secondary)' }}>Your selected workshop</span>
      <strong style={{ fontSize: 20, lineHeight: 1.25, fontWeight: 550 }}>Designing with good constraints</strong>
    </div>
    <TicketDetails>
      <TicketDetail label="When"><time dateTime="2027-06-18T09:00:00+01:00">18 June · 09:00 BST</time></TicketDetail>
      <TicketDetail label="Where">Studio 02, Chapter, Cardiff</TicketDetail>
    </TicketDetails>
    <TicketDisclosure label="Programme">
      <ul style={{ paddingLeft: 16, margin: 0, fontSize: 12, lineHeight: 1.8 }}><li>09:00 — Coffee &amp; introductions</li><li>09:30 — A short talk, then make something</li><li>12:00 — Share what you’ve made</li></ul>
    </TicketDisclosure>
  </EventTicket>
}
Full setup and source

Free to use. License is MIT.