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 @@
+
+
+
+
+
+
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 @@
+
+
+
+
+
+
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"