7 ms·
PGlite – Postgres in WASM
- erichocean 3y agoThis seems possible due to the separation of Postgres storage and compute work done by Neon?
- thruflo 3y agoYup, this is based on work by Neon. Also the Neon model allows you to sync in a database on demand, whilst scaling to zero when you’re not using it.
- deleted 3y ago[deleted]
- andrenotgiant 3y agoHow is this different than the one done by CrunchyData here https://www.crunchydata.com/blog/crazy-idea-to-postgres-in-the-web-browser https://www.crunchydata.com/blog/crazy-idea-to-postgres-in-t...
- thruflo 3y agoThe previous PG WASM projects from Crunchy and Snaplet have run Postgres in a VM and required a large 32MB download. This is pure WASM, no VM, 3.7MB download. Plus it has persistent storage.
- nalgeon 3y agoFitting PostgreSQL into a 12MB binary with a simple API is amazing! I was so excited to try it out it that I just released an in-browser PostgreSQL playground on top of PGlite. It's also open source and easy to integrate: https://codapi.org/postgres-pglite https://codapi.org/postgres-pglite
- vbalegas 3y agoAwesome! Will check it out
- ejb999 3y agoInteresting that it could be done at all - but having a hard time coming up with any real world use cases for this. Are there any?
- throwaway92374 3y agoIt can persist data to indexedDB, so web applications can use it if they want a more flexible alternative
- creatonez 3y agoThat's neat, I wonder what the overhead is though.
- tjelen 3y agoCode testing is a big one for me. I'm currently using in-memory sqlite for tests and I'm often running into differences between sqlite and postgres (default values, JSON handling, etc). This could allow me to use the real thing without running a full Docker instance.
- amcaskill 3y agoI think performance and cost are the big motivators here. I work on a web framework for building data apps like reports and dashboards, and we use duckDB’s WASM runtime for interactions (e.g when a user changes a date range filter). It’s really fast, and you don’t spend snowflake credits.
- iansinnott 3y agoNo one using postgres in the cloud is going to use this as an alternative, but there are at least two use cases where this could be very useful: - You want your app to be local first (snappy, great offline support, etc) but sync data to a server. This is the ElectricSQL use case. - You want a serious data store in-browser. SQLite via wasm already fits this use case, but it's nice to have options.
- tyrauber 3y agoThis is awesome. Are extensions like PostGIS supported? I wish react-native natively supported WASM. It would be cool to run this client-side instead of sqlite.
- nilslice 3y agojoin us on the Extism discord https://extism.org/discord https://extism.org/discord, we're working on some things that will enable this. would love to hear what you're thinking!
- philippemnoel 3y agoThis is super cool. Postgres is slowly overlapping on every part of the data stack, even SQLite isn't safe!
- dang 3y agoRelated (but different): Postgres WASM - https://news.ycombinator.com/item?id=33067962 https://news.ycombinator.com/item?id=33067962 - Oct 2022 (185 comments)
- milesokeefe 3y agoThis is amazing! I’ve been wanting this to exist for years for use in unit tests. This made my day (and maybe upcoming work week)