A collection of applications, tools, scripts, and experiments in software development, visualization, astronomy, and game design.

Gaia Sky
Gaia Sky

A real-time 3D visualisation application developed in OpenGL in the framework of Gaia outreach. Gestated in the Astronomisches Rechen-Institut of Heidelberg University.

dotfiles
dotfiles

My dotfiles project. Contains the configuration, bootstrapping and deploying of Arch Linux with Hyprland (Wayland) and i3 (X11).

Play Kid
Play Kid

A Game Boy (DMG) emulator written in Rust and SDL2. It runs most Game Boy games, contains its own UI library, a full debug mode, and much more.

rCHIP8
rCHIP8

A CHIP-8 emulator/VM written in Rust, with arbitrary display scaling, debug mode, emulation speed control and much more. Here is a write-up.

Gaia Sky catgen
Gaia Sky catgen

LOD catalog generation for Gaia Sky written in Rust. It supports the integration of multiple catalogs using cross-match information, additional columns cross-referenced by id, extinction and reddening corrections and much more.

Gaia Sky LLM fine-tuning

Fine-tuning Qwen 3.5 9B with a custom-made dataset curated from Gaia Sky data for local inference. Here is a write-up.

Local RAG pipeline

A local RAG infrastructure with chatbot written on top of Ollama. Here is a write-up, and another post with an application for Gaia Sky.

RTS Engine
RTS Engine

Real time strategy game engine written in Java. Very early stage, but already usable. There is a private fork which contains much more advanced AI based on behavior trees and state machines, original graphics, sound, heights, and uses an entity component system (ECS) internally.

Virtual texture tools

A collection of Python scripts to generate and process Sparse Virtual Texture datasets for Gaia Sky (and others).

Gaia Sky docs
Gaia Sky docs

Documentation pages of Gaia Sky, written in reStructuredText with Sphinx.

tsnake
tsnake

A terminal snake game written in C++ using the ncurses library with support for different maps and tons of options. Here a write-up.

Langur's brainfuck interpreter

A very compact Brainfuck interpreter written in Rust.

langursh

A basic POSIX shell written in C. It offers only the basics, but it is fully functional and very light.

mediaorganiser-py

Very small script to organise media files into folders sorted by year and month (/YYYYMM). It scans the file name and the EXIF and RAW metadata. Very handy to keep your photos and videos automatically sorted. I also made a C++ port, but it is kind of unmaintained.

markov-nl

A very minimalistic first-order Markov model for natural language generation based on text input.

Particle Physics Simulator

A gravitational physics playground application for Android (v2.1+) devices.

N-Body Live Wallpaper

A physics live wallpaper for Android (v2.1+) devices.

Celestial Pole Motion

Tracks the motion of the mean celestial poles with respect to the ICRS due to the Earth’s precession and nutation.

HTML5 Snake Game

A modified version of an HTML5 snake game.

Computer-aided Catalan learning application

Final year project of my Informatics engineering degree. University of Aberdeen, departament of Computer Science, 2007. You can find the report in the publications section.

Achievements

Website design by myself. See the privacy policy.
Content licensed under CC-BY-NC-SA 4.0 .