Site Update: Tools of the Trade
3 min read
This is a list I’ve wanted to build for a while.
A place to gather all sorts of tools such as daily apps, and weird little calculators that I keep returning to. Some are lightweight and clever, others are essential. All of them have earned their place. The new Tools page brings them together.
The design is simple, but deliberate. You’re first met with a question: “Do you want to…” …followed by six categories: Connect, Create, Discover, Experience, Organize, and Secure; with each acting as a lens for exploration.
Interact with one, and the interface gently shifts to show tools in that category. If you don’t select a category, you’ll be shown a random set of five tools, shuffled each time you refresh. It’s meant to be a soft invitation to explore. Each tool is displayed as a card - name, short description, platform tags. No ratings. No upvotes. No affiliate links. Just a clean presentation of what it does and where it runs.
There is also a platform filter. At the top right of the page, a subtle hamburger menu opens a dropdown where you can select the platforms you use: Android, iOS, Linux, macOS, Web, Windows. All are selected by default, but if you’re only looking for browser-based tools or want to exclude say macOS, just uncheck what doesn’t apply. The list updates instantly. No reloads. No delay.
Technically, the page is powered by (you guessed it) a simple JSON file that holds tool data- name, URL, description, icon, platforms, and category. That structure keeps it easy to update and future-proof. There’s some focused logic to handle the active category state, platform filters, and the occasional shuffle. Performance-wise, the page benefits from Astro’s partial hydration and the minimal JS approach. Most of the page is static content, so it loads quickly and is indexed easily. The only dynamic parts (category filtering and platform toggles) load after the initial content, and since the JS is lightweight and scoped, it doesn’t bog down page load. This strategy of using just enough JavaScript and no more keeps interactions fast.
There’s just enough interactivity to feel smooth, and no more.
Visually, it’s restrained. The layout adapts across screens, the type is consistent, and hover states are subtle. There’s a soft underline that slides between active categories. Scrollbars stay hidden unless you need them.. The goal was clarity without distraction. Whether you click, tap, or tab through the interface, it stays usable and calm.
There’s more I want to add. A search bar might come next. But for now, this page is what it needs to be: thoughtful, fast, and easy to use. A quiet little place to find something useful, and maybe something new.
Enjoy!