DField SolutionsMérnöki stúdió · Budapest
Loading · Töltődik
Skip to content

Solana Event

Event platform on Solana · non-forgeable tickets, QR-code check-in.

Organisers create events on Solana, attendees join, check-in is done with a QR code. The organiser sees attendees arrive in real time · all on-chain, all verifiable.

Listen
CASE STUDY · 2025

Forged paper tickets at every event door. Built a Solana-based event ticketing system. Every ticket is its own digital token, the scanner just says 'used', 'fake' or 'valid'. No debate.

Solana Event is an event-ticketing dApp on the Solana chain: organisers create events, attendees mint tickets as NFTs, the door checks them via QR. The studio shipped the Anchor program, the Vite buyer surface, and the door-side scanner.

REPO·github.com/dezso-dfield/Solana-Event-dApp-DField-SolutionsSTACK·Anchor · Rust · Vite · TypeScriptCHAIN·Solana · NFT-as-ticket
Anonymous client

We'd been having forged-ticket arguments at the door of every event for years. The studio built a system where each ticket is its own digital token on the blockchain, the scanner just says 'used', 'fake' or 'valid', and that's it. No debate, no shouting. Our door staff stopped getting yelled at, and we stopped losing real money to fakes.

Anonymous·Event organiser · ticketing co-op (under NDA)UNDER NDA
SolanaChain
QRDoor check-in
LiveAttendance dashboard
OpenRepo public

What's on screen

Frame breakdown
Solana Event · on-chain event tickets
  • 01User surface

    The whole experience the user sees

    This frame shows the live product: event platform on solana · non-forgeable tickets, qr-code check-in. Every component is ours · scope, design, code, deploy.

  • 02Stack behind the screen

    What's powering it: Anchor, Vite, Rust

    4 stack components run behind this frame · Anchor, Vite, Rust drive the visible UI; the rest sit in the data layer. All studio-owned.

  • 03What we shipped

    Event creation on Solana

    Tickets that can't be forged

  • 04Status

    Open-source reference.

    Full implementation on GitHub · forkable by anyone, auditable end-to-end.

How it shipped

Timeline
  • 01 · BRIEF

    Why fake tickets keep working.

    Paper and PDF tickets are duplicable; QR-only doesn't fix it because the QR can also be copied. Spec'd NFT-as-ticket: the chain is the source of truth · check-in burns the right or marks it spent.

  • 02 · ARCHITECTURE

    Stack decisions before any code.

    Decision doc captured the data flow, Anchor, Vite, Rust, TypeScript role split, and the failure modes we'd handle in v1 vs defer. Cross-service boundaries (where AI ends and the web app begins) were drawn here so neither side leaked into the other later.

  • 02 · BUILD

    Anchor program + Vite buyer surface.

    Anchor program holds event metadata + ticket mint authority + check-in state. Vite + TypeScript on the buyer side, also serves the door scanner. Wallet connect for both flows.

  • 04 · POLISH

    Performance, accessibility, and observability.

    PSI / a11y / coverage budgets enforced as launch gates. Logging + metrics wired before cut-over · the team can answer 'is it working?' from a dashboard, not a Slack thread. Threat-model checklist signed off before traffic hits the box.

  • 03 · SHIP

    Live attendance + open repo.

    Organiser watches arrivals in real time, attendees keep their NFT as proof of attendance afterwards. Repo public so other organisers fork it.

What shipped

04
  • 01Anchor

    On-chain ticket program in Rust

    Event creation, ticket mint, check-in, and burn semantics in one Anchor program · auditable.

  • 02Buyer

    Vite + TypeScript flow

    Wallet-connect, ticket mint, ticket display · same UI runs on phone and desktop.

  • 03Door

    Vite scanner with on-chain check-in

    Phone-grade scanner reads the QR, hits the chain, returns valid / spent / fake within seconds.

  • 04Open source

    Repo public from day 1

    GitHub-hosted · audit-ready paperwork attached for organisers who want to deploy without writing chain code.

From the video

Frame by frame
  • Solana Event dApp Devnet · Explore tab with 3 events (School of Solana, First IRL Blockchain Meetup, Onchain Bidding Event) and 'no tickets yet' panel
    01Frame

    Browse events · Devnet, organiser keys + PDA visible

    Explore tab lists devnet events with full transparency: title, organiser pubkey (`FSz84sG8RUDwj4g41USyJaf...`), event PDA, and SOL/ticket price. Right pane is empty 'no tickets yet · join an event to mint one'. The chain is the database.

  • Success toast 'Joined event & minted ticket. tx: 28cScDt...' · the new ticket appears in My Tickets with Attendee badge and Not checked-in status
    02Frame

    Mint success · ticket lands with attendee badge

    Toast confirms `Joined event & minted ticket. tx: 28cScDt...` and the right panel re-renders with the ticket: 'School of Solana Official Test Video Event' + Attendee badge + 'Not checked in' chip + Ticket account `26ekreb74zcF1gBnT65vNun3Ue06RUHKfnESw4BdkBtj`.

  • Phantom Wallet · 'Confirm Transaction' modal with QR code visible behind, Network Solana, Network Fee 0.00008 SOL
    03Frame

    Phantom confirm · network fee 0.00008 SOL

    Phantom Wallet popup ('Confirm Transaction · localhost:5173') shows the simulation status, network (Solana), fee (0.00008 SOL) and a Cancel / Confirm pair. Behind it, the just-minted QR ticket waits for the user to step away from desktop and check in at the door.

  • Solscan blockchain explorer (Devnet) loading the transaction details
    04Frame

    Solscan · independent on-chain verification

    After mint, the user can paste the tx hash into Solscan (devnet) and see the transaction independently of the dApp · the platform is verifiable end-to-end. If we shut the site down tomorrow, the ticket still exists on-chain.

2025YEAR
02SERVICES
04TECHNOLOGIES
PRIVATESTATUS

THE PROBLEM

  • Ticket fraud is a real problem
  • Paper check-in is slow and messy
  • Organisers can't see who actually came

WHAT THE CLIENT GOT

  • Tickets that can't be forged
  • Fast QR check-in
  • Live attendance count for the organiser

WHAT WE DELIVERED

  • +Event creation on Solana
  • +Non-forgeable on-chain tickets
  • +QR check-in at the door
  • +Real-time attendance view for organisers

STACK

  • Anchor
  • Vite
  • Rust
  • TypeScript
Previous projectDField Lab Next projectDField Poker
talk to us

Like what you see? Let's build yours.

Short email or a 30-min call · 24h reply.

Start a project