Clayground - Flow, Form, Create

Clayground

Flow, Form, Create

Clayground is a personal project I’ve been developing for over 5 years to keep up with Qt’s evolution while building small simulation and game apps. It’s a Qt-based toolset that combines C++, JavaScript, and QML in a sandbox environment with live-reloading.

Qt already provides a solid foundation for cross-platform development. Clayground adds specialized tools, components, and APIs that make building small interactive apps even easier - though it’s not designed to compete with full-featured game engines like Godot or Unity. The trade-off is intentional: optimized for rapid prototyping and small to medium projects on desktop, iOS, and web (via WebAssembly), not for large-scale game production.

Platformer Screenshot

Why Clayground?

  • Instant Feedback — See code changes applied immediately without restarting
  • Modular Design — Mix and match components to build your game
  • Full Control — Use high-level APIs or dive into C++/Qt when needed
  • Cross-Platform — Deploy to desktop, mobile, and web

Features

🎨 Graphics

2D canvas and 3D rendering with world coordinates

Learn more →

⚡ Physics

Box2D integration for realistic game physics

Learn more →

🎮 Input

Unified controls for keyboard, gamepad, and touch

Learn more →

🌐 Networking

P2P multiplayer and HTTP APIs for online games

Learn more →

Explore all features →

Quick Start

# Clone and build
git clone --recursive https://github.com/mistergc/clayground.git
cd clayground
cmake -B build && cmake --build build

# Run the sandbox
./build/bin/claydojo --sbx examples/void/Sandbox.qml

Press Ctrl+G in the app window to see available shortcuts.