Back

Personal projects

All projects

Web apps, developer tools, a few reverse engineering projects and, last, studies.

Screenshot of Investment Calculator
Web2026

Investment Calculator

Simple financial planner: simulates how investments grow over time and lets you add planned purchases. Meant as a rough guide, not financial advice.

  • JavaScript
  • HTML
  • CSS
Screenshot of VSCODE: Rhino for Alfresco Web Scripts
Tools2025

VSCODE: Rhino for Alfresco Web Scripts

VS Code extension with syntax highlighting for Alfresco 6.2 Web Scripts, which run on the Rhino engine: <import> tags and constructs like "for each" no longer break the default JavaScript highlighting.

  • VS Code
  • TextMate grammar
  • Rhino
  • Alfresco
Games & reverse engineering2026

War of the Monsters Recompiled!

Native PC port of War of the Monsters (PS2). The CPU code is statically recompiled to C++, and rendering, sound and input were rewritten to run natively on PC, with no emulator: 60 fps, widescreen and gamepad support.

  • C++
  • Python
  • raylib
  • PS2Recomp
  • Static recompilation
Screenshot of War of the Monsters: Model Museum
Games & reverse engineering2026

War of the Monsters: Model Museum

In-browser 3D viewer for the War of the Monsters creatures: models, costumes and animations, with wireframe, bones, lighting presets and .glb export that passes the glTF Validator.

  • JavaScript
  • Three.js
  • Vite
  • glTF
Screenshot of Miki's World PC Collection
Games & reverse engineering2026

Miki's World PC Collection

Full decompilation and PC port of the two Miki's World mobile phone games (Sumea, 2002). Game logic validated against the original bytecode, with key remapping, gamepad support, shaders (CRT, LCD, xBRZ) and mod support.

  • C#
  • .NET
  • J2ME
  • GLSL
  • Decompilation
Screenshot of AngularJS Digest Test
Studies2026

AngularJS Digest Test

Interactive demo of the AngularJS digest cycle: compares setTimeout, $apply, $digest, $evalAsync, $applyAsync and $timeout, showing when the digest runs on its own, when you have to trigger it, and why $timeout + $apply is redundant.

  • AngularJS
  • JavaScript
Screenshot of Angular Tour of Heroes
Studies2024

Angular Tour of Heroes

Angular 17's official tutorial, heavily customized: custom Angular Material theme with light/dark mode, a hand-made carousel and hero search.

  • Angular
  • Angular Material
  • TypeScript
  • SCSS