Skip to content

A JRPG battle game with a coding theme (our entry for the Boot.dev Hackathon 2025) - 2nd place winners!

Notifications You must be signed in to change notification settings

mierdev/codemon

Repository files navigation

codemon logo

A JRPG battle game with a coding theme

Compete in pokémon inspired battles to find out which is the strongest programming language. Enter one of the competitions to earn a shiny coin.

PS if you hang around the Boot.dev Discord server, you might recognize a lot of the opponents 👀

The game is live hosted!

Play it in your browser

Features

  • Turn-based battles between programming languages
  • 7 unique languages with distinct abilities and stats
  • Tournament mode with 3, 5, or 7 match competitions
  • Dynamic dialogue system with trainer personalities
  • Animated fire effects and smooth transitions
  • Audio system with background music and sound effects
  • Database integration for persistent game data
  • Responsive UI with modern game aesthetics

In-game sreenshots

screenshot 1     screenshot 2

Build by

Prerequisites

Installation

  1. Clone the repo:
git clone [email protected]:mierdev/codemon.git
  1. Open the project folder:
cd codemon
  1. Install dependencies:
npm install
  1. Install MongoDB

On Mac

Using Homebrew:

brew tap mongodb/brew
brew install mongodb-community

Or download from the official website:

On WSL2/Ubuntu (Windows)

  • Import the public key: From a terminal, install gnupg and curl if they are not already available:
sudo apt-get install gnupg curl

To import the MongoDB public GPG key, run the following command:

curl -fsSL https://www.mongodb.org/static/pgp/server-8.0.asc | \
  sudo gpg -o /usr/share/keyrings/mongodb-server-8.0.gpg \
  --dearmor
  • Create the list file: Create the list file /etc/apt/sources.list.d/mongodb-org-8.0.list for your version of Ubuntu (we are presuming you've installed it with Boot.dev's instructions and are using Ubuntu 22.04 Jammy, if not follow the Installation guide)
echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-8.0.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/8.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-8.0.list
  • Reload the package database: Issue the following command to reload the local package database:
sudo apt-get update
  • Install MongoDB Community Server:
sudo apt-get install -y mongodb-org
  1. Make a .env in the root folder and add the database keys
touch .env
code .env

For MongoDB Atlas (cloud)

MONGODB_URI=mongodb+srv://mongouser:[email protected]/codemon?retryWrites=true&w=majority
MONGODB_DB=codemon

Usage

  1. Start MongoDB:

On Mac

Using Homebrew:

brew services start mongodb-community

Or manually:

mongod --config /usr/local/etc/mongod.conf

On WSL2/Ubuntu (Windows)

  • Start MongoDB:
sudo systemctl start mongod
  • If you receive an error similar to the following when starting mongod: Failed to start mongod.service: Unit mongod.service not found. Run the following command first:
sudo systemctl daemon-reload

Then run the start command above again.

  1. Add data to the database:
npm run seed
  1. Start the server:
npm run devStart

Tech Stack

Frameworks

  • Phaser.js
  • Express.js

Database

  • MongoDB

Programming languages

  • JavaScript
  • HTML/CSS

Architecture

Codemon architecture

A Little Shop of Chaos Production

About

A JRPG battle game with a coding theme (our entry for the Boot.dev Hackathon 2025) - 2nd place winners!

Topics

Resources

Stars

Watchers

Forks

Contributors 3

  •  
  •  
  •  

Languages