Skip to content

Repository files navigation

🇪🇸 Español

GeodeInGeometrydashDOTcom

Geometry Dash running in the browser with mod support inspired by the Geode SDK.

A web port of the game that integrates a functional mod system with persistence, custom settings, live icon preview, and more. Built with Phaser, served as a static site.


✨ Features

  • 24 official levels included with music
  • Full mod system: toggle on/off, configurable settings, dependencies
  • Mods overlay with Geode SDK-styled UI
  • MoreIcons: 485 cube icons with navigation, GD palette color picker, glow, custom URL icons, GD profile import
  • FPS Lock: configurable FPS limiter (10-240)
  • Click Between Frames: input capture between frames
  • MenuMusic: custom menu music
  • Online level loading via Cloudflare Workers + Service Worker
  • localStorage persistence (active mods and settings)

🚀 How to Use

  1. Open GeodeInGeometrydash.com
  2. Click the mods icon (top right)
  3. Toggle the mods you want
  4. Each mod has its own settings panel

URL Parameters

ParameterDescription
?id=Level ID
?string=Level string (custom level)
?songID=Song ID (default: 500476)

🎮 Mods Included

ModVersionDeveloperPort
ClickBetweenFrames1.0.0syzzidanteelgamer_YT
ExampleMod1.0.0danteelgamer_YT
LockFPS1.0.0danteelgamer_YT
MoreIcons1.0.0hiimjasmine00danteelgamer_YT
MenuMusic1.0.0danteelgamer_YT
ProfileInMainMenu

🛠 How to Create a Mod

Each mod lives in mods/<ID>/ and needs:

mods/<ID>/
├── Mod.js # Mod config (name, version, developer, code)
├── settings.js # Configurable settings (toggle, range, select, color, etc.)
├── code.js # Mod logic (accesses the game loop via window.__phaserGame)
├── need.js # (optional) Dependencies on other mods
├── icon.png # (optional) Mod icon
└── assets/ # (optional) Additional resources

Available setting types: toggle, range, text, number, select, color, gd-color, image-url, keybind, icon-grid, profile-import.

Check the ExampleMod as a template to get started.


🧩 Available APIs for Mods

APIDescription
window.__gameCentral game API with events, accessors, and state detection
window.__game.eventsEventEmitter: on("game-ready"), on("player-spawn"), on("player-death"), on("menu"), on("gameplay"), on("pause"), on("resume"), on("level-complete"), on("update")
window.__game.getScene()Get the active game scene
window.__game.getPlayer()Get the current player object (or null)
window.__game.isInMenu()true if currently in the main menu
window.__game.isPaused()true if the game is paused
window.__game.getSettings(id)Get settings values for any mod
window.__phaserGamePhaser.Game instance
window.__fpsLimitFPS control (enable/disable/setTarget)
window.__modOnSettings[]Settings callback array (push your handler)
window.__modCleanupCleanup array (push your cleanup functions)
window.__getSettings(id)Global settings helper
localStoragePersistence

📦 Project Structure

GeodeInGeometrydash.com/
├── index.html # Entry point + mod system + game canvas
├── worker.js # Service Worker (levels + music proxy)
├── favicon.ico
├── assets/ # Phaser game engine, spritesheets, levels, music
├── GeodeAssets/ # Geode UI resources (spritesheets, fonts, sounds)
├── Icons/ # 677 GD icons (cube, ship, ball)
├── mods/ # Installed mods
├── font/ # Pusab font
├── READMEimg/ # README images

🌐 Infrastructure

  • Phaser (game engine)
  • Cloudflare Workers (level and song proxy):
    • getleveldata.lasokar.workers.dev
    • getlevelsong.lasokar.workers.dev
    • fetchsongid.lasokar.workers.dev
  • Service Worker for request interception
  • No build step — pure static site

📄 Licenses

  • Geode SDK: BSL v1.0 (Business Source License)
  • MoreIcons: MIT License (by hiimjasmine00)
  • Rest of the project: contact the author

👤 Author

danteelgamer_YT


🙏 Credits

  • Geode Team: HJfod, Alk1m123, Mat, ConfiG, Cvolton, Camila314, zmx, PoweredByPie, fig, FireCubez and contributors
  • RobTop Games for Geometry Dash
  • hiimjasmine00 for the original MoreIcons mod
  • syzzi for the original Click Between Frames
  • lasokar for the Cloudflare Workers proxy

Releases

Sponsor this project

Contributors

Languages