diff options
author | Alan Pearce | 2023-09-09 19:21:12 +0200 |
---|---|---|
committer | Alan Pearce | 2023-09-09 19:21:12 +0200 |
commit | a961bc284bb130e44468c07aaaa028652c151e08 (patch) | |
tree | d6f8a479ef106f7c93a82f970cc34456effece61 | |
parent | fe37fcf3daa0eaafc1236050ac95b5d4ba21bcd2 (diff) | |
download | website-a961bc284bb130e44468c07aaaa028652c151e08.tar.lz website-a961bc284bb130e44468c07aaaa028652c151e08.tar.zst website-a961bc284bb130e44468c07aaaa028652c151e08.zip |
Squashed 'themes/bear/' changes from fe37fcf..d10630d
d10630d Hash inline style in CSP f51202d Allow end-user to disable CSP header meta tags without editing theme 093ac10 Add form-action and base-uri CSPs 4c9ac0a Update base_url eed984f Merge dark/light screenshots into one 099acbd Add "deploy to netlify" button 0800ba2 Update demo URL 9a344d8 Add meta description 241f290 Remove ignored CSP content 53d198f Move demo site to netlify 3423985 Add netlify status badge to readme edfec31 Configure headers for netlify a1bcb91 Add netlify.toml d69e95a Add content-security-policy header-equivalent meta tag 1706ade Linkify demo URL 141c10c Merge pull request 'Update 'theme.toml'' (#1) from jakeg/zola-bearblog:main into main 6b275f6 Update 'theme.toml' REVERT: fe37fcf Merge branch 'main' into microformats2 REVERT: 40881d1 Merge branch 'main' into microformats2 REVERT: 2ca8f6c Merge branch 'main' into microformats2 REVERT: dad7895 Merge branch 'main' into microformats2 REVERT: cdd1069 Move header/footer/main elements into child templates git-subtree-dir: themes/bear git-subtree-split: d10630da50a2b0e005ef0499190cc5cc898f0b06
-rw-r--r-- | README.md | 21 | ||||
-rw-r--r-- | config.toml | 5 | ||||
-rw-r--r-- | netlify.toml | 25 | ||||
-rw-r--r-- | screenshot-dark.png | bin | 319272 -> 0 bytes | |||
-rw-r--r-- | screenshot.png | bin | 317002 -> 262700 bytes | |||
-rw-r--r-- | templates/base.html | 7 | ||||
-rw-r--r-- | templates/security_tags.html | 2 | ||||
-rw-r--r-- | templates/seo_tags.html | 1 | ||||
-rw-r--r-- | templates/style.css.html (renamed from templates/style.html) | 3 | ||||
-rw-r--r-- | theme.toml | 5 |
10 files changed, 52 insertions, 17 deletions
diff --git a/README.md b/README.md index 5396a5b..db77233 100644 --- a/README.md +++ b/README.md @@ -1,20 +1,18 @@ # Zola ʕ•ᴥ•ʔ Bear Blog +[![Netlify Status](https://api.netlify.com/api/v1/badges/121b53ce-c913-4604-9179-eb3cca31cd2c/deploy-status)](https://app.netlify.com/sites/zola-bearblog/deploys) + 🧸 A [Zola](https://www.getzola.org/)-theme based on [Bear Blog](https://bearblog.dev). > Free, no-nonsense, super-fast blogging. ## Demo -For a current & working demo of this theme, please check out https://alanpearce.codeberg.page/zola-bearblog/ 🎯. - -## Screenshots +For a current & working demo of this theme, please check out <https://zola-bearblog.netlify.app/> 🎯. -⬜️ [Light][light-screenshot] -![light mode screenshot][light-screenshot] +## Screenshot -⬛️ [Dark][dark-screenshot] -![dark mode screenshot][dark-screenshot] +![Screenshot][screenshot] When the user's browser is running »dark mode«, the dark color scheme will be used automatically. The default is the light/white color scheme. Check out the [`style.html`](https://codeberg.org/alanpearce/zola-bearblog/src/branch/main/templates/style.html)-file for the implementation. @@ -30,6 +28,12 @@ Then, adjust the `config.toml` as detailed below. For more information, read the official [setup guide][zola-setup-guide] of Zola. +Alternatively, you can quickly deploy a copy of the theme site to Netlify using this button: + +[![Deploy to Netlify](https://www.netlify.com/img/deploy/button.svg)](https://app.netlify.com/start/deploy?repository=https://gitlab.com/alanpearce/zola-bearblog) + +(Note that this method makes it harder to keep up-to-date with theme updates, which might be necessary for newer versions of Zola.) + ## Adjust configuration / config.toml Please check out the included [config.toml](https://codeberg.org/alanpearce/zola-bearblog/src/branch/main/config.toml) @@ -76,5 +80,4 @@ A special thank you goes out to [Herman](https://herman.bearblog.dev), for creat [MIT License](http://en.wikipedia.org/wiki/MIT_License) © [Alan Pearce](https://www.alanpearce.eu/) [zola-setup-guide]: https://www.getzola.org/documentation/getting-started/installation/ -[light-screenshot]: https://codeberg.org/alanpearce/zola-bearblog/raw/branch/main/screenshot.png -[dark-screenshot]: https://codeberg.org/alanpearce/zola-bearblog/raw/branch/main/screenshot-dark.png +[screenshot]: https://codeberg.org/alanpearce/zola-bearblog/raw/branch/main/screenshot.png diff --git a/config.toml b/config.toml index ca8d27a..78e9f9a 100644 --- a/config.toml +++ b/config.toml @@ -1,6 +1,6 @@ title = "Zola ʕ•ᴥ•ʔ Bear Blog" -base_url = "https://alanpearce.codeberg.page/zola-bearblog" -description = "" +base_url = "https://zola-bearblog.netlify.app/" +description = "A Zola-theme based on Bear Blog." # Whether to automatically compile all Sass files in the sass directory compile_sass = false @@ -20,6 +20,7 @@ highlight_code = true [extra] date_format="%d %b, %Y" +webserver_sends_csp_headers=true [[extra.main_menu]] name = "Bear" diff --git a/netlify.toml b/netlify.toml new file mode 100644 index 0000000..6be8468 --- /dev/null +++ b/netlify.toml @@ -0,0 +1,25 @@ +[build] +publish = "public" +command = "zola build" + +[build.environment] +# Set the version name that you want to use and Netlify will automatically use it. +ZOLA_VERSION = "0.17.2" + +# The magic for deploying previews of branches. +# We need to override the base url with whatever url Netlify assigns to our +# preview site. We do this using the Netlify environment variable +# `$DEPLOY_PRIME_URL`. + +[context.deploy-preview] +command = "zola build --base-url $DEPLOY_PRIME_URL" + +[[headers]] + for = "/*" + [headers.values] + X-Frame-Options = "DENY" + X-Content-Type-Options = "nosniff" + X-XSS-Protection = "1; mode=block" + Referrer-Policy = "strict-origin-when-cross-origin" + Strict-Transport-Security = "max-age=63072000; includeSubdomains" + Content-Security-Policy = "default-src 'none'; img-src 'self'; object-src 'none'; script-src 'none'; style-src 'sha256-2Sbht7dvdhJX00j84akXy9AejYUf6sOM3OpwMxNiDXQ='; form-action 'none'; base-uri 'self'; frame-ancestors 'none'" diff --git a/screenshot-dark.png b/screenshot-dark.png deleted file mode 100644 index 266f883..0000000 --- a/screenshot-dark.png +++ /dev/null Binary files differdiff --git a/screenshot.png b/screenshot.png index 4013a5c..273266a 100644 --- a/screenshot.png +++ b/screenshot.png Binary files differdiff --git a/templates/base.html b/templates/base.html index 4ba8442..ee206b3 100644 --- a/templates/base.html +++ b/templates/base.html @@ -1,6 +1,9 @@ <!DOCTYPE html> <html lang="{{ lang | default(value="en-US" ) }}"> <head> + {%- if config.webserver_sends_csp_headers %} + {%- include "security_tags.html" ignore missing %} + {%- endif %} <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> {% include "favicon.html" ignore missing -%} @@ -12,7 +15,9 @@ <link rel="alternate" type={% if config.feed_filename == "atom.xml" %}"application/atom+xml"{% else %}"application/rss+xml"{% endif %} title="{{ config.title }}" href="{{ get_url(path=config.feed_filename) | safe }}"> {%- endblock -%} {%- endif %} - {% include "style.html" ignore missing -%} + <style> + {%- include "style.css.html" ignore missing -%} + </style> {% include "custom_head.html" ignore missing -%} </head> <body> diff --git a/templates/security_tags.html b/templates/security_tags.html new file mode 100644 index 0000000..0f922ea --- /dev/null +++ b/templates/security_tags.html @@ -0,0 +1,2 @@ +<!-- These tags are here for demostration. It's recommended to send them via HTTP headers instead. --> +<meta http-equiv="Content-Security-Policy" content="default-src 'none'; img-src 'self'; object-src 'none'; script-src 'none'; style-src 'unsafe-inline'"> diff --git a/templates/seo_tags.html b/templates/seo_tags.html index 797569a..4eb2bc8 100644 --- a/templates/seo_tags.html +++ b/templates/seo_tags.html @@ -1 +1,2 @@ <meta name="title" content="{% if page.title %}{{ page.title }}{% else %}{{ config.title }}{% endif %}"> +<meta name="description" content="{{ config.description }}" /> diff --git a/templates/style.html b/templates/style.css.html index 4744695..00b4131 100644 --- a/templates/style.html +++ b/templates/style.css.html @@ -1,4 +1,3 @@ -<style> body { font-family: Verdana, sans-serif; margin: auto; @@ -168,5 +167,3 @@ color: #aaa; } } - -</style> diff --git a/theme.toml b/theme.toml index ed137c8..902c8ec 100644 --- a/theme.toml +++ b/theme.toml @@ -1,11 +1,11 @@ name = "Bear" description = "Bear blog theme" license = "MIT" -homepage = "https://codeberg.org/alanpearce/zola/bearblog" +homepage = "https://codeberg.org/alanpearce/zola-bearblog" # The minimum version of Zola required min_version = "0.4.0" # An optional live demo URL -demo = "https://alanpearce.codeberg.page/zola-bearblog" +demo = "https://zola-bearblog.netlify.app/" # Any variable there can be overridden in the end user `config.toml` # You don't need to prefix variables by the theme name but as this will @@ -13,6 +13,7 @@ demo = "https://alanpearce.codeberg.page/zola-bearblog" # Use snake_casing to be consistent with the rest of Zola [extra] date_format="%d %b, %Y" +webserver_sends_csp_headers=false [author] name = "Alan Pearce" |