The author

Hi, I’m Ashfaq.
I build sparshlabs.

Small open-source tools that each fix one real annoyance, documented honestly and free to run yourself.

Background

A bit about me.

By day I’m a full-stack engineer in the R&D department at Sapiens. I’ve been building software for the web since 2018, on both ends: the backend that does the work and the frontend people actually touch.

Working across the whole stack means running into the small annoyances that live between the layers: a button that moves just as you tap it, a CI queue you’re waiting on when your own machine sits idle. Those are the ones I can’t leave alone.

sparshlabs is where I build the tools I wish already existed. It started with sparsh, for taps that land on the wrong thing; OwnCI came next.

What I build

Two projects, both early.

v0.1 · npm

sparsh · Trustworthy touch

Stops a tap from activating the wrong thing when the interface changes under the finger: a new message slides in, a row shifts, a button changes meaning mid-press.

v0.2.0 · MVP

OwnCI · Your PR. Your Compute.

Turns your Linux machine into a GitHub Actions runner for your repository, with one command each to set it up, start it, stop it and remove it.

How I work

The habits behind every project.

01

Limits written down

Each project says what it doesn’t do: sparsh keeps a limitations file, and OwnCI’s security page spells out what a job container does and doesn’t protect.

02

Tested where it runs

sparsh is tested in real browsers with Playwright. OwnCI’s acceptance test is a real pull request check, run on a real machine, inside a job container.

03

Small on purpose

One problem per tool, explainable in a sentence. TypeScript for sparsh, Go and Docker for OwnCI.

Get in touch

Say hello.

Found a bug or have an idea? Open an issue on GitHub. For anything else, find me on LinkedIn or write to ashfaqc137@gmail.com.

GitHub