Skip to content

Ladybug-Memory/pgembed

Repository files navigation

Python Version Postgres Version

Linux Support macOS Apple Silicon Support >=11 macOS Intel Support => 10.0 Windows Support >= 2022

License PyPI Package PyPI - Downloads

pgembed: Embedded PostgreSQL for Agents

pgembed makes it easy to add a full-featured PostgreSQL database to your Python application—no server setup required. Your users simply run pip install yourapp, and PostgreSQL comes bundled automatically.

Think of it like SQLite, but with the power of PostgreSQL. Just pip install pgembed, call pgembed.get_server(...), and you're ready to go.

Open In Colab

What pgembed gives you

  • Pip-installable PostgreSQL binaries: Pre-built wheels for Linux, macOS (Apple Silicon & Intel), and Windows
  • No admin rights needed: Runs without sudo or root access
  • Handles edge cases: Works in Docker containers, Google Colab, and environments with multiple PostgreSQL installations
  • Simple initialization: pgembed.get_server(MY_DATA_DIR) handles initdb, port management, and process cleanup automatically
  • Vector search ready: Includes pgvector and pgvectorscale extensions for vector similarity queries and high-performance vector storage

Quick start

import pgembed

# Initialize and start the server
pgembed.get_server("/path/to/my/data/dir")

# Connect and use like any PostgreSQL database
# ... your database code here
# Look in examples/*.py for more complete examples that could be run via uv

PostgreSQL binaries are available at pgembed.POSTGRES_BIN_PATH if you need direct access to tools like initdb, pg_ctl, psql, or pg_config.

History

pgembed is a fork of pgserver, which was inspired by postgresql-wheel. While those projects focused primarily on Linux wheels, pgembed extends the approach with:

  • Multi-platform support (Linux, macOS, Windows)
  • Robust process management and cleanup
  • Built-in pgvector and pgvectorscale extensions

About

Embedded PostgreSQL for Agents

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 6