# Work

You should check out [my current projects](/master.md#now) and [my GitHub profile](https://github.com/nileshtrivedi).

I started programming in 1999. Starting with C, I finished many projects with Java and Javascript before discovering and falling in love with Ruby. I co-founded a B2B startup (YouSuggest.us which was a social CRM app) and learnt a lot. The companies I have worked with include GupShup, Truweight, HyperTrack, ClearTax and Meta among others. My primary work has been in building intelligent and scalable software systems but I have dabbled in things like electronics hardware, algorithmic trading, aerodynamics and mathematical music theory.

{% file src="/files/c5lwmSUrStVD9djQoqq0" %}
My outdated resume
{% endfile %}

You can contact me via [Twitter](http://twitter.com/nileshtrivedi) or [ActivityPub](https://fosstodon.org/@nilesh) or [BlueSky](https://bsky.app/profile/nilesh.trivedi.link).

## aicombinator

This is a GPT-powered bot that can automate complex online tasks using both the web browser and API calls. I built this for a generative AI hackathon. This uses OpenAI, Javascript, and Puppeteer: <https://github.com/aicombinator/bot>

{% embed url="<https://user-images.githubusercontent.com/19304/229281118-e143322a-1c6f-4464-9f69-9425454895f0.mp4>" %}

## Grapher: Visual Graph Editor

This is a visual editor for nested graphs: <https://codeberg.org/nilesh/grapher>. This is being used by the Foresight Institute for their civilizational technology trees at [https://foresight.org/tech-tree](https://foresight.org/tech-tree/)

This is built using Svelte and SVG.

<figure><img src="/files/CqSmPPm9vnsvuLm0bbHT" alt=""><figcaption></figcaption></figure>

## [LearnDB](https://github.com/learn-awesome/learndb)

<figure><img src="https://user-images.githubusercontent.com/19304/173263184-2b72e006-91f1-43d6-9bde-3d151272e177.png" alt=""><figcaption></figcaption></figure>

This was an attempt to build a Google Maps for learning. This got some attention at [ProductHunt](https://www.producthunt.com/posts/learnawesome) and [Hacker News](https://news.ycombinator.com/item?id=23795779). I discontinued this in 2024 to rethink learning in the age of AI.

*Ruby, Rails, PostgreSQL, TailwindCSS*

## [Better](https://github.com/nileshtrivedi/better)

![](/files/-MZaSiPEXO4WEZuP9knK)

This is a browser extension that recommends "better" alternative products and services via in-page popups, based on community-curated lists. Available for all Chromium and Firefox-based browsers..

*Javascript, Web Extension API*

## [Bizzy - A responsive design testing tool](https://bizzy.polyglot.network/)

![](/files/-MZaW6ypHRpEaSqqzbCo)

This is a fork of an old version of Sizzy that lets you test a webpage in different screen sizes.

## [Physics Simulation in Javascript](https://hasgeek.tv/jsfoo/2013-2/688-interactive-physics-simulation-in-the-browser-what-i-learned)

![](/files/-MZaWQf38Ywy27MkvWza)

I made a [physics playground app](https://mechasim.herokuapp.com) for the browser, which involved vector math, Runge-Kutta integration, impulse-based constraint solver and drawing with HTML5 Canvas API. I gave [a tech talk about this at JSFoo 2013](https://hasgeek.tv/jsfoo/2013-2/688-interactive-physics-simulation-in-the-browser-what-i-learned).

*Javascript, Canvas API, Mozilla Persona*

## [Embedded Flashcard with Spaced Repetition](https://nilesh.trivedi.pw/articles/spacedrep.html)

![](/files/-MZaSn0Gj1rW3z5af3kK)

This is a reusable UI widget which any webpage can embed for their readers to practice the content using spaced-repetition techniques. All progress is kept on localStorage so users do not need to sign up.

*VueJS, Web Components*

## [GupShup](https://gupshup.me/)

![](/files/-MZaSrFbNnwY6v_nRlMc)

I was tech lead with them from 2009 to 2013, building the enterprise platform serving 35 million users and sending out 2 billion messages every month.

*Ruby, Rails, Android, Facebook API*

## MapGap

![](/files/-MZaSypoBKKaTaLKB9ia)

I made this app at [NASA Space Apps Challenge](http://spaceappschallenge.org/) at Delhi in April 2013. It allows you to submit spots in the planet to NASA where satelite imagery is needed but missing.

*Ruby, Sinatra, MongoDB & Google Maps API*

## BugRoulette

![](/files/-MZaT950c0VIrHVYu8iC)

I made this app for events like [Pullathon](http://pullathon.com/). It lets you randomly browse open issues from GitHub repositories that you follow.

*Ruby, Sinatra, GitHub, OAuth*

## [Live Coding](http://www.nileshtrivedi.com/livecoding_js_demo/)

![](/files/-MZaTH05uclSvaHdYA2q)

Inspired from [Bret Victor's famous talk](http://vimeo.com/36579366), I made this prototype for live coding. The idea is that as you code, the tests are run automatically and their status is immediately visible to the programmer.

*Javascript*


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://nilesh.trivedi.link/work.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
