I build side projects for one or more of the following reasons:

  1. Learn a new language
  2. Solve a problem I have
  3. Learn a technology (for ex: gRPC) that complements a stack I'm already familiar with (.NET)
  4. I'm just bored

I deploy some projects, make some open source, while keeping the rest to myself.

Below are some projects that is available on the internet:

1. plaintweet

plaintweet: A minimal, distraction-free Twitter app. Built using .NET Core MVC.

plaintweet is a minimal, distraction-free Twitter web app with a few rules.

Why I built it:

To solve a problem I had. I always felt Twitter to be very cluttered and showing me tweets the algorithm decided was right for me. You can read more about it here:

Why I build plaintweet - A minimal Twitter

Tech stack:

.NET Core 3.1, MVC, water.css. It uses no JavaScript. It is built on top of Twitter's API using TweetInvi library.

It runs on a $5 Linux VM and at one point, served over 10, 000 hits within a span of 8 hours when it hit Hacker News front page without any problem. The max CPU it ever hit was 6% while hovering mostly between 2-3%.

CPU usage when it hit Hacker News front page

You can read more about it here.

2. HackerNews Deck

HackerNews Deck: A reader to browse HackerNews like TweetDeck. Built using NextJS and React.

HackerNews Deck is a reader for HackerNews that has HackerNews sections (like front page, show HN, ask HN) as columns similar to TweetDeck for Twitter.

Why I built it?

I built this to learn NextJS, a React Framework. I have some experience working Angular but not much with React and NextJS. I built this application to pick up some basic React and NextJS skills.

You can see the app here: HackerNews Deck

Tech Stack

NextJS, React, Bulma (CSS) and HackerNews API. It is hosted on Vericel. Vericel (and also Netlify) has a great way to configure and deploy JAM stack applications.


3. What the Foreign Exchange!!

What the Foreign Exchange: Foreign exchange rates meets GIFs.

What the Foreign Exchange is a fun way to know exchange rates and help decide if you should transfer money now or not based on 6 months trend.

Why I built it?

I often transfer money from USD to INR, so I have an interest. But searching for it in Google and seeing the changes in decimals did not make much sense to me. All I wanted was a way to know if it good to send now or not based on exchange rate in the past 6 months.

I built this using NextJS and React. After building HackerNews Deck (above), and now building this app, I'm starting to enjoy using both NextJS and React.

You can see the app here: What the Foreign Exchange!!

Tech Stack

NextJS, React, Bulma (CSS) and Foreign Exchange Rates API. It is hosted on Netlify.


4. Developer Blog

It's a blog where I write about technical stuff.

Why I build it?

I created a separate developer blog since I wanted this blog to be more of a personal space where I write about a variety of topics.

I'm constantly trying new things and learning new technologies that I wanted a place to document my learning. For example, when I'm building a gRPC service and deploying it on a Linux VM, I do lot of Googling. I don't want to do all of that again the next time I deploy it. I document it in my developer blog so I can refer to it later when I need it. And if it helps even one person, the article would have served its purpose.

Tech stack:

Uses a self-hosted version of Ghost and runs on DigitalOcean VM. Side note: I love DigitalOcean. Their tutorials are amazing and one of the inspirations for me to create a blog where I write tutorials.