Free Software projects

A selection of free software projects I maintain or contribute to.

Some of these projects are actively maintained: some might use some extra effort.

If you would like to encourage their development, or would like to steer development towards features you are interested into, your contribution is welcome.



psycopg2 is the de-facto standard for interoperation between Python and PostgreSQL.

I have been involved in development and testing since inception (when psycopg 1 was a thing), and since about 2010 have been maintaining the project: first writing documentation, completing a test grid, setting up the web presence (website, mailing list), and finally finding myself responsible for the codebase.

Please refer to the psycopg homepage for any information about the project.


I have been thinking about a psycopg2 successor for a long time and the development of psycopg3 has recently started.

I would like to design the interface based on years of understanding where psycopg2 users have found the most problems, using more up-to-date communication protocols to the database server, maybe taking the chance to review the whole DB-API standard and bring it to a modern time.

In my blog you can find a series of articles about psycopg3 development.

mature software

A selection of widely used packages I've written. Some of them are relatively active, others are only rarely maintained.

If you would like to have new features developed please get in touch.

experimental software

These project are in development or design stage and haven't reached maturity yet. Some of them have been used in production environment for specific cases but they are not generic enough.

I am especially interested in bringing those projects to maturity: if you are interested in their development it would be great to know!

  • pg_seldump: create selective data dump from PostgreSQL
  • replisome: The most flexible logical replication system for PostgreSQL
  • bromine: Pythonic wrapper from Selenium web testing
  • pgaudit: audit trail for PostgreSQL
  • weeder: Remove unneeded historical files
  • pg_cash: a double-entry system for PostgreSQL
  • bacon: an OLAP cube for PostgreSQL