2019
PocceMod
2019
Created the first GTA5 (FiveM) game mod that allowed players to have fun with GTA’s unused and undocumented rope API in a multiplayer environment. After sharing it with the community early on to receive feedback, the mod went through 2 months of intensive development, adding many of the requested features and changes. The project quickly gained popularity due to its uniqueness and led to community members requesting my services.
2018
RazTalk
2018
A simple lobby/channel based registration-free webchat. Implemented using NancyFX + Razor + SignalR stack and relies on RazTools to support dynamic loading of bot libraries during runtime. The repo contains (outdated) bot implementations for CleverBot, Giphy, Imgur and Reddit. There is also a standalone desktop client, which is just a wrapper around the web interface.
RazTools
2018–2020
A collection of reusable helper classes:
- ArchiveReader and ArchiveWriter, based on Doboz.NET
- 2 alternative versions of CommandParser
- FileSystem class that seamlessly integrates local OS filesystem + ArchiveReader
- ObjectDeserializer to construct objects from a custom text format
- PluginManager & RemoteLoader simplify interaction with plugins using remoting
- Timeout class with Expired event
- XmlReader static class which returns dynamic objects
2015
Personal website
2015–2024
-
2024 version
Completely rewritten everything again using Go + PicoCSS + HTMX stack, featuring static site building with Github Actions. It supports light and dark themes (based on user preferences reported by the browser) and uses HTMX boosted page loads and loading spinner. Content is stored in a main content.yaml and individual project yaml files, everything else is in HTML templates.
-
2019 version
Everything completely rewritten in Go. Data was still stored in XML files initially, but later all the content (including resume) was moved to a single yaml file, which was periodically updated directly from the repository.
-
2018 version
Implemented in C# using NancyFX and a brand new design. It used Github API to list my latest open-source interests and contributions. Project data was stored in XML.
-
2015 version
The site made use of user friendly URLs (thanks to Apache web server’s mod_rewrite) and loaded pages dynamically via jQuery’s AJAX API. A server side PHP script automatically parsed the static HTML pages for sections, which could then be accessed individually by the user. It wasn’t very CPU friendly, but made it easy for me to add new content to the page without using a database. Later my Twitter feed was integrated as a news feed, using OAuth and Twitter’s API.