Meet ct.js,your new 2D game engine

ct.js makes learning programming fun and game development easy with its visual tools, good docs and flexible, modular library, and several coding language options.

It is free, open-source, and loved by hobbyists, professionals, teachers, and their students.

Download v5.1.0

Three programming languages. Same powers. Yours to choose.

JavaScript & TypeScript

JavaScript is the language of the web, and optional TypeScript features provide rich coding tools.
// Event for a collision with a bullet
var damage = 5;
// 15% crit chance!
if (random.chance(15, 100)) {
    damage *= 2;
}
this.hp -= damage;

// Destroy the projectile
other.kill = true;

if (this.hp <= 0) {
    this.kill = true;
}

CoffeeScript

A python-like language with a concise and beginner-friendly syntax.
# Event for collision with a bullet
damage = 5

# 15% crit chance!
if random.chance 15, 100
    damage *= 2

@hp -= damage

# Destroy the projectile
other.kill = true

if @hp <= 0
    @kill = true

Catnip

A visual programming language made specially for ct.js that works similarly to Scratch, but better.
SetdamagevalueIfrandom chance
Setdamagevaluedamage×
Decreasehpbydamage Destroy the projectileWith copyother
Destroy this copy
Ifhp
Destroy this copy

Create games of any genre

Shooters, arcades, adventures, survivals, puzzles, visual novels — you name it!

Ill Fated

A vampire-survivor-esque shooter where your character only grows weaker through time. Fend off endless monsters and see how many curses you can get before you succumb to the foes.

Vacation of Fusion

A light-hearted island-building game where you mix elements to create new tiles. Features creative mode, cartoony graphics, and a selfie mode!

Welcome to the VOID

A story about rebooting the universe. Swim through the endless dark cosmos, engage in space combat, land on planets for expedition missions and explore the lost technologies.

ct.js has everything you need to build a game

Room / Level editor with tile support

Integrated code editor with error handling

Arcade collisions and 2D physics libraries

Framed, scrolling animations, 9-patch support and more

Music & sound manager with randomized effects

Particle system, shaders, and lighting system

Notes & docs in a side panel, on every screen

Ability to use custom JavaScript or TypeScript

Easy packing and deploying

Join the world of game development

It's free!

Our Partner

Mini Jam is an open recurring game jam that is held every two weeks on itch.io. Join their Discord server or visit their official site!

Ct.js' patrons

Business cats

Leo🦁

Cats

GAKONS
Vint Prox

People who donated to ct.js

Дмитрий Елисеев
Michael Relkowski
GAKONS
Alexandr Chubutkin

Become a patron

Help ct.js grow!

Tell your friends about it