diff --git a/.github/workflows/doc-ci.yml b/.github/workflows/doc-ci.yml index ca648b01e..f434a02d5 100644 --- a/.github/workflows/doc-ci.yml +++ b/.github/workflows/doc-ci.yml @@ -18,7 +18,7 @@ jobs: - name: install dependencies run: | sudo apt-get update - sudo apt-get install -y git virtualenv graphviz + sudo apt-get install -y git virtualenv virtualenv tmp/docs-virtualenv tmp/docs-virtualenv/bin/pip install -r docs/requirements.txt - name: build docs diff --git a/docs/generate.sh b/docs/generate.sh index ee4418b61..e817a8356 100755 --- a/docs/generate.sh +++ b/docs/generate.sh @@ -42,7 +42,7 @@ my_git() { assert_dependencies() { if [ "${DO_SETUP}" == "yes" ] ; then if ! (which dot && which virtualenv); then - sudo apt-get install -y git virtualenv graphviz + sudo apt-get install -y git virtualenv fi if [ ! -e "$OUTPUT_DIR/.git" ] ; then my_git clone --branch gw-pages --depth 1 "$SANDSTORM_DOC_URL" "$OUTPUT_DIR" diff --git a/docs/requirements.txt b/docs/requirements.txt index 7394b334d..bbde971b1 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -1,2 +1,3 @@ +jinja2==3.0.3 +markdown==3.3.7 mkdocs==1.0.4 -mkdocs-markdown-graphviz==1.3 diff --git a/docs/using/communication_overview_http_app.svg b/docs/using/communication_overview_http_app.svg new file mode 100644 index 000000000..16d3e0987 --- /dev/null +++ b/docs/using/communication_overview_http_app.svg @@ -0,0 +1,79 @@ + + + + + + + +communication_overview_http_app + + +cluster_sandstorm + +Sandstorm + + +cluster_grain + +Grain + + + +client + +Web client +(eg. browser) + + + +proxy + +Gateway + (gateway.c++) + + + +client--proxy + + + + +websession + +WebSession Serialization +(HTTP over Cap'n Proto, +web-session.capnp) + + + +proxy--websession + + + + +bridge + +Sandstorm +HTTP Bridge +(sandstorm-http +-bridge.c++) + + + +websession--bridge + + + + +app + +HTTP App + + + +bridge--app + + + + diff --git a/docs/using/communication_overview_native_app.svg b/docs/using/communication_overview_native_app.svg new file mode 100644 index 000000000..fe2a142e6 --- /dev/null +++ b/docs/using/communication_overview_native_app.svg @@ -0,0 +1,66 @@ + + + + + + + +communication_overview_native_app + + +cluster_sandstorm + +Sandstorm + + +cluster_grain + +Grain + + + +client + +Web client +(eg. browser) + + + +proxy + +Gateway + (gateway.c++) + + + +client--proxy + + + + +websession + +WebSession Serialization +(HTTP over Cap'n Proto, +web-session.capnp) + + + +proxy--websession + + + + +app + +Native Sandstorm App +(speaks Cap'n Proto ) + + + +websession--app + + + + diff --git a/docs/using/how-it-works.md b/docs/using/how-it-works.md index c094b6465..383535380 100644 --- a/docs/using/how-it-works.md +++ b/docs/using/how-it-works.md @@ -22,7 +22,12 @@ and the grain occur over the Cap'n Proto WebSession format. With existing applications, the Sandstorm HTTP bridge is used to translate between Cap'n Proto and HTTP. -```graphviz dot communication_overview_http_app.svg +![Diagram with HTTP Bridge](communication_overview_http_app.svg) + + When an application can speak Cap'n Proto directly to Sandstorm, the HTTP bridge is not needed. -```graphviz dot communication_overview_native_app.svg +![Diagram without HTTP Bridge](communication_overview_native_app.svg) + + diff --git a/mkdocs.yml b/mkdocs.yml index 5c667bdf7..a84ee042e 100755 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -7,7 +7,6 @@ theme: repo_url: https://github.com/sandstorm-io/sandstorm edit_uri: edit/master/docs/ markdown_extensions: - - mkdocs_markdown_graphviz - admonition extra_css: - "extra.css"