Stop uploading your DBs! View SQLite files 100% locally with WASM

Published: (December 22, 2025 at 08:50 PM EST)
2 min read
Source: Dev.to

Source: Dev.to

The Problem

“Please upload your .db file” … Ummm, no.

Last week I needed to debug a strange issue with a user’s local SQLite database. The user sent me the .db file (with permission). I only needed to run a quick query like:

SELECT * FROM users WHERE id = …;

I didn’t want to spin up a full DBeaver instance or write a Python script for a 30‑second check, so I searched for “Online SQLite Viewer”. Every result required uploading the file to a server:

  • “Upload your file to view it!”
  • “Server processing…”
  • “Wait for upload…”

That’s unacceptable for production data. Even with promises to delete the file, I can’t risk exposing a user’s database. I asked myself why viewing a local file still requires a server round‑trip in 2025 when browsers can run complex workloads (e.g., Doom). The answer: they don’t have to.

The Solution

I built a completely client‑side SQLite viewer that never uploads the file. The browser reads the file into memory and passes the buffer directly to a WebAssembly (WASM) SQLite engine.

Stack

  • Nuxt 3 – for a smooth developer experience and auto‑imports.
  • Tailwind CSS – to style the UI without fighting CSS.
  • sqlite‑wasm – the official WebAssembly build of SQLite, providing a full SQLite engine inside the browser.

Why It’s Different

  • No uploads – When you “open” a file, the browser reads the file buffer locally and feeds it to the WASM instance. Opening the Network tab shows zero requests that send your DB file.
  • Works offline – Turn off Wi‑Fi after loading the page; the viewer still functions because everything runs locally.
  • Full SQLite support – You can execute any query the standard SQLite engine supports.

Features

Run arbitrary SQL queries directly in the browser, for example:

SELECT *
FROM orders
WHERE total > 100
ORDER BY created_at DESC;

The viewer handles large files (tested comfortably up to 500 MiB; larger files depend on available RAM).

Try It

The tool is free, open‑source, and contains no ads or tracking.
Try the Offline SQLite Viewer (link coming soon).

Let me know how it works for you—especially with 1 GB+ files! Happy (secure) coding! 🔒

Back to Blog

Related posts

Read more »

Good morning everyone, now I have WASM.

Hello everyone, I'm zayoka. A few days ago, I posted about this project on Hacker News and got rightfully slammed because I said I used WASM in the title, but t...