Easy to use

Easily create and edit database models with simple and intuitive interface. The software's forms indicate which fields must be filled in order to provide the correct generation of SQL code.

Open source

Get, modify and redistribute the source code without any charge. This project has a public repository that allows forks and full access to the source code. Developers can create their own versions from the existing code.


Built over Qt framework, pgModeler can be compiled under Windows, Linux and macOS. The build scripts are easily configurable in order to resolve specific dependencies on each system.

Plug-ins support

Missing some functionality? Feel free to implement it! Use the plug-in development interface and access all pgModeler's classes facilitating the creation of additional features without change a single line of the core code.

Dynamic code generation

Design once and export to multiple versions. With its dynamic code generation, pgModeler is capable to export the designed models to different versions of PostgreSQL.

Collaborative development

Developer or not you can collaborate! Give your feedback with suggestions for improvements, submit UI translations, report bugs and much more via pgModeler's page at GitHub.

pgModeler supports the creation of the most basic object like a simple column as well advanced objects like user-defined languages, functions, operators and many others with easy-to-use forms.
With the column propagation mechanism pgModeler creates automatically all columns and constraints as the user links tables using the available relationship objects.
pgModeler is capable to export the models to a SQL script file, to a PNG image file, to a SVG file or directly to a PostgreSQL server.
With the reverse engineering process pgModeler can create reliable models based upon existing databases.
As an open source tool pgModeler gives the complete access to its source code as well to the contents of any generated file. All created files are XML based which means the user can handle these files in third party softwares.
In case of unexpected quit the user doesn't lose all his work because pgModeler stores temporary models with the most recent changes and will restore them in the next startup.
In order to avoid breaking references and/or rules during design time as well when exporting the model to PostgreSQL, pgModeler validates models from time to time. This validation feature produces an almost error-free database model.
With an extensive set of configurations pgModeler gives to the user the freedom to customize the majority of its features.
Through the diff feature the user is capable to generate SQL scripts based on the differences between model and database. The script contains the needed commands to keep synchronized the database regarding the model.
pgModeler provides a simplistic yet helpful database management module where is possible to run SQL commands, explore the objects and handle data.
The CLI offers a good set of operations that not require the GUI to be running. One of these features is the export process that can be integrated to third party scripts to automate deployment processes. Another useful feature is the model file fix which consists in repair a model's structure to make it loadable again (this feature is also available in the GUI).
Some other important features are object finder for large models, the plugin development interface, support to geospatial data types (as implemented by PostGiS 2.x extension), translatable user interface and many others.

pgModeler is brought to you thanks to a great effort to create and distribute a quality product. This project is reaching out levels of maturity never imagined. All this is the result of a joint work between its author and the Open Source community. The software has a long way to go yet and with your help we'll keep maintaining the good job and bringing new improvements in each release. If you did like pgModeler and thinks it deserves a contribution please make a donation via PayPal™. Note that donations don't grant access to binary packages.

5.00 USD