This is a non-exhaustive list of projects I developed.
Pocket Statistics is a website that will retrieve and analyze your Pocket data. You can find it here.
It is deployed using an NGINX server (as a reverse proxy) and Waitress running on Arch Linux over IPv4 and IPv6.
Certbot (from Let’s Encrypt) is used to provide (and regularly renew through a systemd timer) TLS certificates.
nftables is used to build an allowlist-based firewall and to prevent SSH brute-forcing and ICMP flooding.
Dungeon is a text-based open-world Java role-playing game.
In 2017, Dungeon won a $1024 software quality award.
A platformer in C, rewritten in modern C++.
Better Chest Organizer is a mod for Stardew Valley written in C#. The default in-game chest organization functionality is very incomplete, often not using enough criteria when determining the chest item order. To make matters worse, the default implementation does not use a stable sorting algorithm. This mod provides better automatic chest organization, fixing these problems.
This is a C++ implementation of the main ideas from Wojciech Palubicki, Kipp Horel, Steven Longay, Adam Runions, Brendan Lane, Radomír Měch, and Przemyslaw Prusinkiewicz. 2009. Self-organizing tree models for image synthesis. In ACM SIGGRAPH 2009 papers (SIGGRAPH ‘09), Hugues Hoppe (Ed.). ACM, New York, NY, USA, Article 58.
The code is fairly well-documented in order to help an interested reader better understand how the paper was implemented.
An application to efficiently find words in a dictionary from a multiset of letters. This is, the application finds the largest possible words from a bag of available characters.
$ ./bigword linkedlists > instilled > kindliest > niellists > slinkiest $ ./bigword abcdefghij > bighead > jibhead $ ./bigword aeioubsdlinux > unoxidisable
Data is serialized after processing in order to speed up subsequent runs.
On average, the application can query against a dictionary of 500,000 words in around 50 milliseconds.
A Java image manipulation library.
My public LaTeX notebook.
You may also be interested on my list of open-source contributions. I believe that giving back is fundamental to keep the software development ecosystem healthy.