Lab
The Lab holds my experiments and small builds. Two interactive pieces sit at the top: a year of my GitHub contributions, square by square, and a quick tour of Txtudio's products. Below them are small tools I built between 2021 and 2025, from Rust utilities to an Android app.
Piece 01
Contribution calendar
My GitHub contributions for the last twelve months, one square per day: grey for quiet days, deepening to coral on the busiest ones. The data is fetched when the site is built, and private work counts only as totals, never as repository names.
Hover a square to see its day and count. The total, the busiest day and each month's count are written out below.
1,183 contributions in twelve months
95 on 14 October 2026, the busiest day
| Month | Contributions |
|---|---|
| Oct 2025 | 6 |
| Nov 2025 | 29 |
| Dec 2025 | 66 |
| Jan 2026 | 54 |
| Feb 2026 | 5 |
| Mar 2026 | 33 |
| Apr 2026 | 49 |
| May 2026 | 55 |
| Jun 2026 | 57 |
| Jul 2026 | 119 |
| Aug 2026 | 151 |
| Sept 2026 | 166 |
| Oct 2026 | 393 |
Piece 02
Txtudio's products
Txtudio makes four products: Workeron, a business suite for HR, CRM, project management, marketing and forms; Snaptiqz for events; DoYourDesign for interior design studios; and the Audit Management Solution for Indian banks.
Choose a product with a click, a tap or the keyboard. Its screen and one-line description slide in.
Small tools
-
html-pdf-react
2025Repository, html-pdf-reactA React and Vite prototype that renders a purchase order as an A4 PDF, with an in-browser preview and a download link.
- React
- Vite
- @react-pdf/renderer
-
sass-rust-compiler
2024Repository, sass-rust-compilerA Rust file watcher that compiles changed SCSS files to compressed CSS, mirroring the folder structure and skipping partials.
- Rust
- grass
- notify
-
TodoAndroidApp
2024Repository, TodoAndroidAppA to-do list app for Android, written in Kotlin with Jetpack Compose and Material 3.
- Kotlin
- Jetpack Compose
- Material 3
-
copy_replace_text_cli
2023Repository, copy_replace_text_cliA Rust command-line tool that runs a regex find-and-replace on one file, writes the result to another and prints coloured errors.
- Rust
- regex
- text_colorizer
-
coWin_mylocation
2021Repository, coWin_mylocationA COVID-19 vaccine slot alert that checked the public CoWIN API every five seconds and played a sound when first-dose slots opened.
- JavaScript
- axios
- CoWIN public API