Building pgAdmin
pgAdmin is a community project, relying on contributions from developers around the world for bug fixes and new features. Anyone is welcome to join the project and contribute as much or as little as they like. pgAdmin is written in Python and React, using the Flask framework, so at the least you will want to be familiar with Python and basic web development to hack the code. The more experienced pgAdmin developers will also be able to lend a guiding hand to new developers, so don't be afraid to get stuck in!
Overview
The pages in this section of the website should provide you with all the information you need to get started as a new developer, including GIT access, the developers mailing list, the Development Team structure, the TODO list and the change log.
If you are not a programmer, you can still get involved in the project if you wish - as a translator, or helping the developers with testing or documentation.
Contributing
pgAdmin is a voluntary project created and managed by contributors from around the world. The project can only live and develop with your help. Do not hesitate to get involved.
If you would like to contribute new features and/or bug fixes, please visit the development page.
Resources
GIT access
pgAdmin is available subject to the terms of the licence. Access to the repository is available through at GitHub. An outline of a typical workflow for making and submitting a change to pgAdmin can be found in the documentation.
Instructions for building pgAdmin from source, and notes on other useful development information can be found in the README.md file in the source tree. Additional information can also be found in the documentation.
Mailing List
The pgadmin-hackers mailing list is intended for developers who wish to contribute to pgAdmin project. You are more than welcome to subscribe, but please remember to use pgadmin-support list for end user support issues.
To manage your subscription to the mailing list, including subscribing and unsubscribing, visit the PGLister Management web interface.
To unsubscribe quickly you can also send an email to: pgadmin-hackers-unsubscribe@lists.postgresql.org.
Messages sent to the list are publicly and permanently archived at the PostgreSQL Archives.
TODO List
The TODO list is a list of features that are planned or have been requested for inclusion in a future version of pgAdmin. As pgAdmin is a volunteer project, there is no guarantee that any feature will be implemented in any particular release, but where we expect or aim to do so, the feature will be tagged with a target version.
You can view the TODO list on the pgAdmin 4 GitHub project.
Change Log
The change log is a record of the notable changes made to pgAdmin by the various developers, published in the release notes section of the documentation. It is a manually maintained list, and as such may not include details of every minor change that has ever been made. If you need that level of detail, please check the commit messages in the GIT repository.
You can view the change log on the website.
Translations
pgAdmin 4 has been translated into a number of different languages. The table below lists the languages for which we have message catalogs and their current status (from the head of the source tree in Git). Data is updated hourly, and is subject to caching.
If you would like to add support for a new language, or update one that appears to be unmaintained, first, please send an email to pgadmin-hackers@postgresql.org in order to ensure your efforts are coordinated with the team and not duplicated or otherwise wasted.
Once it's time to begin working on your translation, grab a copy of the template message catalog, load it into a tool such as POEDIT, translate the contents, then save the .po file and send it to the pgadmin-hackers mailing list.
The template message catalog currently contains 3676 messages.
| Messages | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Language | Revised | Translator | Total | Translated | Fuzzy | Untranslated | Status | |||||
| Chinese (Simplified) | 2023-08-11 | maikebing | 3676 | 100.00% | 2681 | 72.93% | 0 | 0.00% | 995 | 27.07% | ||
| Chinese (Traditional) | 2024-11-12 | Kuo, Chao-Yi | 3676 | 100.00% | 2560 | 69.64% | 0 | 0.00% | 1116 | 30.36% | ||
| Czech | 2026-03-27 | Libor M. | 3676 | 100.00% | 3622 | 98.53% | 0 | 0.00% | 54 | 1.47% | ||
| French | 2024-11-07 | Nicolas Letellier | 3676 | 100.00% | 3088 | 84.00% | 9 | 0.24% | 588 | 16.00% | ||
| German | 2017-04-14 | Jonas Thelemann | 3676 | 100.00% | 1133 | 30.82% | 50 | 1.36% | 2543 | 69.18% | ||
| Indonesian | 2024-06-08 | kiraware | 3676 | 100.00% | 3085 | 83.92% | 0 | 0.00% | 591 | 16.08% | ||
| Italian | 2026-07-27 | Domenico Sgarbossa | 3676 | 100.00% | 3676 | 100.00% | 0 | 0.00% | 0 | 0.00% | ||
| Japanese | 2025-10-12 | 3676 | 100.00% | 3313 | 90.13% | 2 | 0.05% | 363 | 9.87% | |||
| Korean | 2025-10-15 | 3676 | 100.00% | 3307 | 89.96% | 1 | 0.03% | 369 | 10.04% | |||
| Polish | 2017-12-17 | grzegorz | 3676 | 100.00% | 1322 | 35.96% | 45 | 1.22% | 2354 | 64.04% | ||
| Portuguese (Brazilian) | Unknown | Christian Tosta | 3676 | 100.00% | 2086 | 56.75% | 0 | 0.00% | 1590 | 43.25% | ||
| Russian | 2026-04-11 | Degit22 | 3676 | 100.00% | 2840 | 77.26% | 3 | 0.08% | 836 | 22.74% | ||
| Spanish | 2018-08-08 | Isaias Sanchez | 3676 | 100.00% | 1432 | 38.96% | 46 | 1.25% | 2244 | 61.04% | ||
| Swedish | 2026-03-27 | Daniel Nylander | 3676 | 100.00% | 3559 | 96.82% | 0 | 0.00% | 117 | 3.18% | ||
The percentages shown are calculated as:
- Total: The percentage of messages in the catalog, when compared to the template.
- Translated: The percentage of messages in the catalog that have a translation (regardless of whether they're fuzzy).
- Fuzzy: The percentage of messages in the catalog that are fuzzy.
- Untranslated: The percentage of messages in the catalog that do not have a translation.
The status is calculated as:
- The percentage of messages translated is greater than or equal to 95%.
- The percentage of messages translated is greater than or equal to 75% and less than 95%.
- The percentage of messages translated is less than 75%.
Team
pgAdmin is maintained by a team of volunteers. The team page lists everyone currently involved, and the style guide documents the application's own design system.