close
Independent software practice · Navi Mumbai, India

Useful software.
Yours by default.

I’m Dev Bhamaria. I build open-source tools that do serious work locally, keeping your files and voice on your machine.

Currently studying BCA while building privacy-minded desktop and web software.

Scroll for the work

The principle

Software should be powerful without becoming extractive.

Local processing is not a feature badge. It shapes the architecture: no upload queue, no account wall, and no dependency on a server being there tomorrow.

How I work ↓

01 / Selected work

Three products, made end to end, from engineering constraints to the interface people touch.

Proof, not promises.

01

IHatePDF

Offline PDF toolkit
Web + Windows

IHatePDF application home screen with locally processed PDF tools

A 28-tool PDF workspace that runs in the browser or as a Windows app. Files stay on the machine because there is no upload service behind it.

28
local PDF tools
35.5 → 1.95 MB
scan compression test
0
network requests in test

Built around browser-native processing, WebAssembly, and deliberately tested low-memory behavior. The project has public test evidence rather than a vague privacy claim.

React · TypeScript · WebAssembly · Electron · pdf-lib · pdf.js

02

Wisperno Pro

Local dictation for Windows
GPU accelerated

Wisperno Pro local dictation application showing text transform options

Push to talk, dictate, and keep working. Speech recognition and cleanup run on a local GPU; the resulting text returns directly to the active app.

0.85 s
per 100 words
< 4 GB
VRAM on default preset
98.3%
cleanup accuracy

The real challenge was building an assistant that feels instant without quietly exporting sensitive voice data. The interface includes local history, a custom dictionary, reusable snippets, and controllable text transforms.

Python 3.12 · PySide6 · CUDA · faster-whisper · llama.cpp

03

Jarvis

Offline voice assistant
Windows

Jarvis voice assistant home screen with a conversation, a running timer and the living reactor

Say “Jarvis” and it opens apps, clicks what is on screen, sets timers and reminders, and remembers things for you. Listening, understanding, voice and memory all stay on one Windows laptop.

650 ms
speech to action
42 ms
click on screen
~4 GB
graphics memory

Plain rules handle everyday commands in milliseconds, and a small local model is only used for messy speech. After acting, Jarvis checks the result before it says it is done, and risky actions need a spoken yes. From V1 to V4 it grew from voice commands to reading the screen by name.

Python 3.12 · faster-whisper · llama.cpp · Kokoro · pywebview · UI Automation

02 / Working style

Good software earns trust in the details.

Start with the constraint.

  1. 01

    Start with the constraint.

    Privacy, memory, hardware, and real-world failure modes are product decisions, not cleanup work after launch.

  2. 02

    Make complexity legible.

    Interfaces should make capable systems feel calm. I care about the empty states, keyboard paths, and wording as much as the engine.

  3. 03

    Publish the evidence.

    Where a claim matters, I try to test it, document it, and link the method. People deserve more than marketing language.

DB.

Based in
Navi Mumbai

03 / About

A builder with a bias for ownership.

I’m a BCA student at D Y Patil Deemed to be University, building open-source tools alongside my coursework. My interests sit where product thinking meets systems work: local AI, thoughtful interfaces, browser capabilities, and software that lasts.

04 / Contact

Have a difficult
thing to make?

Open to hiring opportunities, collaborations, product work, and interesting engineering problems. Write to me.

dev.bhamaria@gmail.com ↗

Technical notes

The deeper work, when you want it.

Screenshots, engineering notes, and measured results live inside each project above.

IHatePDF: screens, test evidence, and architecture

IHatePDF is tested as a product, not just a demo. The published report covers tool flows, file outputs, privacy checks, and constrained-memory behavior.

IHatePDF compression settings screen
Compression controls
IHatePDF text editing screen
In-place text editing
IHatePDF protection screen
Local document protection
EvidenceResult
35.5 MB scanned PDF at 2 MB target1.95 MB output, processed locally
Test report80 checks passing; no network requests
StackReact, TypeScript, WebAssembly, pdf-lib, pdf.js, Electron
Wisperno Pro: product screens and local-GPU benchmarks

Wisperno Pro keeps the entire dictation path on-device. The benchmark results below are from the documented local RTX 4070 Laptop GPU setup.

Wisperno Pro local history screen
Searchable local history
Wisperno Pro custom dictionary
Custom dictionary
Wisperno Pro floating dictation pill states
Focus-preserving control states
MeasureDefault Turbo Flagship preset
100-word dictation0.85 s
Decode speed / cleanup accuracy110.2 tok/s / 98.3%
Local stackPython, PySide6, CUDA, faster-whisper, llama.cpp
Jarvis: product screens and measured results

Jarvis keeps the whole assistant on the laptop. Numbers below are lab measurements from the build laptop, an RTX 4070 Laptop GPU.

MeasureResult
End of speech to actionabout 650 ms
Click on a native window42 ms
StackPython, faster-whisper, llama.cpp, Kokoro, pywebview