My Indie Software Projects
Table of Contents
- Render My Markdown (Live)
- referrer.sh (Live)
- Secretely (Beta)
- Keyboardnotes (Live)
- Ui Diff (Live)
- Cryptoprices (Live)
Render My Markdown
When I wanted to add basic functionality to share notes for Keyboardnotes, I really just wanted a url where I could attach my markdown, and get it rendered on a non-branded white page. I didn't find any soltions for this. So I build it.
With Render My Markdown you can integrate basic markdown sharing functionality through a single url. Just attach the raw markdown in a url encoded fashion to a query string, and you're off to the races.
Due to the pandemic in 2020 many companies suffered and people lost their jobs as a consequence. A lot of people in the tech field (including myself) managed to keep their job though, and even get more inquirers about job opportunities.
Usually when you get a job opportunity that you're not available for you want to point the recruiter in the way of some of your friends that are in the same area of expertise and that you think could be a good fit for the job.
I built referrer.sh to make this process of recommending your friends for work easier. With referrer.sh you can generate a nice looking list of links to your friends' online portfolios and profiles. You can then embed this widget on your own website which helps visitors find other great people for the job, that gets them back into the job market.
This is a web application I built with the goal to have a simpler tool to store secrets, passwords, and credentials. I watched as my elders tried to use tools like 1Password and Lastpass, and saw them struggling with those tools' evident complexities.
Secretely is a simple web application where you sign in with your email and a 16 character password. You can create new secrets, which automatically get encrypted using this encryption library. To read your secrets, you first decrypt and then copy them.
You quickly get a glance when a secret was last updated, so you now which is the right one, and you can easily destroy ones you no longer want to store on Secretely. Your main password is encrypted using bcrypt and data is stored on MongoDB Atlas.
I spent many hours trying to find the perfect tool for taking notes. I discovered that most tools have a lot more than just taking notes. They usually bundle in things like notifications, calendars and todos. They're usually pretty slow and don't have very good support for keyboard navigation.
I built this web application for myself to get a note taking platform where I can simply take notes. Nothing else. Nothing more than that. Notes, entirely through my keyboard. With this tool, keyboard heavy users can take notes without touching their mouse. It's blazing fast, without any special terms like "cards", "stories", or "pages".
The notes are written using a extended version of markdown, which allow for things like checkbox lists, tables, and code blocks. You have a preview on the right of what the outputted markdown looks like. You can quickly jump between notes using the keyboard, resize the editing area, and even bulk select notes. All using your keyboard.
Building a public facing website with many pages require very cautious checks each time you publish a new version. If you've been working on a revision for the sign up page for a couple of months, there's a high likelihood you have changed some code that will result in some other page breaking. This can be very frustrating and damage your band substantially.
Ui Diff monitors your websites' pages on several environments, and warns you if something has changed on a visual level. You can visually browse through your pages, and compare the differences on a pixel to pixel level. This helps you spot what has caused the warning, and help you catch visual regressions before going live.
Ui Diff doesn't add any weight to your website, and is just a script that you run on your local machine before you go live. You manually specify which environments to include in each check in a configuration file. I then use puppeteer to screenshot each and every page, also specified by the user, and send them to a dashboard. If a regression has been found, a red notice will be visible on that image. From there you can simply compare one page over several environments to find the bug.
Back in the boom of Bitcoin a couple of years ago I found myself finding it difficult to find a place where I could get a view of the current price without getting targeted to sign up to crypto wallets. I also found few places where I could get a quick view of several crypto currencies at once, and explore less known ones.
I found this API which let me fetch more or less every crypto currency available in one go. Using this API I created Cryptoprices. A place where users can go to quickly, privately, and securely, to inspect cryptocurrency trends, get a grasp of where the market is at, explore new currencies, and keep track of specific prices of interest.