COMMAND HUB // IDENTITY LAYER
OR
?
LOADING...
LOGOUT
SYSTEMS ONLINE PROBE� ? GRUDGE ID ?? WARLORDS ? RACALVIN THE PIRATE KING

Grudge Studio Command Hub

grudge.studio is the canonical hub — grudgeDot launcher merged here for deploy. Accounts · Wallet · Treaty · Forge · fleet games. One truth: Railway Postgres characters/account · ObjectStore definitions · R2 assets.

FLEET
ONE TRUTH
ID
GRUDGE AUTH
PG
RAILWAY SSOT
CHARS LOADED
?
SOLANA
?
RAILWAY LIVE
YOUR CHARACTERS
RAILWAY POSTGRES
Sign in with Grudge ID to load characters�
FLEET TOOLS
SIGN IN FOR ACCOUNT DATA
QUICK ACCESS
ACCOUNTS · GRUDGE ID
IDENTITY HUB · RAILWAY SSOT

One Grudge ID per human · many characters · account bag shared across games. Auth via id.grudge-studio.com · player state on Railway Postgres.

WALLET · WAR CHEST
RAILWAY /api/wallet · ACCOUNT SCOPE

Solana wallet + GBUX live on Railway account scope (not character). Phantom external or Crossmint custodial.

GBUX
Fleet currency
GOLD / RESOURCES
Account bag
WALLET TYPE
status
SOLANA ADDRESS
📋 Copy
TREATY · FLEET SOCIAL
ACCOUNT-SCOPED · RAILWAY /api/treaty

Friends, DMs, groups, and fleet server chat keyed to Grudge ID account (not character). Same social graph in every game. History stays on Railway Postgres.

OPEN FULL APP → EMBED
Select a channel or sign in.
FORGE · STUDIO EDITOR
forge.grudge-studio.com

Canonical 3D scene / map / effects editor. Loads ObjectStore definitions + R2 assets. Open Forge with SSO-friendly return to this hub via ?from=grudge.studio.

PUTER APPS
61 APPS
LIVE DEPLOYMENTS
PRODUCTION FLEET + PUTER

Canonical production origins (not Vercel deploy-hash URLs). Forge + games + studio tools first; Puter apps secondary.

FLEET ONE TRUTH
PRODUCTION 2026

Production endpoints (do not invent parallel SSOT)

This hub (grudge.studio) same-origin /api/* rewrites to Railway + ID.

ROLEHOSTSSOTNOTE
Hub (grudgeDot) grudge.studio Portal Accounts · wallet · Treaty · Forge entry · deploy map
Auth id.grudge-studio.com JWT / SSO /login?redirect_uri= → Railway auth impl
Game data grudge-api-production-0d46.up.railway.app Postgres characters · account bag · island · wallet · treaty
Forge editor forge.grudge-studio.com Studio 3D scene/map/effects · ObjectStore + R2
Definitions objectstore.grudge-studio.com/api/v1 JSON recipes, items, races — not player state
Binaries assets.grudge-studio.com R2 icons, GLB, audio, grudge-fleet.js
AI ai.grudge-studio.com Workers + Puter AI (user-pays)

Retired / never use as player SSOT

BADWHYUSE INSTEAD
api.grudge-studio.com Split-brain — not Railway characters same-origin /api/* → Railway
MySQL 8 on VPS Legacy docs only Railway Postgres
D1 for islands/chars Asset registry only Railway home_islands
Puter KV as sole truth Cache only Railway + optional KV mirror
*.vercel.app deploy hashes Per-deploy instances stable *.grudge-studio.com aliases

Scope matrix (account vs character)

# Account scope — shared bag across all characters GET /api/account GET /api/account/resources GET /api/account/inventory GET /api/wallet GET /api/treaty/* # friends · DMs · groups · servers # Character scope — UUID primary key, profession XP, equipment GET /api/characters?era=warlords GET /api/characters/:id POST /api/characters/:id/progress # expectedRevision # Auth handoff from id.grudge-studio.com ?grudge_token=… → POST /api/auth/grudge-bridge { token, audience } ?sso_token=… or ?token=… → store as grudge_auth_token

Live product links

Hub https://grudge.studio Warlords https://grudgewarlords.com Forge https://forge.grudge-studio.com Crafting https://grudge-crafting.puter.site GCS https://character.grudge-studio.com Client https://client.grudge-studio.com Fleet map https://fleet.grudge-studio.com GRUDOX https://grudox.grudge-studio.com GameOpen https://gameopen.vercel.app # Probe health curl https://grudge.studio/api/health curl https://grudge-api-production-0d46.up.railway.app/api/health

Deploy this hub (grudgeDot → grudge.studio)

# Repo: MolochDaGod/grudgedot-launcher # Vercel project: grudgedot-launcher (team grudgenexus) # Production aliases: grudge.studio · www.grudge.studio · dev.grudge-studio.com npm run vercel-build # vite build + promote portal → index.html vercel deploy --prod --scope grudgenexus # SPA (React grudgeDot) remains at /app → app.html # Forge stays external: forge.grudge-studio.com
TECH STACK & DEPENDENCIES
RAILWAY · VERCEL · CF

??? Backend Services (Docker Compose)

SERVICECONTAINERPORTURL
Grudge Identitygrudge-id3001id.grudge-studio.com
Wallet Servicewallet-service3002(internal only)
Game APIRailwaygrudge-api-production-0d46
AI GatewayCF Workerai.grudge-studio.com
Account / charsRailway/api/account · /api/characters
Command HubVercelgrudge.studio (grudgeDot)
ForgeVercelforge.grudge-studio.com
Colyseus WSRailwaywss://grudge-api-production-0d46…
PostgresRailwaycharacters · account · islands SSOT
ObjectStoreWorkerobjectstore.grudge-studio.com

?? Core Dependencies

PACKAGEPURPOSELAYER
Node.js 20Runtime for all backend servicesBackend
Express.js 4REST API framework for all servicesBackend
Socket.IO 4.7WebSocket � /game, /crew, /global, /pvp namespacesBackend
pg / drizzleRailway Postgres — player SSOTBackend
ioredisRedis 7 client � rate limiting, pub/sub, cachingBackend
jsonwebtokenJWT auth (issued by grudge-id, verified everywhere)Backend
bcryptjsPassword hashing for local authBackend
ColyseusMultiplayer game server framework (headless-server)Game Server
BabylonJS3D engine for game clientsFrontend
React 19UI framework for Vercel-deployed frontendsFrontend
Three.js3D rendering for web game clientsFrontend
Web3AuthSolana wallet authentication (JWKS-verified)Auth
@solana/web3.jsSolana blockchain interactionWeb3
Crossmint SDKServer-side custodial wallets + cNFT mintingWeb3

?? Infrastructure & DevOps

TOOLPURPOSESTATUS
Docker ComposeContainer orchestration for all servicesACTIVE
CoolifySelf-hosted PaaS on VPS (deploy management)ACTIVE
TraefikReverse proxy � TLS termination, routingACTIVE
Cloudflare WorkersEdge compute � site, dashboard, R2 CDN, auth-gatewayACTIVE
Cloudflare R2S3-compatible object storage for game assetsACTIVE
Cloudflare KVEdge key-value � status caching, rate limitingACTIVE
VercelFrontend deployments (all game clients + apps)ACTIVE
GitHub ActionsCI/CD � lint, test, deploy on pushACTIVE
PM2Process manager for non-Docker Node servicesAVAILABLE
Wrangler CLICloudflare Worker deploy toolACTIVE

?? AI & Tooling

SERVICEUSE CASEINTEGRATION
Claude (Anthropic)Character generation, story AI, code assistServer-side API
Gemini (Google)AI console, NPC dialogue, fast inferenceServer-side API
OpenAI / DALL-EImage generation for characters, islandsServer-side API
Puter AIClient-side AI (user-pays model, $0 cost)Client SDK
Meshy / TripoText-to-3D voxel model generationServer-side API
Twilio VerifySMS OTP for phone authenticationServer-side API

?? Game Server Stack

COMPONENTPURPOSEPORT / URL
Colyseus ServerAuthoritative multiplayer rooms (combat, islands)7777 (internal)
Socket.IO /gameIsland rooms � real-time player movement, eventsws.grudge-studio.com
Socket.IO /crewCrew chat + coordinationws.grudge-studio.com
Socket.IO /globalServer-wide broadcasts (kills, claims, events)ws.grudge-studio.com
Socket.IO /pvpPvP matchmaking + arena statews.grudge-studio.com
Redis Pub/SubCross-process event bridge for WS namespaces6379 (internal)
ObjectStore APIStatic game data (weapons, armor, recipes, races)GitHub Pages

?? Auth Providers

PROVIDERENDPOINTSTATUS
Email / PasswordPOST /auth/login + /auth/registerLIVE
Discord OAuthGET /auth/discord ? callbackLIVE
Google OAuthGET /auth/google ? callbackLIVE
GitHub OAuthGET /auth/github ? callbackLIVE
Web3Auth (Phantom)POST /auth/walletLIVE
Puter CloudPOST /auth/puterLIVE
Phone SMS (Twilio)POST /auth/phone-send + /phone-verifyLIVE
Guest (Device ID)POST /auth/guestLIVE
SSO CookieGET /auth/sso-checkLIVE
AI COMMAND CONSOLE
GRUDGE AI
GRUDGE AI // Grudge AI Backend
? GRUDGE AI CONSOLE INITIALIZED
? GRUDGE AI API connected
? Context: Grudge Studio | Owner: Racalvin The Pirate King
Stack: Grudge ID · Railway Postgres · ObjectStore · R2 · Puter · Vercel
? Ready � type a command or use shortcuts above
GRUDGE ?