---
title: "Ferris 的鍛造坊"
url: "https://aigamehub.app/zh-tw/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: "解謎"
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: "zh-tw"
content_locale: "zh-tw"
---

# Ferris 的鍛造坊

一款溫馨的像素藝術瀏覽器遊戲，用來教 Rust，並以螃蟹 Ferris 作為由 Claude 驅動的教師。透過 cargo run 在本機執行，並在瀏覽器開啟 127.0.0.1:7878。

## Description

Ferris 的鍛造坊是一款教育性質的程式開發遊戲：25 座島嶼（對應 Rust Book 的每個部分）以及 187 個關卡。玩家在瀏覽器編輯器中撰寫 Rust 程式碼；程式碼會使用使用者自己的 rustc 編譯並執行，結果則透過輸出或 Ferris 的測試來檢查。Ferris 由 Claude Code 驅動，會提供提示、說明與程式碼審查，或者在未安裝 Claude Code 時，以內建提示的離線模式運作。選用的 Vim 模式會使用使用者自己的 Neovim。課程包含與 C 及 Python 的比較，以及連往該書的連結。此遊戲必須在本機執行：複製 repo、`cargo run`，瀏覽器便會開啟 http://127.0.0.1:7878，並附有一個受金鑰保護的連結。於 Linux 上開發與測試；MIT 授權。

## 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
