Ondřej Žára

About

portrait

JavaScript developer, living in Prague, Czech Republic. Employed by Seznam.cz. My résumé is available online, though I am currently not looking for a job. You can also see an automatically generated GitHub résumé.

Get in touch: E-mailGitHubTwitterMastodon

Support my work: GitHub SponsorsBuy Me a CoffeePayPal

Games

Written mostly in JS and therefore playable in your web browser. With a particular focus at the Roguelike genre.

sleeping-beauty (JavaScript, 138⭐)

Sleeping Beauty: a game created for the 7-day Roguelike 2014 challenge. Coffeebreak length.

7DRL Roguelike Try it
trw (JavaScript, 127⭐)

The Royal Wedding – coffebreak roguelike with story, lighting, zombies and (sometimes) lutefisk!

Roguelike Try it
star-wars (JavaScript, 106⭐)

Star Wars Miniature - The GitHub Game Off 2012 submission

Roguelike Try it
rri (TypeScript, 97⭐)

TypeScript port of a board game by Horrible Games

Deno WebSocket Try it
custom-tetris (JavaScript, 88⭐)

Custom Tetris - The GitHub Game Off 2013 submission. Modular Tetris game that offers configurable sides and multiplayer.

Try it
rubik (JavaScript, 32⭐)

CSS Rubik's Cube

Try it
goldfish (JavaScript, 29⭐)

Goldfish: a game created for the 7-day Roguelike 2017 challenge. Playable, winnable, losable. Features colorful and aesthetic maps, aquatic fauna and fishermen!

7DRL Roguelike Try it
drago (JavaScript, 23⭐)

Dr. Drago's Madcap Chase: HTML5 remake of an old game by Blue Byte Software. Fully playable with cool graphics, animations, sounds and music!

Try it
cafe-havoc (JavaScript, 16⭐)

Café Havoc: a game created for the 7-day Roguelike 2016 challenge

7DRL Roguelike Try it
conception (JavaScript, 13⭐)

The Conception: a game created for the 7-day Roguelike 2013 challenge. Contains hexagons. And chlamydia. And much more.

7DRL Roguelike Try it
dobble (JavaScript, 11⭐)

Dobble / Spot it! with Emoji

Try it
js-like (JavaScript, 10⭐)

js-like, the JavaScript Roguelike. Heavily inspired by ADOM.

Roguelike Try it
roguezombies (TypeScript, 4⭐)

Rogue Zombies: a roguelike game created for the 2024 7DRL challenge. Warning: they will get you.

7DRL Roguelike Try it
7drl-2019 (PHP, 4⭐)

The Curse of the General Sibling Combinator: a game created for the 7-day Roguelike 2019 challenge. Implemented only in CSS. Coffeebreak length.

7DRL Roguelike Try it
wardens-duty (JavaScript, 4⭐)

Warden's Duty: a game created for the 7-day Roguelike 2015 challenge. Lacks the traditional roguelike map and features over-sized ascii glyphs. You cannot really win this game, but you can try to get deeper than others.

7DRL Roguelike Try it
rogue-sea (JavaScript, 3⭐)

Rogue Sea: a game created for the 7-day Roguelike 2021 challenge. Features ships, cannonballs, bitmap tiles, spatial audio and a nontrivial amount of piratey talk.

7DRL Roguelike Try it
blockout (JavaScript, 3⭐)

CSS Blockout implemented using CSS 3D transforms. Submitted as a demo to Mozilla Dev Derby.

Try it
rustymind (Rust, 2⭐)

impl Mastermind for Rust {}

atoms (JavaScript, 2⭐)

Traditional "atoms" game, well-known from Windows 3.1. Up to four players; local play with bots, multiplayer using Firebase.

Try it
geometry (JavaScript)

Multiplayer-based geometry game

Try it
click (JavaScript)

Clickmania: JS port of a well-known time-killer

Try it

Projects

Larger-scale projects, some serious, some absolutely not. Also smaller toys and experiments.

my-mind (TypeScript, 3241⭐)

Online Mindmapping Software

Web App Try it
wwwsqldesigner (JavaScript, 2820⭐)

WWW SQL Designer, your online SQL diagramming tool

Web App Try it
rot.js (JavaScript, 2288⭐)

ROguelike Toolkit in JavaScript. Cool dungeon-related stuff, interactive manual, documentation, tests!

Library Roguelike Try it
primitive.js (JavaScript, 773⭐)

JS port of primitive.lol

Try it
cyp (JavaScript, 93⭐)

Control Your Player: a Web-based MPD client

Custom Elements Web App
fireworks-webgl (JavaScript, 63⭐)

WebGL + Web Audio API = Sound-driven fireworks!

WebGL Try it
oscope (JavaScript, 43⭐)

Configurable JavaScript oscilloscope

Try it
cfo (JavaScript, 23⭐)

A two-pane file manager

Desktop App
fastiles (TypeScript, 18⭐)

Ultra-fast bitmap font renderer

Library WebGL Try it
little-planet (JavaScript, 14⭐)

<little-planet> Custom Element: interactive panorama viewer

Custom Elements WebGL Try it
mp (JavaScript, 12⭐)

Hybrid music player

Desktop App Web App Try it
gps-exif (JavaScript, 10⭐)

Visualizing GPS EXIF data on a map

Try it
just-spaceships (JavaScript, 8⭐)

Multiplayer 2d space dogfighting game

Try it
pasy.js (JavaScript, 8⭐)

Simulating particle systems with WebGL

Library WebGL
maslo (CSS, 7⭐)

Scalable Markdown-based HTML slide deck

Library Try it
instant-button (HTML, 7⭐)

<instant-button> web component

Custom Elements Try it
dragons (JavaScript, 7⭐)

Here be dragons! Curved dragons in particular. At least several generations of then.

Try it
ws2mpd (JavaScript, 6⭐)

Tiny WebSocket <-> MPD bridge

WebSocket
need-based-ai

A sample need-based AI implementation

Roguelike Try it
turbo-visionary (CSS, 5⭐)

Turbo Visionary: bringing back the 90s IDE styling

Try it
fractal (JavaScript, 4⭐)

Mozilla DevDerby Demo

Try it
hex-maps (JavaScript, 4⭐)

Creates SVG maps for the "Expres" game (also known as Dampfross, Railway Rivals)

Try it
ie8eventtarget (JavaScript, 4⭐)

EventTarget polyfill for IE8

Try it
macropad (Python, 3⭐)

My Adafruit Macropad setup

perfect-maze (JavaScript, 3⭐)

Produces a perfect maze and finds the path between two corners. In perfect maze, every two cells are connected with exactly one path.

Try it
arduino (C++, 3⭐)

Experimental sketches

coral (JavaScript, 3⭐)

Canvas & Web Workers Demo

Try it
screenplay.css (CSS, 3⭐)

A screenplay stylesheet

Try it
fixmetodo (JavaScript, 2⭐)

<fix-me> and <to-do> web components

Custom Elements Try it
3 (JavaScript, 2⭐)

Shadow cube (particularly known from GEB) generator

3D Printing Try it
tiled-engine (JavaScript, 2⭐)

Experimental tile-based engine with multi-tile entities

Try it
piano-chords (JavaScript, 2⭐)

Realtime chord detector

Webmidi Try it
cookie-roller (JavaScript, 2⭐)

Image → STL → Roller → Cookies

3D Printing Try it
codeface-roguelike (JavaScript, 2⭐)

Display monospace fonts from the "codeface" project in a roguelike-compatible fashion

Roguelike Try it
chords (JavaScript, 2⭐)

Generating and rendering chord diagrams

Library Try it
ogar (TypeScript, 2⭐)

Ondras's Genetic Algorithm Runner

dw (JavaScript, 2⭐)

Experimenting with custom implementation of document.write

ardulike

A roguelike for arduino.

pano.zarovi.cz (JavaScript, 1⭐)

Showcase of panoramic photos taken with a DJI Mini 3 Pro

WebGL Try it
pano-web-template (JavaScript, 1⭐)

Create your own map+pano website by forking this repo!

custom-range (JavaScript, 1⭐)

A stylable replacement for <input type=range>

Custom Elements Try it
space-filling-curves (HTML, 1⭐)

Recursive implementation of Peano/Hilbert curves, using canvas transformations

Try it
email-hash (JavaScript, 1⭐)

E-mail canvas hash: visualizing e-mail addresses using various algorithms

Try it
shooting-the-pi (HTML, 1⭐)

Shooting the π. Made for the 2016 pi day.

Try it
harmoniums (JavaScript, 1⭐)

A semi-interactive homage to Kurt Vonnegut

WebGL Try it
ex-ample (JavaScript, 1⭐)

<ex-ample> Web Component for interactive HTML/JS examples

Custom Elements Try it
nemu (JavaScript, 1⭐)

NEtworked MUltiplayer WIP

Library
ws2irc (JavaScript, 1⭐)

WebSocket <-> IRC bridge

WebSocket
gtfs (PLpgSQL)

SQL schema for PID GTFS

node-red-setup (JavaScript)

Everything related to the node-red home setup

sz-fotky-3beh (PHP)

Photos from traditional children summer camp with long history and unique atmosphere

Try it
aztec-wheels (TypeScript)

Utils Try it
input-over-websocket (TypeScript)

derivative-captcha (PHP)

Derivative Captcha - an accessibility experiement

Try it
edkbmap (JavaScript)

Elite: Dangerous Keyboard Map

Try it
oz-gallery (JavaScript)

Simple JS (photo|video|pano)-gallery via the <oz-gallery> custom element

Custom Elements
kucharka (PHP)

Kuchařka, a personal cookbook

Try it
wordle-feeder (JavaScript)

Connecting Wordle producer with a Wordle consumer

Try it
bip (JavaScript)

Bilingual Poster

Try it
polar-pano (JavaScript)

Create polar panoramas from equirectangular images

WebGL Try it
esp8266-hanoi (Python)

Tower of Hanoi, running on an ES8266 with a tiny 64x48 OLED display, written in MicroPython

numberwang-bot (JavaScript)

Plays the famous Numberwang game on Twitter

sz-vyber (JavaScript)

A selection of photos taken at Sluneční zátoka

Try it
turtles (HTML)

Cute CSS-only animation

Try it
deno-json-rpc (TypeScript)

JSON-RPC for Deno

Deno Library
hitman (JavaScript)

Html Infrastructure for Turing Machine ANalysis

Custom Elements Library Try it

Utilities

Dotfiles, scripting utils, miscellaneous stuff.

browsershot (JavaScript, 44⭐)

Utility library for programmatic screenshots via getDisplayMedia

rollup-plugin-graph (JavaScript, 29⭐)

Generates module dependencies graph, using the DOT language.

emojimage (TypeScript, 7⭐)

Create SVG images/favicons from emoji

Try it
rnotify (Python, 4⭐)

Forwarding remote notifications to a local machine

ahk (AutoHotkey, 2⭐)

Collection of AutoHotkey scripts that I use.

hp (HTML, 1⭐)

Homepage Docker image generator. Uses Deno and the GitHub API.

Try it
php-image-multiarch (Dockerfile, 1⭐)

Multi-architecture Dockerfile build for an old-school PHP website deployment

qr (TypeScript, 1⭐)

Generate QR code based on the Referer header

Try it
kb

A personal knowledge base

wsl (Shell, 1⭐)

WSL2 utilities

backup (Shell, 1⭐)

Wasabi+Duplicity

dotfiles (Shell)

midi-juggler (JavaScript)

Universal web-based MIDI router. Filtering, transposition, localStorage persistence. Useful if you are too lazy to learn scales.

Webmidi Try it
inkkeys-git (Python)

My git-specific mappings for the "inkkeys" macropad

pandoc-filters (JavaScript)

Various custom filters for Pandoc

browser-dgram (JavaScript)

Node's "dgram" module for browser

Try it
atom-find-in-directory (JavaScript)

Atom's "Project find" within the current directory

Talks

List of recently given presentations, grouped by a year.

2024

2023

2022

2021

2020

2019

2018

2017

2016

2015

2014

2013

2012

2011

2010

2008

Writings

Collected blog-less works

Protřelý proktolog

Czech poem about a proctologist. Built around the last verse.

Doma s koronou

Pandemic version of 'Cotton fields'

Nelehká na lodi romantika

Czech poem about sea. And a ship. And people. And love. And so on.

Petrov, Jeljena a já

Another attempt to translate a song by Flight of the Conchords to my native language.

Banda Bukanýrů

Rules for a game played at a summer camp (Czech)

Firebase: krátké seznámení

Introductory article about Firebase and its JS API

Moc kolíků na parketu

An attempt to translate a song by Flight of the Conchords to my native language.

DOM události: co o nich možná nevíte

Less-known properties and features of DOM events for advanced frontend developers.

JSConf.eu 2013

List of talks, slides, youtube links.

Začínáme s WebGL

A series of a WebGL-related introductory articles.

JS MVC

My critical opinions regarding JS MVC frameworks. Written in Czech language.

Rums

Various rums I tasted, categorized and rated.

Comics

Well-organized online comics I read.

Android games

List of Android games I played (+ their rating).

Plain JS

What can you do in plain JavaScript?

JSConf.eu 2012

List of talks, slides, youtube links.

Dungeon-related algorithms

Maze generation, FOV computation, turn scheduling.

Compression benchmarks

Trying to compress JSON with algorithms implemented in JS.

Old stuff

Old, obsoleted and generally non-functional stuff. Some of these were superseded by newer projects, some just lost their impetus.

jsslides (JavaScript, 45⭐)

Where semantic HTML meets interactive slide deck

Try it
TeaJS (C++, 26⭐)

Your daily cup of server-side Javascript.

promise (JavaScript, 19⭐)

Tiny browser-based Promises/A+ implementation

Library
iv (JavaScript, 14⭐)

Simple image viewer for nw.js and Electron

photo (JavaScript, 13⭐)

Web Workers used to process photos

Try it
elm-slides (JavaScript, 10⭐)

Slide deck system written in Elm

Elm Try it
smon (JavaScript, 8⭐)

simple service monitoring

experimental-roguelike (JavaScript, 6⭐)

Exploring innovative and aesthetical aspects of an ASCII game

Roguelike Try it
railrl (JavaScript, 6⭐)

Small testbed game: hexes, trains, procedurally generated terrain.

Roguelike Try it
oz.js (JavaScript, 6⭐)

Tiny but smart JS assistance for advanced coders

html5-animation-framework (JavaScript, 5⭐)

Google Code mirror

pure-css-slides (CSS, 4⭐)

A non-JavaScript experiment: fully featured presentation system, using only HTML + CSS

Try it
draw (JavaScript, 4⭐)

Drawing in multiplayer (server needed)

WebSocket Try it
firecommander (JavaScript, 3⭐)

Two-pane file manager

Desktop App Try it
hash (JavaScript, 3⭐)

Mozilla DevDerby Demo

Try it
sudoku (JavaScript, 2⭐)

Sudoku solver

Try it
oz.php (PHP, 1⭐)

PHP library for easier MVC workflow, based on XSLT.

Try it
fireworks (JavaScript, 1⭐)

JavaScript fireworks using elementary mechanics, <canvas> and <audio> tags

Try it
a-g-e (JavaScript, 1⭐)

Adventure Game Engine, suitable for playing interactive gamebooks

Try it
wild-west (JavaScript, 1⭐)

Browser-based arena for simple but interesting fights of JavaScript AIs, based on a child's play

Try it
worms (JavaScript, 1⭐)

Worm simulation using HTML <canvas>

Try it
elm-irc (HTML, 1⭐)

Elm IRC client library

Elm
gc (JavaScript, 1⭐)

Mobile geocaching client

Try it
syntax (JavaScript, 1⭐)

RE-based syntax highlighter, implemented in Javascript.

zombie (JavaScript, 1⭐)

A minimalistic Jasmine test driver

sqlold (JavaScript)

The old, original version of the WWW SQL Designer. Archived for historical purposes.

finepix-showcase (HTML)

Some fine photos taken with my old and crappy Fujifilm FinePix S5000

Try it
sun (JavaScript)

Interactive SVG Sun, logo for Sluneční zátoka

Try it
netwars (NSIS)

An abandoned attempt to port the Netwars game to JavaScript.

brain-defense (JavaScript)

Brain Defense: zombies & lasers. What could go wrong?

Try it