I made dis!

Amethyst Labs

I started this project/company with my batchmates. It involved creating a fallback, hyperlocal but decentralized network. It’s applications varied from P2P music sharing to heavy analytics on an area like metro station.

The idea was to free people from the shackles of centralized power structures and allow them to sustain on their own.


A terminal emulator which is based on a very simple idea, JavaScript should be used everywhere including your terminal. The project involved parsing linux command outputs, and applying JS functions on the result.



A different approach but the basic idea is same as Awkward, except this time there’s no terminal emulator, just a linux command, and the language is Haskell. I also added plugin support to this project which was difficult and new for me.



Delving deep inside Node.JS, I wanted to create a public radio service where you login and stream other people’s speaker output or broadcast your own audio. The system relied on websockets for streaming purposes and PubNub for broadcasting messages.



It’s a cheap Jarvis knockoff actually. The system can listen for your commands and obeys accordingly. You can ask it to play music, ask basic question or control your laptop.

Voice authentication in 4 lines of code

It’s a simple script which assumes you have an android phone connected along with ADB access. I noticed that whenever I said ‘Ok Google’ to my phone, it always logged a special string. This script scans for that special string in ADB log output. If that string is encountered, authentication is completed.


On one of those days, when you called a function with some parameters, and that function called another function, which in turn called an internal library function, and when you checked back your parameters, somehow they changed. Well, this nifty little tool is for those days. When you aren’t in the mood for checking every single line while in debugging mode, looking for clues.



Avid is a weirdly complex thing I came up with. It’s basically a tool, which takes in instructions and spews out the result of those instructions. The catch is, these instructions are run on your GPU(Nvidia actually, I added GPU support through CUDA).

The idea was to allow people to run simulations on GPU, and the instruction set was the language, in which they would model the simulation.