Games played by Laya
Games are the most popular way to show what a fast decision model can do. Each frame becomes a state, the model answers a typed question, and the game acts on the answer. The best demos also show where Laya needs help from ordinary code.
294 projects
NapQuest
adkbbx
Runs a 2D woodland sandbox game with local Laya AI
laya-gomoku-k3
TechyLX
Runs Laya on a SpacemiT K3 board to power a browser-based Gomoku game
laya-cuda
Banshal-Yadav
Ports Laya typed-decision inference to PyTorch CUDA with GPU and CPU acceleration
laya-rover-agent
RKJegan
Uses Laya in a safety-guarded rover navigation agent with simulation, ROS 2, and serial backends
spot-snake
Gitguy268
A browser-based snake game with an optional AI player powered by Laya through WebGPU
nothing-to-lose
p3bri4n
Simulates a zombie invasion where Laya drives zombie decisions and a local LLM guides survivors
Run one locally
Snake on a Mac from laya-mlx:
pip install 'laya-mlx[demo]'
hf download aac6fef/laya-multilingual-mlx
laya-snake
The README reports 75.40 moves/s over 2,400 moves on an M3 Max with --optimize --max-speed, with zero deaths and two visible safety interventions. laya-coreml has a Neural Engine version at 49.1 to 50.0 decisions/s.
Flappy Bird on an Intel CPU from flappy-laya-openvino-cpu, with one noul question per frame:
pip install -r requirements.txt
python flappy_bird.py
Its README reports a mean 28 ms per decision with the INT8 OpenVINO model.
More games
- laya-pong: browser Pong with a native Laya paddle at 18.7 ms p50 on Metal.
- laya-vs-jev: Laya (MLX) and Jev (API) play Chrome's T-Rex side by side.
- laya-vs-jev-arena: a snake race and a fighting game, Laya vs Jev or vs a human.
- open-jev-laya: Gomoku, Big Two and a 3D maze entirely in the browser.
- laya-playground: Flappy, a lane runner and Tetris, plus an editor.
- kevala: Tetris in the browser on WebAssembly and WebGPU.
- Laya4j: Snake and a Spring Boot Tetris in Java.
What the demos teach
- Describe the state in words. In laya-pong, the model matched the reference controller when the state was a sentence and never moved when it was three numbers. The Flappy Bird author saw the same effect: with a JSON dict the model answered about 0.9 on every frame.
- Make options phrases. "move the paddle up" beat "up" in laya-pong: 5/5 correct against 3/5.
- Keep a planner and a safety layer. The Snake and T-Rex demos use planner features and a safety layer that can override unsafe moves. Their scores measure the whole system, not the model alone, and the READMEs say so.
More ways to use Laya