diff --git a/docs/_markbind/navigation/userGuideSections.md b/docs/_markbind/navigation/userGuideSections.md
index cd897cf806..28d8fd835a 100644
--- a/docs/_markbind/navigation/userGuideSections.md
+++ b/docs/_markbind/navigation/userGuideSections.md
@@ -15,6 +15,7 @@
* [Making the Site Searchable]({{baseUrl}}/userGuide/makingTheSiteSearchable.html)
* [Deploying the Site]({{baseUrl}}/userGuide/deployingTheSite.html)
* [MarkBind in the Project Workflow]({{baseUrl}}/userGuide/markBindInTheProjectWorkflow.html)
+* [Themes]({{baseUrl}}/userGuide/themes.html)
* References :expanded:
* [CLI Commands]({{baseUrl}}/userGuide/cliCommands.html)
* [Reader-Facing Features]({{baseUrl}}/userGuide/readerFacingFeatures.html)
diff --git a/docs/css/main.css b/docs/css/main.css
index 555ff7b116..665302c6b6 100644
--- a/docs/css/main.css
+++ b/docs/css/main.css
@@ -8,3 +8,7 @@ mark {
.indented {
padding-left: 20px;
}
+
+.theme-card img {
+ width: 100%;
+}
diff --git a/docs/images/bootswatch/cerulean.png b/docs/images/bootswatch/cerulean.png
new file mode 100644
index 0000000000..141cdcd131
Binary files /dev/null and b/docs/images/bootswatch/cerulean.png differ
diff --git a/docs/images/bootswatch/cosmo.png b/docs/images/bootswatch/cosmo.png
new file mode 100644
index 0000000000..fef8736c60
Binary files /dev/null and b/docs/images/bootswatch/cosmo.png differ
diff --git a/docs/images/bootswatch/flatly.png b/docs/images/bootswatch/flatly.png
new file mode 100644
index 0000000000..80ab9487aa
Binary files /dev/null and b/docs/images/bootswatch/flatly.png differ
diff --git a/docs/images/bootswatch/journal.png b/docs/images/bootswatch/journal.png
new file mode 100644
index 0000000000..ad93d59ff3
Binary files /dev/null and b/docs/images/bootswatch/journal.png differ
diff --git a/docs/images/bootswatch/litera.png b/docs/images/bootswatch/litera.png
new file mode 100644
index 0000000000..3ef6412be7
Binary files /dev/null and b/docs/images/bootswatch/litera.png differ
diff --git a/docs/images/bootswatch/lumen.png b/docs/images/bootswatch/lumen.png
new file mode 100644
index 0000000000..8eb8e995c7
Binary files /dev/null and b/docs/images/bootswatch/lumen.png differ
diff --git a/docs/images/bootswatch/lux.png b/docs/images/bootswatch/lux.png
new file mode 100644
index 0000000000..36b0357924
Binary files /dev/null and b/docs/images/bootswatch/lux.png differ
diff --git a/docs/images/bootswatch/materia.png b/docs/images/bootswatch/materia.png
new file mode 100644
index 0000000000..d8eb4d547a
Binary files /dev/null and b/docs/images/bootswatch/materia.png differ
diff --git a/docs/images/bootswatch/minty.png b/docs/images/bootswatch/minty.png
new file mode 100644
index 0000000000..948d4d3dcb
Binary files /dev/null and b/docs/images/bootswatch/minty.png differ
diff --git a/docs/images/bootswatch/pulse.png b/docs/images/bootswatch/pulse.png
new file mode 100644
index 0000000000..06c5889f38
Binary files /dev/null and b/docs/images/bootswatch/pulse.png differ
diff --git a/docs/images/bootswatch/sandstone.png b/docs/images/bootswatch/sandstone.png
new file mode 100644
index 0000000000..50baed8290
Binary files /dev/null and b/docs/images/bootswatch/sandstone.png differ
diff --git a/docs/images/bootswatch/simplex.png b/docs/images/bootswatch/simplex.png
new file mode 100644
index 0000000000..2306fab895
Binary files /dev/null and b/docs/images/bootswatch/simplex.png differ
diff --git a/docs/images/bootswatch/sketchy.png b/docs/images/bootswatch/sketchy.png
new file mode 100644
index 0000000000..0c972925c4
Binary files /dev/null and b/docs/images/bootswatch/sketchy.png differ
diff --git a/docs/images/bootswatch/spacelab.png b/docs/images/bootswatch/spacelab.png
new file mode 100644
index 0000000000..d25cad4594
Binary files /dev/null and b/docs/images/bootswatch/spacelab.png differ
diff --git a/docs/images/bootswatch/united.png b/docs/images/bootswatch/united.png
new file mode 100644
index 0000000000..5996c62ad0
Binary files /dev/null and b/docs/images/bootswatch/united.png differ
diff --git a/docs/images/bootswatch/yeti.png b/docs/images/bootswatch/yeti.png
new file mode 100644
index 0000000000..96e23e87b9
Binary files /dev/null and b/docs/images/bootswatch/yeti.png differ
diff --git a/docs/userGuide/markBindInTheProjectWorkflow.md b/docs/userGuide/markBindInTheProjectWorkflow.md
index 1e0c33efd8..4e18772530 100644
--- a/docs/userGuide/markBindInTheProjectWorkflow.md
+++ b/docs/userGuide/markBindInTheProjectWorkflow.md
@@ -38,4 +38,4 @@ Similarly, you can keep the dev docs in a separate directory (sey `dev-docs`) an
{% from "njk/common.njk" import previous_next %}
-{{ previous_next('deployingTheSite', '') }}
+{{ previous_next('deployingTheSite', 'themes') }}
diff --git a/docs/userGuide/siteConfiguration.md b/docs/userGuide/siteConfiguration.md
index a4f53949cf..2661e181c7 100644
--- a/docs/userGuide/siteConfiguration.md
+++ b/docs/userGuide/siteConfiguration.md
@@ -21,6 +21,7 @@ Here is a typical `site.json` file:
"baseUrl": "/myproduct",
"faviconPath": "myfavicon.png",
"titlePrefix": "FooBar Dev Docs",
+ "theme": "bootswatch-cerulean",
"pages": [
{
"src": "index.md",
@@ -78,6 +79,11 @@ Here is a typical `site.json` file:
**The prefix for all page titles.** The separator - will be inserted by MarkBind.
+#### **`theme`**
+
+_(Optional)_ **The theme for the generated site.** Uses the default Bootstrap theme if not specified. See [User Guide: Themes](themes.html) for more details.
+
+
#### **`pages`**
**An array of pages to be rendered.**
diff --git a/docs/userGuide/themes.md b/docs/userGuide/themes.md
new file mode 100644
index 0000000000..54e2458a68
--- /dev/null
+++ b/docs/userGuide/themes.md
@@ -0,0 +1,61 @@
+