building games, tools & weird experiments

Play the builds.
Read the code.

The lab where I build games, tools and experiments in the open. Every screen on the wall is live: click one and it runs right here.

ls ./games
  • 03 games
  • 04 experiments
  • 01 repos
  • 02 notes

Games

Each one opens full-screen in the player, with pause, mute, fullscreen and a share link. Every game also gets its own page with a devlog, screenshots and credits.

~/games/neon-snakeplayable

Neon Snake

The classic, rebuilt with a phosphor glow, buffered input and a speed curve that keeps tightening.

genre
Arcade
engine
Canvas
status
playable
input
keyboard · touch · gamepad
controls
Arrows / WASD steer · P pause · R restart · swipe on touch
~/games/void-runnerplayable

Void Runner

Endless 3D runner over a neon grid. Thread the gaps, grab pickups, survive the speed-up.

genre
Endless runner
engine
Three.js
status
playable
input
keyboard · mouse · touch · gamepad
controls
← → / A D steer · mouse or drag to steer · P pause
~/games/block-breakerplayable

Block Breaker

Brick-breaking with angle control, multi-hit bricks, particles and escalating levels.

genre
Brick breaker
engine
Canvas
status
playable
input
keyboard · mouse · touch · gamepad
controls
Mouse / touch / arrows move · Space launch · P pause

Repos

Public code from the lab. Pinned first, then most recently pushed.

  • no description yet

    HTML 0updated

More repos will show up here as they go public. Everything else lives on github.com/ramato9 .

// synced from the GitHub API at build timeall repos on GitHub

Lab notes

Short, dated devlog posts.

  1. Lab v0.2: terminal look, game pages, games on their own origin

    The lab got a rebuild: black-and-green terminal theme, a page per game, a repos feed generated at build time, and every playable build moved to play.dunoralabs.xyz.

    • #site
    • #security
    • #cloudflare
  2. How the screen wall works

    The hero is a curved wall of monitors, each showing a live preview. Here's how one 2D canvas per project feeds the 3D wall, the cards and the thumbnails without drawing anything twice.

    • #three.js
    • #canvas
    • #performance

all notes rss feed

About

I'm Rene Amaton, a data and BI analyst based in Ciudad Juárez, Mexico. I've spent 5+ years in consulting turning large, messy datasets into dashboards, KPIs and alerts: anti-money-laundering and fraud analytics for banks at Deloitte in Milan, then BI and real-time monitoring for international clients.

This lab is the other half: games, tools and experiments I build in the open, mostly in vanilla JS, Canvas and Three.js. Everything here runs in your browser.

I studied Economics and Finance at UTEP and FinTech & Big Data at Politecnico di Milano. Happy to talk builds in Spanish, English or Italian.

// client work Need something built for your business? That's dunoralabs.com, the studio side of the lab.
stack.json
{
  "games": ["Canvas 2D", "Three.js", "Web Audio"],
  "web":   ["HTML", "CSS", "vanilla JS"],
  "data":  ["SQL", "Python (pandas)", "Power BI", "Tableau", "Splunk"],
  "tools": ["Node", "Git", "AWS", "Azure", "Cloudflare Pages"],
  "status":"always building"
}

Player

man shortcuts

g
games
r
repos
n
lab notes
a
about
/ or Ctrl K
search & jump to anything
?
this help
Esc
close whatever is open

In the player: the game gets the keyboard once you click it. Tab back to the bar to pause, mute or exit.

// rumour has it there's a cheat code.