{
  "id": 9178443,
  "title": "title: We Built a Full Game IDE in a Browser Tab and Our CPU Barely Complained",
  "url": "https://urgent.news/2026/09/22/title-we-built-a-full-game-ide-in-a-browser-tab-and-our-cpu-barely",
  "topic": "tech",
  "section": "Tech",
  "published": "2026-09-22T19:01:06.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/evolvedtech_27a34e6a5cf9/title-we-built-a-full-game-ide-in-a-browser-tab-and-our-cpu-barely-complained-5efd"
  },
  "original_language": "en",
  "account": "We assembled a complete game development Integrated Development Environment (IDE) within a single browser tab and the CPU barely noticed the strain. This is the inside story of the project, told by the team at Evolved Tech, known for their browser-based game IDE, Limn Studio.\n\nThe process started with the editor shell, a single HTML file containing no frameworks, build steps, or bundlers. This simple structure helps avoid the problems that come with additional dependencies and ensures the IDE will still run many years from now. The layout consists of four zones: a top bar, tabs, main content, and a floating action button.\n\nNext, the focus shifted to the code editor. To save on resources, the team created a 400-line vanilla JavaScript implementation instead of using a professional editor like Monaco. This code editor uses a tokenizer to break the code into various spans and a textarea for text input. A bracket analyzer highlights any unclosed curly braces, and a minimap provides a compressed view of the entire file.\n\nThe console is another standout feature, offering color-coded log levels, a real Read-Eval-Print Loop (REPL), and message batching to avoid hogging system resources. It even allows you to type commands like player.speedX = 500 during gameplay.\n\nFinally, the heart of the project is the engine, epic.js. This canvas engine was built from scratch alongside the IDE and is responsible for running the games. The engine follows a simple rule: each game must have an update(dt) function, ensuring consistent movement across different systems. A recent update focused on optimizing the animation system, drastically reducing the CPU load and resulting in smoother gameplay.",
  "summary": "We Built a Game IDE in the Browser and Lived to Brag About It Hey, we're Evolved Tech — the crew behind Limn Studio , a browser-based game IDE where you can build, run, and publish 2D games without installing a single thing. No npm. No webpack. No 45-minute node_modules folder that somehow weighs more than the actual game. Just us, a browser, a questionable amount of caffeine, and an unreasonable…",
  "key_points": [
    "Single HTML file IDE with no frameworks or bundlers",
    "400-line vanilla JavaScript code editor with tokenizer and analyzer",
    "Epic.js canvas engine optimized for consistent game movement"
  ],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}