SynthFET 3000 - 2025

SynthFET 3000 is a browser-compatible audio synthesizer and tracker built with Python and Pygame CE. It lets you design custom waveforms, shape envelopes, add some effects, and compose full multi-track songs using an intuitive tracker interface — all without writing any code.

Realtime Keyboard Interface Play notes using your computer keyboard or touchscreen, with adjustable octave range.

Waveform Editor Draw your own wave shapes or choose from presets (sine, square, saw, triangle, noise). Smooth and apply them interactively.

Envelope Editor Shape the volume dynamics (ADSR, tremolo, pluck, ramp) over time. Smooth and apply envelopes just like waveforms.

Tracker Module Compose songs using a familiar grid system: Multi-track pattern editor Per-track instrument selection Infinite song length with section navigation Adjustable tempo (BPM), pitch range, and export options

Instrument Manager Save and load up to 6 custom instruments. Instantly swap them in or edit live.

Effects Add reverb, overdrive and tremolo with tunable parameters.

Web-Compatible Runs in the browser (via GitHub Pages or Itch.io). Installable as a Progressive Web App (PWA).

Export to WAV Export full songs or individual tracks to .wav files, with separate channels for easy mixing in DAWs like Audacity.



Click to load and show the game

GitHub Repository




Paralaxcraft - 2025

ParallaxCraft is a creative reinterpretation of Minecraft using purely 2D elements to simulate 3D depth. The game uses layered, pre-rendered 2D voxel tiles arranged from farthest to nearest, with scaling and parallax effects creating convincing depth.

Players can view the world from four fixed camera directions. Smooth shearing transitions simulate camera rotation, enhancing immersion beyond simple orthogonal views. A simple lighting system adds realism, darkening blocks blocked from light by those above, while a moving sun casts dynamic shadows.

This project highlights clever use of 2D rendering techniques and creative problem-solving to mimic 3D gameplay and atmosphere, all built within a manageable codebase.



Click to load and show the game




Fake 3D Racing Graphics - 2024

This project demonstrates how to replicate the iconic pseudo-3D visuals of classic racing games using Python. By slicing and scaling a seamless road texture, the illusion of depth and perspective is created on a 2D screen.

Key features include dynamic road curvature and elevation modeled with sine functions, realistic scaling of road slices and sprites based on distance, and smooth side-to-side road movement to simulate car steering. The player’s car remains stationary at the bottom center, with the road moving beneath to simulate driving.

Additional sprites like other cars and roadside objects are scaled and rendered using a depth buffer to ensure proper layering behind hills and curves.

This project serves as a nice foundation for building retro-style racing games and showcases clever use of 2D techniques to evoke a classic 3D feel.



Click to load and show the game




DerDieDas Auto - 2023, updated 2025

DerDieDas Auto is a browser-playable racing game that teaches German noun genders (der, die, das) through fast-paced, interactive gameplay. Built in Python with Pygame and deployed for the web using Pygbag, it combines arcade mechanics with language learning principles.

Players control a car, switching lanes to match nouns with their correct articles or, in reverse mode, collecting nouns matching the car’s gender. Features include dynamic scaling for depth simulation, streak-based scoring multipliers, mobile and desktop controls, multiple word lists, slow mode, and an adaptive low-graphics mode for performance optimization.

Key technical elements include pixel-perfect collision detection, modular game-state management using Python’s match/case, browser-specific bug handling, and responsive input mapping. The game’s design evolved through iterative user feedback from language learners and the Pygame community, resulting in an accessible, engaging, and educational experience.

Also available for Android via Playstore or as a PWA.



Click to load and show the game




Super MaRayO Caster - 2022/2023

A first-person perspective version of Super Mario Bros. using raycasting, made in Python with PyGame-CE and PygBag.

This project reimagines the 1985 classic Super Mario Bros. as a first-person experience, built entirely in Python and playable directly in the browser via Pygbag. The game currently includes the full first level and its secret underground stage, with all assets and sounds recreated from scratch.

The core rendering uses a raycasting engine adapted for vertical gameplay: instead of drawing wall columns (traditional raycasting), the system renders horizontal lines to simulate stacked blocks, enabling vertical movement and multi-level platforms. A custom physics system handles gravity, jumping, item collection, and enemy movement to replicate the original mechanics from a new perspective.



Click to load and show the game

GitHub Repository




The LockPickin'joyer - 2022/2023

Cross-platform lock-picking simulation game built with Python, Pygame-CE and Pygbag, inspired by the LockPickingLawyer. Features realistic pin-binding mechanics, tension control, multi-difficulty modes (3–6 pins), touch and mouse input, and immersive audio feedback. It was first created in Python, then ported to Unity and later remade in Python again with Pygbag for web support.



Click to load and show the game




Dead And! - 2021/2022 updated 2025

Dead And! is a first-person shooter using Python and Pygame, built from the ground up with a custom raycasting engine. The project was developed incrementally, with each stage documented through devlogs covering floorcasting, wall rendering, sprite animation, looking up/down, enemy AI, sound integration, and UI/menu systems. Features include dynamic environments, interactive enemies, immersive audio, and a playable FPS mode. Recently updated with a web version with Pygbag.



Click to load and show the game

GitHub Repository




Pytracing Maze - 2021

Simple ray tracing game in Python, based on my ray casting project. As you may have guessed, things started to get a bit heavy for Python, so i had to resort to the Numba library, improving performance by 100x. This game uses a simple implementation of raytracing, where several rays are cast for each pixel, this allows for real time shadows and reflections. Geometry is based on math, with cubes and spheres on a grid system.



GitHub Repository




Simple Raycasting with Matplotlib - 2020

My first game project ever, inspired by a 3DSage totorial on YouTube. Based on the Ray Casting technique, where the objects are drawn entirely out of vertical lines. The size and position of the lines is defined by the distance between the player and the object. This is a very simple 3D maze game made from scratch in Python, using only three libraries: Numpy, Matplotlib, Keyboard.



GitHub Repository