Skip to content
New York, NYThe Second Opinion
Engraving of five thrown Rajasthani vessels on a shelf between block-printed borders, one picked out in ember
All work

Raivana

Shop

Node.jsNetlify FunctionsRazorpay

shop I built and still run, selling Rajasthani homeware to customers across eight currencies.

TheWorkStoryNAMEYash NirwanSINCENew York, 2024

ost of the work here is invisible. When someone pays, the payment company tells the site — and sometimes tells it twice, or late, or while the customer is refreshing the page. Making sure one order is recorded exactly once through all of that is the real engineering, and it is the difference between a demo and a shop.

It is plain JavaScript with no framework and no tests. That was right for one person and 156 products, and it is the first thing I would change before a second person touched it.

The Raivana shop's home page: 'Objects with centuries of memory', a hand-painted ceramic vase, and links to brass, ceramics and woodwork
Engraving of a grid of fifteen records; one is an empty dashed outline in ember, a track that does not exist

Ask a language model for a playlist and it will confidently invent songs that do not exist.

Next projects!

The rest of it, and what each one cost.

Engraving of an old computer terminal showing a ruled form of unlabelled fields, with one field flagged in ember

A lot of company software has no way in except the screen. To get data out, something has to click through it the way a person would.