Skip to Content

Rick Henry Development

Back to Homepage
Past Projects
Here are some more things I've built
Instrument Inventory screenshot
Instrument Inventory

I built this app to manage the location and information of many musical instruments given out to students at various locations. It's mobile-first and very feature-rich. Its functionality goes beyond what most people need, but shows how an application can be customized to an exact workflow.

View Instrument Inventory Online View Online
Silly Goals screenshot
Silly Goals

There are lots of project-management and tracking applications available online, but they tend to be work-oriented and put a lot of pressure on you to get things done. I wanted something a little calmer, with fun colors and a sense of humor!

It's super fast, written in rust using actix-web and htmx to provide the responsiveness of a single-page app but without all the javascript bloat.

It also has a completely password-free authentication system using passkeys and email-based code authentication. Passkeys allow users to authenticate using the biometrics built into their device (FaceID, TouchID, Windows Hello, etc.) for the most convenient experience without sacrificing security.

View Silly Goals Online View Online
I Did It for screenshot
I Did It for

I Did It for… uses the Django python framework to create an useful application for tracking the time you've spent working toward a project or goal or something you are learning. I went with a bright bold design that represents an interesting contrast to many of my other projects.

As usual, it has optional passkey authentication so you can log in instantly with the biometrics already present on your device. In addition to full CRUD functionality, it has Django's excellent administration backend for even finer control of what is present in the database.

By using htmx, I was able to create an experience that has the responsiveness of a single-page app, with the simplicity of a server-rendered application.

View I Did It for Online View Online
Purple Authentication screenshot
Purple Authentication

As I have been building my various personal projects, I got tired of continually re-implementing authentication. So I thought it would be useful to have a microservice to handle it. The external page is very simple and straightforward, but it also has a robust backend and portal for adding authentication to any web app.

View Purple Authentication Online View Online
Flask WebAuthn Demo screenshot
Flask WebAuthn Demo

With Apple making a big push toward passwordless authentication, I thought it would be time to figure out how to get it working on a website using the technologies that I like. I've tested it with TouchID on my Mac, FaceID on my iPhone, and Windows Hello on my PC. I'd love for you to try it out. You can register as a user with a username and email address, then you go immediately to setting up passwordless authentication with your device. Next time you come back (or if you just click "Logout" then "Login"), it will remember you, and you can log in using your device again. You can also get a magic login link as a fallback, or to register on a different device.

It was quite difficult to figure out at first, but, within about a week, I had a working demo using Python's Flask framework and a few of my other favorite technologies. I wrote a series of blog posts about building it. They're fairly technical and really only useful if you're already well-versed in Python and Flask and some Javascript. And if you're really a nerd like me, you can check out the source code.

Dice Probability Calculator screenshot
Dice Probability Calculator

I couldn't find an easy-to-use or attractive website for calculating the probabilities of the rolls of multiple dice in RPG Games (such as Dungeons&Dragons). So I built this site in an afternoon as a simple way to visualize it. It's bare bones but easy to understand and use.

I walk through collecting all the data needed with nice big buttons on the form, then run the calculation and generate a graph of all the possibilities. You can even print out the graph, and it looks nice, not like a printed website!

Bosnia International Servant Trip Website screenshot
Bosnia International Servant Trip Website

The Bosnia IST was in need of a more modern website. I created an updated site that is extremely fast and easy to update without being more than they needed. It's simple to use and update and gives people the information they need whether they want to learn about the ministry, donate money, or get involved volunteering

View Bosnia International Servant Trip Website Online View Online
Table Tennis Scoreboard screenshot
Table Tennis Scoreboard

My Dad and I always forget the score when we're playing Ping-Pong games in the backyard. Actual scoreboards are quite expensive, so I threw this together in a weekend. As usual, it's super lightweight with as little code as possible to get the job done. This makes the load time very fast even on weaker connections. The largest asset to download is actually the font.

It's a single page app that keeps score, tracks games and matches. It allows you to bind players to certain keys so that you can use a presentation clicker to keep score from far away from your device. There's no server, so it can't keep track of lifetime games or matches, but it does save all configurations to the browser so that you can just pick up with the same player names and keybindings. I also ended up building a correction mode for when I inevitably click the wrong button after a point.