[BACK_TO_PRODUCTS]
Betav0.1// Game / Agentic Coding
Hollow Lullaby logo

Hollow Lullaby

Game agentic coding — Rust · Bevy · Lua.

A Bevy game whose gameplay is authored by agents. Rust engine, hot-reloadable Lua logic and a command-buffer pattern that lets an AI iterate on live game behavior.

> cat ./overview.md

Hollow Lullaby is a 2D game built in Rust on the Bevy engine (v0.19), with gameplay scripted in hot-reloadable Lua 5.4 via mlua. It targets macOS for development and iOS for deployment.

The architecture separates the engine from the logic: Bevy owns the ECS, rendering and input, while Lua defines per-frame behavior through lifecycle callbacks (`on_start`, `on_update`). Rather than mutating the ECS directly, Lua queues commands the Rust core drains each frame — a clean command-buffer boundary.

That boundary is what makes it a testbed for agentic coding: an AI agent reads engine state and issues scripted commands back, and hot reload means edits to the Lua behavior take effect instantly — the tight iteration loop agent-driven development depends on.

> ls ./features

Rust + Bevy Engine

Bevy 0.19 ECS handles rendering, windowing, input and the game loop in native Rust.

Hot-Reloadable Lua

Edit the Lua behavior script and changes take effect immediately — no rebuild.

Command-Buffer Boundary

Lua queues commands the Rust core processes each frame — a safe, agent-friendly interface to the ECS.

Agent-Driven Iteration

An AI agent reads state and writes scripted behavior back, closing the loop for agentic game development.

Cross-Platform

macOS for development, iOS for deployment via a static Rust library linked into a UIKit app.

One-Command Builds

`make run` for desktop, `make ios-run` for the simulator — friction-free iteration.

> open ./screenshots

Hollow Lullaby concept — atmospheric 2D scene beside a hot-reloading Lua panel
// concept: atmospheric scene + agent-driven Lua hot reload

> cat ./stack.json

{

"name": "Hollow Lullaby",

"category": "Game / Agentic Coding",

"stack": [

"Rust",

"Bevy 0.19",

"Lua 5.4",

"mlua",

"iOS / UIKit"

]

}