/postgres-wasm

A PostgresQL server running in your browser

Primary LanguageShellMIT LicenseMIT

Postgres WASM

A PostgreSQL server instance running in a virtual machine running in the browser
by Supabase & Snaplet

Snaplet, Supabase and friends

Demo   •   Discord   •   Snaplet   •   Supabase

Quickstart

cd packages/runtime && npx serve

Go to http://localhost:3000 and have fun!

Packages

This repo is split into three packages that build up the environment for running PostgreSQL in the browser.

  • runtime: The v86 emulator that starts the buildroot image
  • Buildroot: Scripts to build the CPU and memory snapshot run by v86.
  • Websockproxy: Networking

Acknowledgements

  • v86 which is the emulator for running x86 operating systems in the browser, without it none of the following projects would be possible
  • crunchydata playground for leading the way and showing the world that it was possible to run PostgreSQL in the browser
  • browser-shell which was already way ahead of its time, especially on the filesystem part
  • browser-linux for showing us how we can make the pieces fit together
  • Websockets Proxy the ingenious workaround that opened up the world for v86 emulators everywhere