A JavaScript library that embeds a GUI agent in any web page, letting users control the interface with natural language.
Mugen87/yuka
A standalone JavaScript library for game AI, covering steering, navigation meshes, perception, fuzzy logic and state-driven agents.
- Stars
- 1,385
- Forks
- 106
- Open issues
- 6
- Last commit
- 16 days ago
What is it?
Yuka is a JavaScript library for building game AI. It gives game entities a basic structure and provides classes for state-driven and goal-driven agent design, so developers can give characters decision-making logic without writing it from scratch.
For movement, Yuka includes a vehicle model with built-in steering behaviors, and graph classes, search algorithms and a navigation mesh implementation for path finding. Entities can also have a short-term memory and a vision component for perception, trigger objects that fire actions in a game, and a fuzzy inference system for more nuanced decisions. Game state can be saved and restored through a JSON-based serialization API.
Yuka is independent of any particular 3D engine, so it can be used alongside frameworks such as Three.js or with custom rendering code.
Key features
- 01State-driven and goal-driven agent design classes
- 02Vehicle model with built-in steering behaviors
- 03Graph, search algorithms and navigation mesh for path finding
- 04Perception with short-term memory and vision component
- 05Fuzzy inference system and JSON-based save/load
Use cases
- Adding autonomous movement and steering to NPCs in a browser game
- Path finding across a navigation mesh in a 3D scene
- Building decision logic for enemies with state machines or goals
- Saving and restoring the state of a game world
Quick start
- 1
Clone the repository
- 2
Install dependencies and start the local examples server
npm install && npm start
Things to know
- The README does not mention a dedicated install path beyond the repository and npm scripts, so usage as a package requires checking the npm package page.
- Documentation and examples are hosted on an external website.
Topics
FAQ
- What is yuka?
- A standalone JavaScript library for game AI, covering steering, navigation meshes, perception, fuzzy logic and state-driven agents. Yuka is a JavaScript library for building game AI. It gives game entities a basic structure and provides classes for state-driven and goal-driven agent design, so developers can give characters decision-making logic without writing it from scratch.
- Is yuka free to use? What license does it have?
- yuka is open source under the MIT license. Check the license terms before using it in commercial products.
- Is yuka still maintained?
- Actively maintained. The last commit to yuka was on Oct 4, 2026.
- What can I use yuka for?
- Adding autonomous movement and steering to NPCs in a browser game Path finding across a navigation mesh in a 3D scene Building decision logic for enemies with state machines or goals Saving and restoring the state of a game world
- How do I install yuka?
- Clone the repository Install dependencies and start the local examples server: npm install && npm start
- Where can I get yuka?
- The source code and installation instructions are on GitHub: https://github.com/Mugen87/yuka
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A TypeScript framework for building AI agents and LLM-powered applications, with workflows, tools, memory, MCP servers, and evals.
A bridge that lets AI assistants like Claude, Cursor or VS Code control the Unity Editor through the Model Context Protocol.
An MCP server that lets AI agents launch the Godot editor, run projects, capture debug output, and manage scenes.
A modular web UI for AI image, video and audio generation, built on Stable Diffusion, Flux, Wan and other models, with a ComfyUI workflow tab.
Unity Editor and runtime plugin and MCP server that lets AI agents like Claude, Cursor and Copilot operate Unity projects and run LLMs inside games.