Projects

Project Details

OrbitDesk — Space Market Intelligence 2026

OrbitDesk terminal showing a 3D globe with thousands of tracked orbital objects alongside supplier and launch market panels

Project Overview

OrbitDesk is a browser-based space-market intelligence terminal for analysts and business development teams at space companies. It puts three datasets on one console: the live orbital catalog, the commercial supplier landscape, and the launch market — each panel stamped with an epoch timestamp for data freshness and provenance.

The centerpiece is a live orbital view: 16,000+ objects propagated with a custom SGP4/SDP4 implementation running in a Web Worker at roughly 1.3 microseconds per object, streamed to three.js as zero-copy transferable buffers, and rendered in a single GPU draw call at a steady 60 fps.


Architecture

OrbitDesk is a TypeScript pnpm monorepo split into a Vite + React 18 web app, a GraphQL gateway, and a shared orbital mechanics domain package.

  • apps/web: React 18 with TanStack Router, urql, Tailwind CSS, and three.js Points rendering; a Web Worker owns SGP4 propagation so the main thread never does per-frame orbital math.
  • apps/gateway: GraphQL Yoga server with DataLoader batching, automatic persisted queries, depth limiting, and a disk-based TTL cache (TLEs for 6 hours, launches for 15 minutes).
  • packages/domain: Custom SGP4/SDP4 propagator tested against published verification vectors, with its own benchmark suite.
  • Data sources: CelesTrak GP element sets, the Launch Library 2 API, and a curated YAML supplier dataset, all normalized behind the gateway.

Performance, Accessibility & Design

  • Lighthouse: 100 accessibility on every route and 96–98 performance on four of five routes; the globe route paints in ~150 ms in real-browser testing.
  • Keyboard-first: Fully keyboard-navigable supplier search (open with /, navigate with arrow keys), URL-synced filter state, and a reduced-motion snapshot mode.
  • Cockpit aesthetic: A custom design system pairing CRT-phosphor accents with deep-space values, set in B612 — the typeface Airbus designed for cockpit displays — with colorblind-verified color tokens.
  • Tested: Unit tests across the monorepo plus Playwright end-to-end tests, with snapshot fixtures for the gateway.

Project Information

Role

Solo Developer

Type

Data Visualization / Full-Stack Web

Frontend

React 18, TanStack Router, three.js, Tailwind CSS, urql, Web Workers

Backend

GraphQL Yoga, DataLoader, persisted queries, Vercel serverless

Domain

Custom SGP4/SDP4 orbital propagation in TypeScript

Data

CelesTrak, Launch Library 2, curated supplier dataset

Links
Live DemoGitHub Repository