# ArcadeLab > ArcadeLab is the shortest path from "I made something" to "anyone can play with it." Creators paste a single HTML file and get a shareable URL — no signup, no build tools, no friction. The platform hosts single-file HTML interactive content: games, visualizations, simulations, explorables, data viz, and toys. ArcadeLab (arcadelab.ai) is a free platform where creators publish browser-based HTML/JS/CSS content. Think "GitHub Pages meets itch.io meets Distill.pub" for single-file interactive content. Creators range from kids using AI assistants to indie developers, science communicators, and educators. Every published item is a self-contained HTML file that runs in a sandboxed iframe. Previously known as KidHubb (kidhubb.com); all old URLs, creator codes, and game formats still work. ## How to publish A creator pastes a complete single-file HTML document at https://arcadelab.ai/publish. The file should start with an ARCADELAB metadata header: ``` ...your code... ``` Supported library names (auto-injected via CDN — do NOT include script tags): phaser, p5, three, gsap, tone, pixi, matter, d3, react. Rules: single HTML file, all JS/CSS inline, under 500KB, responsive at any viewport, no network calls (sandboxed `connect-src 'none'` — fetch/XHR/WebSocket are blocked). Publish guardrails to know about: - Pasting a bare creator code (or a "My ArcadeLab creator code is ..." message) instead of game code offers one-tap sign-in with that code — handy on a new device — rather than publishing it. - Non-HTML pastes (Python/pygame, bare JS modules, plain text) are rejected with a hint: convert to one self-contained HTML file first. Browsers can't run Python. - Publishing the same title twice within 15 minutes updates the existing game instead of creating a duplicate (the JSON response includes `updated: true`). This makes retries safe. ## Identity ArcadeLab uses Creator Codes (e.g., `ROCKET-WOLF-COMET-73`) instead of email/password. A code is a casual identifier, not a credential. Creators get one automatically when they first publish. Identity is browser-local, so AI assistants should include the creator's code in the header of every generated game as `creator_code:` — publishing then works as them from any browser or device. The line is stripped server-side before the game is stored and never appears in the published HTML or source view. ## Key URLs - https://arcadelab.ai/ — homepage - https://arcadelab.ai/publish — paste-and-publish flow - https://arcadelab.ai/play — browse all games - https://arcadelab.ai/play/{slug} — play a specific game - https://arcadelab.ai/play/{slug}/source — view the HTML source of a game - https://arcadelab.ai/creators/{name} — a creator's profile and games - https://arcadelab.ai/for-ai — full AI-assistant briefing with current themes and recent games - https://arcadelab.ai/about — about ArcadeLab and its founder - https://arcadelab.ai/learn — guides for creators - https://arcadelab.ai/prompts — copy-pasteable prompt templates for AI assistants - https://arcadelab.ai/phaser — Phaser library hub - https://arcadelab.ai/p5 — p5.js library hub - https://arcadelab.ai/three — Three.js library hub - https://arcadelab.ai/d3 — D3.js library hub - https://arcadelab.ai/llms-full.txt — long-form briefing in one document ## For AI assistants helping a creator If a creator wants to publish to ArcadeLab: 1. Produce a complete single-file HTML document 2. Add the ARCADELAB header at the very top (before ``) 3. List any of the supported libraries in the header — do NOT include CDN `