@philippe-lavoie commented on Tue Nov 12 2019
Describe the feature
Shipping a zip of static HTML pages makes it easy to ship internal documentation to others. I'd use something like Gatsby to create the static pages. But to stick to a Python pipeline, something like Pelican could be used. I have never tried it though.
Describe alternatives you've considered
An alternative would be to generate a PDF file corresponding to the documentation, but would have to include the node graph and in practice, this might be a true alternative in the sense that it improves portability.
Additional context
I wanted to ship what I had to a client but I can't expose an internal site nor can easily create a locked-down public site for them. Shipping a site.zip would make this trivial.
Who will this benefit?
Anyone that wants to more easily share what's going on inside all those DBT models. Also, with a static site, you can add the documentation has a sub-folder of a larger site which makes exposing documentation even easier.
@philippe-lavoie commented on Tue Nov 12 2019
The documentation states that the site is static. However, when loading directly from the index.html page, I get
dbt Docs was unable to load the mantifest file at path: manifest.json?cb=1573569439241
Perhaps, just the fix the fetch to use the above, but when it fails defaults to manifest.json instead ?
@drewbanin commented on Tue Nov 12 2019
hey @philippe-lavoie - the site is "static" in that you don't need to run a database or an application webserver to use it. The site does however load a few .json files that contain information about your project code and the state of the database.
You're seeing this problem because your web browser is disallowing the docs site to request other local files (eg. file://Users/drew/my_project/target/manifest.json
). This is a security feature intended to prevent sites from reading arbitrary files on a user's hard drive.
I think that if we were to do something here, it would be to embed the json data directly into the index.html
file. That way, you wouldn't need to send along a .zip file with a bunch of html files inside of it - you'd just have a single index.html file that showed all of the docs.
I'm going to transfer this issue over to the docs repo for further discussion. Let me know if you have any questions or thoughts!