Desktop applications
Sapphire Notes
November, 2020

A cross-platform desktop application for managing notes

Tech

C# , .NET Core , Avalonia

Goal

Wanted to take a swing at cross-platform desktop dev with this fairly obscure .NET framework Avalonia.

Web applications
Personal Assistant
October, 2019

An ecosystem of PWAs

Tech

C#/F# , ASP.NET Core , PostgreSQL , Dapper.NET , RabbitMQ , Linux (Ubuntu) , Aurelia , TypeScript , SASS , PWA , IndexedDB

Goal

Wanted to learn more about PWAs and build something powerful enough that I myself will use every day.


Metronome
July, 2021

Finally, a metronome that allows you to create and manage multiple tempos

Tech

TypeScript , Svelte , SASS


Compound Interest Calculator
January, 2020

A compound interest calculator

Tech

C# , Blazor (WebAssembly) , Linux (Ubuntu) , PWA

Goal

Wanted to see the possibilities that a framework like Blazor (specifically WASM) offers.


Debt Resolver
March, 2017

Take debt and minimize the number of necessary transactions to resolve it

Tech

Aurelia , JavaScript (ES.Next) , SASS

Goal

Built this in order to better familiarize myself with ES.Next and Aurelia (my SPA framework of choice). Also, my first project with SASS. All in all, a great learning experience.


My Routine
March, 2016

Progress-tracking tool for people learning an instrument

Tech

C# , ASP.NET MVC , SQL Server , Entity Framework , Knockout.js

Goal

A progress-tracking tool for people learning an instrument. It allowed users to keep a flexible practice schedule regardless of what instrument they're learning.

A great UI that I'm unfortunately unable to show because it's an ASP.NET application, and I no longer host my apps on a Windows server.

Extensions
Soccer Streamlined
October, 2017

A browser extension for live soccer streams

Tech

TypeScript

Goal

Made this in order to learn about browser extensions. Started building it in JavaScript but it quickly became unmanageable so I took the opportunity to learn TypeScript and I rewrote the whole thing. The difference in readability and maintainability was night and day.

Libraries
Temporal.js
November, 2015

Yet another JavaScript library for handling dates

Tech

TypeScript

Goal

A JavaScript library for handling dates. It is less than a quarter of the size of Moment.js and it can do pretty much all the things developers usually use Moment.js for.

I developed it when I was a junior developer to better familiarize myself with (the pitfalls of) the JavaScript Date object.