---
title: "Ferris' Forge"
url: "https://aigamehub.app/en/games/ferris-forge"
source: "https://github.com/wanikhawar/ferris-forge"
source_type: "github"
play_url: "https://github.com/wanikhawar/ferris-forge"
platform: "desktop"
login_required: false
pricing: "free"
origin: "original"
ai_tools: ["Claude"]
game_languages: ["en"]
play_mode: "source"
repository: "https://github.com/wanikhawar/ferris-forge"
license: "MIT"
author: "wanikhawar"
author_handle: "wanikhawar"
category: "Puzzle"
categories: ["puzzle", "text-ai"]
tags: ["ai-tutor", "coding-game", "educational", "local-host", "pixel-art", "rust"]
added: "2026-10-10T12:53:05.495Z"
updated: "2026-10-10T12:53:05.496Z"
locale: "en"
content_locale: "en"
---

# Ferris' Forge

A cozy pixel-art browser game that teaches Rust, with Ferris the crab as a Claude-powered teacher. Runs locally via cargo run and opens in the browser at 127.0.0.1:7878.

## Description

Ferris' Forge is an educational coding game: 25 islands (one per part of the Rust Book) and 187 levels. Players write Rust code in the browser editor; the code is compiled and run with the user's own rustc, and results are checked by output or by Ferris' tests. Ferris, powered by Claude Code, gives hints, explanations and code reviews, or works in offline mode with built-in hints if Claude Code is not installed. Optional Vim mode uses the user's own Neovim. Lessons include comparisons with C and Python and links to the book. The game must be run locally: clone the repo, `cargo run`, and the browser opens at http://127.0.0.1:7878 with a key-protected link. Developed and tested on Linux; MIT licensed.

## Original post

A cozy pixel-art game that teaches Rust, with Ferris the crab as a Claude-powered teacher

Topics: ai-tutor, axum, browser-game, claude, coding-game, educational-game, ferris, interactive-tutorial, learn-rust, neovim, pixel-art, programming-game, rust, rust-book, rust-lang, rust-tutorial

<p align="center"> <img src="docs/images/banner.png" alt="Ferris' Forge: Ferris the crab and two crab friends dancing on a pixel-art beach, under a rusty wooden sign"> </p> <h1 align="center">Ferris' Forge</h1> <p align="center"> <b>A cozy pixel-art game that teaches Rust from the ground up.</b><br> 25 islands · 187 levels · the whole Rust Book · a real compiler · and Ferris the crab as your teacher, powered by Claude. </p> <p align="center"> <img src="docs/images/crew.png" width="420" alt="Ferris and his two crab friends"> </p> ## Play You need [Rust](https://rustup.rs) (the game compiles your code with your own `rustc`). For Ferris to talk, you also need [Claude Code](https://claude.com/claude-code); without it, switch Ferris to offline mode in Settings and he gives built-in hints. [Neovim](https://neovim.io) is optional, for Vim mode. ```bash git clone https://github.com/wanikhawar/ferris-forge cd ferris-forge cargo run ``` Your browser opens the game at http://127.0.0.1:7878. Press Ctrl+C in the terminal to quit. The link the game opens (and prints in the terminal) ends in `#key=…`. The game runs Rust code and Neovim for whoever uses its API, so the API only answers pages that have this key; other programs and other users on your computer can't. Your browser remembers it, so later you can just open http://127.0.0.1:7878. In a new browser or a private window, use the printed link once. The key is kept in `save/game.key`, readable only by you; delete that file to make a new one. Developed and tested on Linux. ## A look around <table> <tr> <td width="50%"><img src="docs/images/map.png" alt="The world map: 25 islands, one for each part of the Rust Book"><br><b>The world map.</b> 25 islands, each a part of the Rust Book. Clear an island's boss to unlock the next.</td> <td width="50%"><img src="docs/images/level.png" alt="A level: code on the left, Ferris and his hints on the right"><br><b>A level.</b> Code on the left, Ferris on the right. Hints, explanations and code reviews come from Ferris.</td> </tr> <tr> <td width="50%"><img src="docs/images/console.png" alt="The console showing that all of Ferris' tests passed"><br><b>Real results.</b> Your code is compiled and run with <code>rustc</code>, and checked by its output or by Ferris' tests.</td> <td width="50%"><img src="docs/images/lesson.png" alt="A lesson popup with Rust, In C and In Python tabs"><br><b>Lessons.</b> A short lesson for every level, with how it compares to C and Python, and a link to the book.</td> </tr> <tr> <td width="50%"><img src="docs/images/vim.png" alt="The editor in Vim mode, with lines selected in visual-line mode"><br><b>Vim mode.</b> Edit with your own Neovim and your own config, running invisibly behind the editor.</td> <td width="50%" align="center"><img src="docs/images/moods.png" alt="Ferris in seven moods: idle, happy, talking, thinking, worried, excited and sleepy"><br><b>Ferris has moods.</b> He thinks while you compile, worries when it breaks, and dances when
