I want to programmatically generate ERDs for my database and API schemas. The CI integration pattern in dbdocs is perfect for being able to auto-generate these ERDs. However, I would like to embed those ERDs in other HTML pages. I noticed this is currently possible with dbdiagram.io but it’s not clear whether it’s possible in dbdocs.io.
Are there any workarounds to achieve this?
Thanks for asking Sherif. This is indeed an interesting use of dbdocs.
Could you share a little bit more details about your use case: Where do you want to embed it into? Who are the users of the HTML pages? etc… This helps us understand and plan for it better.
@huy I work at airbyte.com . We build integrations with external APIs and offer a data movement (ETL) product. Our product allows customers to move data from APIs like Stripe and databases like Postgres to warehouses like Snowflake. I would like to programmatically generate ERDs for each of my integrations so that I can show users what to expect in the destination database when they move data from a given API (instead of just redirecting them to e.g the Stripe API docs).
Functionally speaking I am looking for exactly the same embedding functionality available in dbdiagram today, but instead to embed the ERD from dbdocs project because I can programmatically generate ERDs in dbdocs. Using embedded links from dbdiagram is intractable because I would need to manually keep each of them up to date.
Does this help? Is there any way to achieve this today?
@huy @Thi_Nguyen any updates on this?
Thanks for the remind Sherif. This is indeed an interesting use case. And you also highlight clearly the pros/cons between dbdiagram and dbdocs: dbdiagram supports embedding but doesn’t have CLI/API and the wiki view of dbdocs.
We’re actually looking into merging these 2 products together, so that all functionalties will be available in a single place: Edit diagram/doc, API to update diagram/doc, wiki view + ERD view, embedding.
Right now the ETA/timeline for this is still unclear as we’re still hashing out the details.
Are you looking to integrate this for your OSS version or the SaaS/cloud offering?