In short I'm looking or a "database schema visualization tool", web based, Open Source.
I'm only interested in the schema, not in the data.
Side note: I'm not really interested in exploring foreign keys (the project has no foreign keys for some reasons). I say this since I hope this would include more solutions.
Requirements
The recommendation should go in this direction:
- Open Source - obviously nowadays
- input: an SQL file (so it reads the
CREATE TABLE
) - output: allow to visually explore tables and their columns
- output formats:
- Very OK: if it is web based and generates a static website
- Still OK: if it easily generates an SVG or a PNG or a PDF with all the tables+columns
- NOT OK: if it requires to do some screenshots on your client
Bonus points:
- handle multiple databases
- Anyway it's not a problem if just one database at time can be seen. Probably we can surely find a workaround even if it allows to inspect just one database.
Not needed:
- No need to see data
- No need to see foreign keys
- No need to have any "Edit" feature, just Read-only
Root problem
In short this is the root problem:
I'm trying to contribute to Phorge (also previously known as Phabricator) and I realize that it is a huge software, since it's a software application that relies on 60+ MariaDB databases (!).
My need is: allow me and other people to understand how the project works, so, viewing the database schemas, etc. and doing it on the web could be really useful, since it would be easier to keep this documentation updated, instead of generating screenshots from DBeaver or some other clients.
What I've seen:
- I will maybe try to extend Leaflet.js to do so, since it's great in doing zoom-based web applications:
- This question that was about client-side software for Linux/Windows and so, not a duplicate, even if still useful:
- The WWW SQL Designer that 1. seems not able to import an SQL file and 2. seems a server-side web-app (preferred: static web-app)
- https://github.com/ondras/wwwsqldesigner
- But if I understood what middleware I need to use to export from SQL file to its format (XML?), I could try
- The Schema Crawler, even if I still need to understand how to use it.
- https://www.schemacrawler.com/diagramming.html
- It seems really promising, thought:
- ...
So, this is why the recommendation should be Open Source. Since this would be useful for a community. This is also why the recommendation should be not just "do screenshots", since the solution is huge and the risk to do a mistake or having inconsistent documentation is too much. And, by the way, I'm in 2023, so I think a web tool already exist.
Thank you for your new proposals or any answer about the already-mentioned solutions!