rmhstudios.com

A single web platform: a social feed (RMHarks), ~20 browser games (several multiplayer/3D), full apps (RMHTube, RMHMusic, RMHType, RMHStudy, RMHCode, RMHLadder), a blog/news/library system, a coin economy with Stripe memberships, and a scoped developer API — served by a React SSR tier with Node realtime hubs and a Go worker fleet behind it.

This site is the rendered form of the repository’s docs/ tree. The Markdown files are the source of truth and are written for both humans and coding agents; nothing here is generated from code.

Stack of record

TanStack Start + Vite 8 + React 19 + Nitro SSR. This is not Next.js — some older design docs say otherwise and are flagged as stale below. TypeScript strict, Tailwind CSS v4, framer-motion, Zustand + React Query, PostgreSQL + Prisma 7, Better Auth (Discord/Google/GitHub + passkeys + Stripe), Socket.io Node hubs, Go microservices built with Bazel, i18next (16 locales, RTL for ar/ur).

Start here

  • Site reference — what the platform consists of, area by area, plus a generated inventory of every route, game and app.

  • Developer API — the public REST API: guides and a generated endpoint reference.

  • Codebase Overview — rmhstudios.com — canonical code-layout overview: stack, repo layout, conventions, and where to look first.

  • Runtime Architecture & Deploy Pipeline — runtime topology and the deploy pipeline: what runs where in production, images, CI, ports, auth across tiers.

  • Design Language — Radial Avant-Garde Glass — the visual system (Radial Avant-Garde Glass): the --site-* token contract, themes, primitives, motion, accessibility.

  • Testing — the test suites (Vitest main + epic, Go Bazel) and which CI workflows gate them.

  • docs/ — Index — the full annotated map of docs/, including freshness flags for every directory.

Trust order for conflicting information

Code > docker-compose.yml + deploy.sh (runtime truth) > root CLAUDE.md and the per-directory CLAUDE.md files > the reference docs below > dated design docs and plans. Those dated documents are historical snapshots: they describe intent at the time of writing, not necessarily the current code. Anything claiming Next.js or PM2 is out of date.