The best tool I've found for generating Postgres schema diagrams is Datagrip's diagram feature [2]. It's not without flaws and doesn't seem to get much love, but it also does a lot of things right: tables are arranged in a tree like fashion, where the most referenced tables end up on top. Right angled connectors look orderly even when 10 different tables reference one table (if we ignore the labels on the connectors). The color scheme is also quite nice if you leave datagrip in dark mode.
1: https://www.jetbrains.com/datagrip/features/
2: https://community.intersystems.com/sites/default/files/inlin...
For high-level/quick-and-dirty designing I'm a fan of https://dbdiagram.io/
I have had great success with Schema Spy[0]. It documents your database and includes a schema diagram.
Good schema design tools are the missing piece for making PostgreSQL the complete package.
Ideally there'd be an officially supported tool that allowed you to define your relationships at a high level and it would create a well normalised and indexed schema for you automatically.
Neat! Thank you.
The diagrams in that way are problematic. When you model them as digraphs and use this layout and order them from too to bottom you get all the tables at the top that represent n:m relationships and at the bottom (at different levels) your main/independent entities.
At least bottom to top would pack the independent ones to the top and those that represent many-to-many relationships at the bottom.
From my work with Oracle Datamodeler know that even at a dozen tables manual layout beats an algorithm any time. And the oracle algithms are more sophisticated/less general than dot.