🏰 An exciting game of programming and Artificial Intelligence
AI Analysis
WarriorJS is an educational game where players learn JavaScript and TypeScript by writing code that guides a warrior through puzzle-filled towers with enemies, obstacles, and NPCs. It serves learners from beginners writing their first conditionals to intermediate developers seeking practice; it is not suitable for production systems or performance-critical applications.
Inferred from signals mentioned in the README (tests, CI, type safety) — not a review of the actual code.
AI's overall editorial judgment — not an average of the bars above, can weigh other factors too.
WarriorJS teaches JavaScript and TypeScript through a terminal-based dungeon-crawler game
WarriorJS is a code-learning game where players write JavaScript or TypeScript logic to navigate a warrior through multi-floor towers filled with enemies and puzzles. It targets beginners and intermediate developers learning programming fundamentals through immediate, playful feedback. Built as a CLI tool with an optional browser interface, it also allows community members to author custom towers. The project has a long track record since 2015, nearly 9,500 GitHub stars, and appears to still receive maintenance commits as recently as March 2026.
Originated in 2015 as a TypeScript/JavaScript port of Ryan Bates' ruby-warrior. Has evolved from a single-package CLI into a monorepo architecture with extensible tower support and a companion web experience at warriorjs.com.
The project accumulated most of its stars during the 2015–2019 era when gamified coding education was trending. Star velocity has since slowed significantly — gaining only 1 star in the last 7 days — suggesting the project has plateaued in mainstream visibility. However, it retains a stable base and occasional new commits, indicating it has transitioned from growth mode to maintenance mode.
Adoption not verified in production/professional settings. The project is a learning game, so 'production use' is not a meaningful metric — it is intended for individual educational use. Browser version at warriorjs.com suggests some hosted traffic, but scale is unknown.
Likely a monorepo structure (based on the scoped npm packages like @warriorjs/cli referenced in README) with separate packages for CLI, core engine, and towers. Appears to support both local CLI play and a browser-hosted version, suggesting a decoupled game engine layer. Extension via community-built towers implies a plugin-style API.
Codecov badge is present in README, indicating test coverage is measured and tracked, though the exact percentage is not stated in the README excerpt.
Last push was March 27, 2026 — roughly 3 months before the evaluation date — indicating the project is actively maintained at a low-frequency cadence. CI badge references GitHub Actions. This is slow but not stagnant; it appears to receive periodic upkeep without rapid feature expansion.
ADOPT IF: you want a self-contained, offline-capable, terminal-native way to teach yourself or others JavaScript/TypeScript fundamentals through game logic without requiring a paid platform. AVOID IF: you need a structured curriculum with progress tracking, instructor tooling, or collaborative classroom features — WarriorJS lacks these. MONITOR IF: you are an educator or developer-relations professional exploring gamified learning tools; the extensible tower system could become more useful if the community around custom towers grows.
Independent dimensions
Mainstream potential
3/10
Technical importance
5/10
Adoption evidence
3/10
- Very low recent star velocity (1 per week) suggests declining organic discovery and community momentum.
- Single primary maintainer risk: the project appears to be sustained by one person (olistic), with no evidence of a broader maintainer group.
- The educational gaming space is crowded with well-funded alternatives (CodeCombat, Codewars, etc.) that may attract learners who might otherwise discover WarriorJS.
- No documented community tower ecosystem size — the extensibility feature may be underused in practice, limiting replayability.
- Node.js 22 requirement (per README) may be a friction point for users on older environments, though this also reflects a healthy commitment to modern tooling.
WarriorJS will likely remain a stable niche tool for JS/TS learners who prefer terminal-based, game-driven education. It is unlikely to recapture significant growth momentum but may persist as a well-regarded entry in its category for years.
Newsletter
Get analyses like this every Monday
Free weekly digest of the most interesting open-source discoveries.
Languages
Information
- Website
- https://warriorjs.com
- Language
- TypeScript
- License
- MIT
- Last updated
- 4mo ago
- Created
- 136mo ago
- Analyzed with
- anthropic/claude-haiku-4-5
Stars over time
Contributors over time
Top 100 contributors only — repos with more will plateau at 100.
Open issues
Please help me with the algorithm of moves leading to victory in this 9th level on the map "Tick, Tick... Boom!"!
Error: No files matching the pattern "packages/**/src" were found
I cannot sign in or create an account for the online platform
Watch for Player.js changes and run
Korean Translation
Top contributors
Recent releases
No releases published yet.
Similar repos
codecombat/codecombat
CodeCombat is a multiplayer programming game designed to teach coding through...
excaliburjs/Excalibur
Excalibur is a free, open-source 2D game engine written in TypeScript for HTML5...
microsoft/generative-ai-with-javascript
A Microsoft educational course teaching Generative AI fundamentals through...
| Repository | Stars | Week Δ | Language | Score | Updated |
|---|---|---|---|---|---|
|
|
9.5k | +1 | TypeScript | 8/10 | 4mo ago |
|
|
8.5k | — | JavaScript | 7/10 | 7h ago |
|
|
2.8k | — | JavaScript | 8/10 | 4d ago |
|
|
2.3k | — | TypeScript | 7/10 | 1w ago |
|
|
1.2k | — | JavaScript | 7/10 | 5mo ago |
|
|
1.6k | — | TypeScript | 7/10 | 4w ago |
CodeCombat (8,512 stars) is a browser-based coding game with a structured curriculum and commercial backing, targeting a similar audience. WarriorJS is CLI-first, offline-capable, and open for custom towers, making it preferable for developers comfortable in a terminal environment.
Excalibur is a TypeScript game engine for building games, not a learning game itself. The audiences barely overlap; comparison is not meaningful.
AtCoder Problems is a competitive programming tracker, not a learning game. Different audience (competitive programmers vs. beginners learning JS).
Microsoft's secure-code-game targets security education specifically. WarriorJS targets general JS/TS programming logic. Different educational focus with minimal overlap.
WarriorJS is a direct descendant of ruby-warrior. For Ruby learners, ruby-warrior is the equivalent; WarriorJS fills the same niche for the JavaScript ecosystem.