Skip to content
Oeiuwq Faith Blog OpenSource Porfolio

olistic/warriorjs

🏰 An exciting game of programming and Artificial Intelligence

olistic/warriorjs.json
{
"createdAt": "2015-04-29T14:25:02Z",
"defaultBranch": "master",
"description": "🏰 An exciting game of programming and Artificial Intelligence",
"fullName": "olistic/warriorjs",
"homepage": "https://warriorjs.com",
"language": "TypeScript",
"name": "warriorjs",
"pushedAt": "2026-03-18T02:38:20Z",
"stargazersCount": 9506,
"topics": [
"ai",
"artificial-intelligence",
"battle",
"epic",
"game",
"javascript",
"js",
"learn",
"nodejs",
"sharpen",
"skills",
"test",
"warrior",
"warriorjs"
],
"updatedAt": "2026-03-19T00:55:37Z",
"url": "https://github.com/olistic/warriorjs"
}

Learn JavaScript and TypeScript by writing code that fights


In WarriorJS, you write JavaScript or TypeScript to guide a warrior through towers full of enemies. Each floor is a puzzle: battle sludge, dodge archers, rescue captives, and reach the stairs alive. The code you write is the strategy — there’s no clicking, no dragging, just logic and sharp thinking.

Whether you’re writing your first if statement or refactoring for a perfect score, every floor will test you.

  1. Install Node.js 22 or later.

  2. Install the CLI:

Terminal window
npm install --global @warriorjs/cli
  1. Launch the game:
Terminal window
warriorjs

The game walks you through creating a warrior and choosing a tower. Open the generated README.md for your first level’s instructions, write your solution in Player.js, then run warriorjs again to see how your warrior fares.

You can also play from your browser at warriorjs.com.

The official docs cover everything from first steps to building your own towers:

The best way to contribute is to build a tower — a set of levels that other players can install and play.

You can also fix bugs, improve the docs, or add new abilities and units. See the [contribution guide]!(CONTRIBUTING.md) and [Code of Conduct]!(CODE_OF_CONDUCT.md).

This project was born as a port of ruby-warrior. Credits for the original idea go to Ryan Bates.

Special thanks to Guillermo Cura for designing a wonderful [logo]!(logo).

WarriorJS is licensed under a [MIT License]!(LICENSE).