Home Artists Posts Import Register

Content

Hey everyone! Here's the detailed roundup of everything I worked on during the month of March, exclusively for patrons.

Peek

Peek is my browser extension that shows previews for links (PDFs, Reddit posts, etc) when you hover your mouse over them. The last update was in February 2021, and even though that was a partial code cleanup, there was more room for improvement and new features.

This past March, I released Peek 5.0, which might be the most involved update for anything I've ever made. It ended up being a nearly-complete rewrite, and I already outlined all the improvements in a blog post. It updated the popup design and added support for new types of previews (like Imgur and TikTok links).

The code rewrites largely focused on unifying the preview code as much as possible between different types. In previous versions, once a compatible link was identified, it was handed off to one of many functions that were all very similar for generating the popup. Peek 5.0 moves all this code into a single unified function.

There were also a few aspects of Peek's codebase that just didn't need to exist, which were cleaned up in 5.0. There was an entire function for converting relative URLs into the full paths (e.g. "/path/home.html" to "https://example.com/path/home.html), with some extra logic for fixing links on Internet Archive sites and checking the final result with a hidden image tag. None of that actually needed to exist -- browsers have a URL interface that works well.

Now that all that rewriting is out of the way, I can more easily add features and improvements in future updates :)

PhotoStack

I've been on-and-off working on a major update for PhotoStack. Unlike the PhotoStack 2 update that I completed in 2020, this (probably) won't have any new features. I'm focusing on UX improvements that will make it easier to use, easier for other people to discover, and easier for me to maintain in the long term.

PhotoStack 3 will merge the current splash page domain (photostack.app) with the photo editor (edit.photostack.app) into one combined experience. Right now, there are three distinct pages/tabs: Home, Editor, and Watermarks. Home is a splash screen with some general info, Editor is the photo editor, and Watermarks is the watermark manager that currently lives inside the photo editor. This may change before release.

(Note: This UI is still a work in progress)

So far, I've migrated PhotoStack to a newer version of Bootstrap, and it now uses Bootstrap's new dark theme instead of a custom theme. I've also removed the bottom bar for the editor that appeared on small screens, with the buttons now appearing in the hamburger menu. This does make some previously 1-tap actions into 2-tap actions, but it also reduces how much you have to scroll since more of the settings are viewable at any given time. I've also made the image preview a bit larger on desktop, and printing in the photo editor works again.

I'm taking my time with this update, since PhotoStack isn't in desperate need of an overhaul right now anyway. I'll share more in these development logs when I have more to share.

ImageShare

ImageShare is my lightweight web app for uploading images, which was originally designed as a replacement for the official (and now defunct) Image Share service on the Nintendo 3DS and Wii U, but also works on many other legacy web browsers.

ImageShare is written in PHP, and was originally hosted on the Heroku platform. In 2022, I set up a dedicated domain and moved it to the DigitalOcean App Platform, after Heroku announced that it was shutting down free plans. That was annoying to deal with, but then in October 2022, ImageShare stopped working entirely on the 3DS and Wii U because the required SSL certificate toolchain on those consoles expired. I hastily set up a Linux VPS from DigitalOcean and set up a server myself that didn't force an HTTPS connection, allowing those devices to connect once again.

I knew I needed a more long-term solution, because it would take me a while to rebuild that server again if it went down. It was also difficult to work on new features because PHP is terrible.

In March, I finished and deployed a new iteration of ImageShare. It looks and works the same for users, but the underlying codebase was rewritten to run as a Docker container. That makes it much easier for me to work on improvements and new features, since setting up the server on a computer is a single command. It's also easier for me to run as a service — if something happens to the production server, I can rebuild it in a few minutes.

The downside is that ImageShare now costs a bit more to stay alive. Docker needs more memory, so ImageShare is now running on a 1 GB RAM Linux VPS from DigitalOcean, which costs $6 per month instead of the older $4/mo hosting. At least it works well!

Picture-in-Picture Shortcut

In March, I released a minor update for my Picture-in-Picture Shortcut browser extension. It updated the toolbar icon to be more readable when the browser is in dark mode, and fixed a bug where the welcome message would appear over and over again.

I want to release another minor update soon that makes the welcome and settings pages more like the recent Peek update, so that might happen soon.

Comments

No comments found for this post.