napsterify's own engine

March 16, 2025

Tinker the engine at https://music-engine.netlify.app

engine

Preview docs at https://engine.napsterify.in

I was working on this codebase, and everything felt like a house of cards—one wrong move, and it could all collapse. The engine, the supposed core, was tangled in with everything else and had zero test coverage. In Hindi, I’d call this भगवान भरोसे — running purely on faith.

Doodle

I decided to separate the engine into its own subpackage. But then I hit a TypeScript error from immer while building its types. Rather than waste hours debugging, I took the lazy route and switched to npm as the package manager for now.

For testing, I’m using Cypress since it lets me test the app like a real user—clicking, navigating — rather than writing isolated function tests with Jest or Vitest. And honestly, it’s just easier to visualise my tests in the first place.