Download pgModeler Distributed in many flavours just pick yours
pgModeler is an open source software and you can get its source code anytime if you want to compile it for yourself. As a facility, we provide compiled binary packages at a really small price. Also, if you're interested in evaluate a binary package, you can get a demo copy before proceed with the purchase. Since this is an independent project by purchasing any binary package you'll help to keep its development alive and at full speed!
Current: 0.8.2 June 06, 2016
Changes since: v0.8.2-beta1 Summary: after two months of work we bring to you the pgModeler 0.8.2! With this release we officially concluded the series 0.8.x. This is by far the most important series in project's lifetime since the introduction of reverse engineering feature and port to Qt 5. This one brings additional improvements that definitively turned pgModeler into a solid application.
Several portions of the software were changed or fixed in this final release as the following:
* SQL Tool: the command history now is part of the output widget having a better appearance by registering commands and their respective affected or retrieved rows and, for broken commands, the error raised in the moment of their execution. Still in SQL tool, the data manipulation dialog was improved enabling the user to duplicate rows making the data handling even more quick.
* Connection timeouts: in previous versions in certain cases when the connection remained open for too long or the server unexpectedly closed it the application could crash. Now, pgModeler implements an internal connection timeout avoiding execution of SQL commands using an invalid connection, instead, an error is raised and the operation is aborted. This will greatly diminish these annoying failures.
* Initial data for tables: in previous versions the user was capable to create custom INSERT commands in order to populate tables after their creation. Now, pgModeler implements a dedicated dialog for this purpose. It's an special grid, very similar to the data manipulation form in SQL tool, that enables data input. The magic here is that the data inserted in the grid is saved as a CSV-like buffer in the table and translated to INSERT commands when the table code is generated and exported to the server or file. For now, the form is quite simple and surely will be improved in future releases.
* Default connections: in response to some users' requests pgModeler now counts with default connections for each operation that involves export, import, diff and validation. In the moment a connection is being managed the user can check in which operation that connection will be used by default. This is useful when you have multiple databases for different phases of the project like in software factories (e.g. test, homolog, production and etc).
* Transactional commands: in previous versions, due to implementation details, pgModeler was not capable of run transactional commands like START TRANSTION, COMMIT and ROLLBACK. Now, after some tweaks in the core, the user can freely create a transaction session, play around with the tables and commit
or roll back changes.
* SVG support in export: this long awaited feature now lives in pgModeler. Models can be exported to SVG format opening the possibility to import them in another general purpose modeling tools or even serving as an additional option for documentation.
* Miscelaneous: the metadata handling form was improved and simplified the process of extract and apply objects' metadata in the models. Source code in SQL tool's command input field now can have the case changed or indented by calling the context menu using right-click or specific shortcuts. The annoying error related to new format of connections.conf is now solved automatically when the application detects and older format being used. Several componets in the UI were resized improving usability, missing shortcuts added and many others.
Finally, in order to give an ideia on how much pgModeler changed since 0.8.1, we have 273 changelog entries divided in: 63 new features, 97 changes/improvements, 113 bug fixes. Obviously, not all changes will be noticeable since they occurred in the core, but what is more important is that if you're running 0.8.1 it is strongly recommended that you upgrade to 0.8.2 to take advantage of all new features and fixes. Also, to get full details about all modifications in the software since 0.8.1 take a look in CHANGELOG.md.
Develop: 0.9.0-beta1 May 13, 2017
Changes since: v0.9.0-beta Summary: this is the last release before we can finally launch the stable 0.9.0. This version was focused on improving the user's experience on high resulotion screens by introducing an automatic machanism that is capable to resize dialogs, objects and fonts according to the current screen settings. This support is quite experimental and will be polished in the next releases.
The only downside of the support to bigger screens is that the icons still can't be resized due their low resolution. The solution for this issue is the complete redesign of the whole icon set, task that is planned to be done in any moment in pgModeler 1.0 development timeline. But I'll try to antecipate this job if there's some room for it.
Another feature introduced by this version is the support to browse the referenced rows as well the referrer rows in data manipulation dialog which will improve the the whole data handling experience. Basically, for a certain relationship A -> B, pgModeler will indicate which row(s) in B are referenced by the select row in A. The inverse indication, from B to A, is done as well when B references A through a foreign key, of course.
Below the change log for this release. Refer to the file CHANGELOG.md for the complete changes history:
* [New] Added the ability to standalone dialogs like import, diff, export and others to be resized according to the screen dpi and resolution.
* [New] Added an experimental routine that will resize windows according to the current screen resolution and font dpi.
* [New] Added support to browse referrer and referenced in DataManipulationForm.
* [New] Added an item under table items that stores the referrer tables in the DatabaseExplorerWidget.
* [New] Added the method BaseObjectView::getScreenDpiFactor to help resize scene objects according to the screen dpi/resolution.
* [Change] Minor adjustment on readonly items regarding to referenced and referrer tables in DatabaseExplorerWidget.
* [Change] Improved the tabs handling in SQLToolWidget in order to avoid confusion related to which database is being managed or queried currently.
* [Change] Improvements done in the context menu at DataManipulationForm to include the key actions related to the control buttons at the top right portion of the dialog.
* [Change] Improved the external script handling in SQLExecutionWidget.
* [Change] Applied automatic resize for TaskProgressWidget.
* [Change] Improvement done in model restoration dialog that is now displayed after the main windows is exposed.
* [Fix] Fixed a problem in UpdateNotifierWidget that was receiving error 403 from the site.
* [Fix] Fix a bug in DataManipulationForm that was causing order by clause to be nullified by comments added in the filter field.
* [Fix] Fixed a regression in permission code generation.
* [Fix] Fixed a bug in the generation of grant/revoke commands for columns.
* [Fix] Fixed a bug that was causing the sorting options of index elements to be wrongly hidden.
* [Fix] Minor fix in the site url.
* [Fix] Minor fix in the filter toggling action in ObjectFinderWidget.
Purchase a binary package and support this project. Pick your platform, choose an expiration period, pay using PayPal™ and enjoy ready-to-use packages.
Get previously purchased binary packages by using an access key. If you bought packages in the old site you need to use the payment conversion tool.
If you are a package maintainer or just want to compile pgModeler for yourself you can freely get the source code from official repository.
NOTE: Currently, the user's guide is distributed only in US English.
pgModeler has two main development branches: master and develop. The master branch is where features considered stable can be found. The development branch, reserved for alpha and beta releases, is where patches, new and unstable features are placed and tested.
You can retrieve the source using the git command by running the following: