pgrust
A Postgres rewrite in Rust.



pgrust targets compatibility with Postgres 18.3 and matches Postgres's
expected output across more than 46,000 regression queries.
pgrust is disk compatible with Postgres and can boot from an existing Postgres
18.3 data directory.
The goal is to make Postgres easier to change from the inside: keep the behavior
Postgres-shaped, keep the real Postgres tests as the oracle, and use Rust plus
AI-assisted programming to explore deeper server changes.
Status
pgrust is not production-ready yet. It is not performance optimized yet.
Existing Postgres extensions and procedural language extensions such as
PL/Python, PL/Perl, and PL/Tcl are not generally compatible yet. Some bundled
contrib modules are already ported, and more compatibility may be possible over
time.
Roadmap
multithreaded Postgres internals
built-in connection pooling
better JSON-heavy workload support
fast forking and branching workflows
storage experiments, including no-vacuum designs
runtime guardrails for bad queries and AI-generated SQL
fewer sudden bad plan switches
Try It
Try the WebAssembly demo at https://pgrust.com.
Docker:
This uses the psql client inside the Docker image.
malisper/pgrust:latest currently points at the same release, but v0.1 is the
pinned launch image.
Build From Source
macOS:
Debian/Ubuntu:
Build:
Create a data directory:
Run pgrust:
Connect:
Regression Tests
Run the Postgres regression tests against pgrust:
The runner uses pgrust's own --initdb plus the vendored Postgres 18.3 test
files in this repository. It needs a Postgres 18 psql client on PATH; if
psql is somewhere else, set PGRUST_PSQL=/path/to/psql.
Verified launch result: pgrust matched Postgres's expected output across more
than 46,000 regression queries.
History
This repository now contains the newer pgrust implementation that reached the
regression-test milestone.
The older public implementation is archived on
archive/pre-fabled-2026-06-23.
Background:
Original pgrust launch: https://malisper.me/pgrust-rebuilding-postgres-in-rust-with-ai/
https://malisper.me/pgrust-rebuilding-postgres-in-rust-with-ai/
67% regression update: https://malisper.me/pgrust-update-at-67-postgres-compatibility-and-accelerating/
https://malisper.me/pgrust-update-at-67-postgres-compatibility-and-accelerating/
Four Horsemen roadmap: https://malisper.me/the-four-horsemen-behind-thousands-of-postgres-outages/
https://malisper.me/the-four-horsemen-behind-thousands-of-postgres-outages/
Feedback
Please open an issue if something breaks, if setup is confusing, or if there is
a Postgres improvement you want to see first.
Contact
Email: maintainers@pgrust.com
Discord: https://discord.gg/FZZ4dbdvwU
Mailing list: https://malisper.me/subscribe/
https://malisper.me/subscribe/
License
pgrust is licensed under AGPL-3.0. See LICENSE.