Stuart Thomson

Stuart Thomson

I’ve started another side project.

Source: Reddit
Source: Reddit

I end up reading a lot of articles/watching a lot of videos about various programming topics, and a few other ones. Most of them are forgettable and don’t need remembering. This article, for instance, will fall into that category for almost everyone reading this. Occasionally, though, I find a nugget of information that I want to save.

I’ve already solved this problem for myself once before with a project called the-index. It’s a website where I can submit links, tag them with labels, and then search for things based on those labels later. So what compelled me to make this all over again?

  1. The only reason Javascript developers ever start side projects is to try out the new fancy framework on the block.

  2. Storage is hard.

  3. I was still getting annoyed at knowing I’ve read something, but not knowing where.

This led very clearly into my goals for the project:

  1. Learn something new

  2. Create an application for saving links without feature creep.


To cut a long blog post short, this was ultimately your typical small project. I started by defining a really small scope for the project, and a mostly set list of features. Having this list prevented the feature creep I had when attempting this last time.

linkdrop’s search page, illustrating the tag search
linkdrop’s search page, illustrating the tag search

By far the biggest time-saver was Remix’s “stacks”, which is just their term for a starter repository. The one I chose, the blues stack, includes basic email login (with registration) and a Postgres database with an ORM. Having these saved me from having to spend time worrying about how I handle those areas.

One of the other things the stack included by default was configuration for fly.io, which is a container PaaS company that actively encourages getting around their pricing in their official documentation. This took care of the whole storage situation, meaning I didn’t need to worry about the deploy process for the app.

Should you use linkdrop? Probably not, there are almost certainly better bookmarking services out there. This was me wanting to make something using a framework I hadn’t used before to expand my horizon. Honestly, Remix has some good ideas that have affected how I’ve thought about writing code (I might write something about it later, if I can find a good angle to approach from), and I have a new place to save interesting things I find on the internet. My goals were achieved, so this was a success.