Devlog

Building in public — what we shipped and why

Exploded Anatomy Viewer: 5 Modes + Effects

Self-contained Three.js anatomy viewer that loads racer GLBs and explodes them by DNA part category.

  • 5 explosion modes: radial, axial stack, spherical burst, layered peel, fan spread
  • Per-wheel left/right detection so tires spread outward correctly
  • Effect toggles: orbit animation, x-ray, wireframe, DNA color tinting, debug path lines
  • Solo mode isolates individual part categories with everything else fading out
  • Two sliders: category-level separation + sub-part centroid explosion

License Plate Identity System

Deterministic license plate codes derived from the full 34-digit DNA replace old numeric racer IDs.

  • Three format styles: US ('KRL 7884'), EU ('78-KRL-41'), JP ('KR 78-8411')
  • Format selected by throwaway DNA digits, characters from xorshift hash of all 17 digit-pairs
  • SVG plate component with rarity-tier border colors (Gold, Silver, Copper, Hyperglass)
  • Vehicle class glyphs on each plate for quick visual identification
  • Zero collisions across 1000 test DNAs — full DNA entropy in every character

Homepage Overhaul: Conversion Focus

Major homepage restructure putting the purchase flow front and center.

  • Consolidated checkout directly onto homepage — no separate purchase page needed
  • Moved team section below checkout since we're relative unknowns
  • Removed Google Drive embed to reduce WebGL load and improve performance
  • Cache headers, dynamic imports, image optimization for faster loads
  • Fullscreen anatomy viewer on mobile, Playwright visual regression tests added

DNA Hash Naming System

Centralized display name function derives human-readable IDs from racer DNA.

  • Single racerDisplayName() function — change once, updates everywhere
  • Unified across dashboard, collection grid, featured racers, 3D viewer, APIs
  • Global collection improved with WebP thumbnails and daily shuffle
  • Foundation for the license plate system that came next

Gift System Hardening

Fixed critical issues in gift claiming to prevent orphaned ownership records.

  • Atomic transfer of both Order and CustodyToken ownership on claim
  • Gift transfer now also reassigns the Order record to the recipient
  • Full i18n sync: all 25 language translations updated to match English copy

Mobile Performance Overhaul

Major mobile UX and performance improvements to prevent crashes and improve accessibility.

  • Reduced blockchain RPC calls with 60s refetch intervals and multicall batching
  • 44px touch targets for accessibility compliance
  • Safe-area insets for notched phones, prefers-reduced-motion support
  • Lazy-loaded WebGL iframes to prevent mobile browser crashes