A new type of command-line shell, written in Rust by an amazing team of top-notch programmers (and me). Check out the website to learn more about why Nushell is great; I think it’s a massive step forward from Bash and PowerShell.
Like View Source, but for terminal escape sequences. You launch the shell of your choice in Escape Artist and it shows you all the invisible ANSI codes sent to your terminal in real time.
A handy little cross-platform tool written in Rust.
MinimalWebView and related projects
An experiment to see how far I can push a slim Windows application that uses C# for the hosting logic and web UI for the front-end.
I could embed web UI in a normal .NET GUI app. But WinForms and WPF are big dependencies and they’re mostly unnecessary for web UI. Why not see how far we can get with a good ol’ Win32 message pump?
My personal music library system with a local-first client and a server. It started out as a bored-during-the-pandemic project and now I use it daily.
The local-first functionality was a huge source of complexity; the library is essentially a distributed database that can be synchronized between any 2 clients (or a client and the server). But it works great.
I wanted to explore UI ideas for ETL. Can we make complex data transformations as easy to use as spreadsheets? What if we had tools to quickly diagnose+fix common issues in data pipelines?
To answer those questions, I built an interactive prototype in React that parses JS formulas as they’re edited. More info here.
Abundant Housing Vancouver Letter System
- An Angular front-end that generates personalized letters in support of housing projects
- A Serverless Framework back-end that uses Slack and AWS (Lambda, SES, S3, Athena) to review+send+analyze those letters
An interactive map of every property in Vancouver using Mapbox, Eric Fischer’s remarkable Tippecanoe, and a small back-end to serve the map tiles.
Sadly this died when Heroku’s free tier went away. I’ll find another host someday.
Drop by GitHub to see what else I’ve been up to lately.