diff --git a/app/assets/stylesheets/application.scss b/app/assets/stylesheets/application.scss
index 48069d35470d677ea62d5352c7e6c5987f7f9a6f..2aee5aad670a0bf35db83d24a52a4e1c88033a62 100644
--- a/app/assets/stylesheets/application.scss
+++ b/app/assets/stylesheets/application.scss
@@ -189,4 +189,14 @@ img {
 }
 .widget.is-tertiary .widget--body + .widget--header {
   border-top: 1px solid #9daeb7;
+}
+
+pre {
+  background: #f0f0f0;
+  border: 0;
+}
+
+pre .hljs {
+  padding: 0;
+  background: inherit;
 }
\ No newline at end of file
diff --git a/app/views/layouts/_head.html.erb b/app/views/layouts/_head.html.erb
index 7a67e3c69d714ff524bf6d0513b54a2ce645fc76..88f294dd805ccd368374c3a07482b9ed91f0d4e9 100644
--- a/app/views/layouts/_head.html.erb
+++ b/app/views/layouts/_head.html.erb
@@ -27,6 +27,13 @@
 <%= javascript_include_tag 'application' %>
 <script src="https://unpkg.com/@codidact/co-design@0.12.0/js/co-design.js" defer></script>
 
+<% if SiteSetting['SyntaxHighlightingEnabled'] %>
+  <link rel="stylesheet"
+        href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/10.1.2/styles/default.min.css">
+  <script src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/10.1.2/highlight.min.js"></script>
+  <script defer>hljs.initHighlightingOnLoad();</script>
+<% end %>
+
 <% if SiteSetting['MathJaxEnabled'] %>
   <script>
     MathJax = {
diff --git a/db/seeds/site_settings.yml b/db/seeds/site_settings.yml
index af4f61dd40589cbcaa3c823664b1a5ca6fa5cac5..70aaab87dbe8354162682c74ed83c377ca10b4d2 100644
--- a/db/seeds/site_settings.yml
+++ b/db/seeds/site_settings.yml
@@ -284,6 +284,14 @@
     Enable MathJax on this site for math display. This will incur a small penalty in page loading times, so consider
     whether you really need it.
 
+- name: SyntaxHighlightingEnabled
+  value: false
+  value_type: boolean
+  category: Display
+  description: >
+    Enable highlight.js syntax highlighting on this site. This incurs a small penalty in page loading times, so consider
+    whether you really need it.
+
 - name: ScoringVariable
   value: 2
   value_type: integer