{"repo":"event-driven-io/Pongo","free":true,"listed":false,"github":"https://github.com/event-driven-io/Pongo","clone":"git clone https://github.com/event-driven-io/Pongo.git","description":"Pongo - Mongo but on Postgres and with strong consistency benefits","language":"TypeScript","stars":1375,"topics":["mogodb","nodejs","postgresql","typescript"],"license":"Apache-2.0","category":"databases-storage","readme_excerpt":"Pongo Pongo - Mongo but on PostgreSQL and with strong consistency benefits. Getting Started Install Pongo as an npm module and save it to your package.json: Read also introduction article on my blog for more context. Example You can use Pongo syntax with explicit typing about supported syntax: Or use MongoDB compliant shim: How does it work? Pongo treats PostgreSQL as a Document Database benefiting from JSONB support. Unlike the plain text storage of the traditional JSON type, JSONB stores JSON data in a binary format. This simple change brings significant advantages in terms of performance and storage efficiency. Pongo uses the following table structure for storing collections: Essentially Pongo takes MongoDB api and translates it to the native PostgreSQL queries. It is a similar concept to Marten, FerretDB and AWS DocumentDB. E.g. the MongoDB update syntax: will be translated to: Or for query: will result in: Why Pongo? MongoDB is a decent database, yet it has issues around ACID-complaince and licensing, which can cause hardship for project scenarios and organisation policies. Pongo brings the PostgreSQL shape-shifting capabilities to: - benefit from strong consistency by using battle-tested and widely used PostgreSQL ACID-compliant database, - easier integration with other parts of your system using PostgreSQL, - reuse your muscle memory from MongoDB using compatible API. It will allow easier migration of existing projects, - cut boilerplate and easier nested data manageme","default_branch":null,"files":null,"tree":[],"storefront":"/r/event-driven-io","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/event-driven-io/Pongo/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}