From bb7b4ead2942168fc448fc01d6478e294ff72c3f Mon Sep 17 00:00:00 2001 From: daudix-UFO Date: Thu, 19 Oct 2023 23:50:28 +0000 Subject: [PATCH] feat: Improve metadata, add blog descriptions --- README.md | 15 ++++++- config.toml | 3 +- content/blog/the-quill-of-duck/index.md | 1 + content/demo/index.md | 18 -------- sass/_comments.scss | 8 ++-- sass/_main.scss | 15 +++---- static/card.png | Bin 415917 -> 560467 bytes static/card.svg | 57 ++++++++++++------------ templates/blog_list.html | 45 ++++++++++--------- templates/includes/head.html | 27 +++++++---- templates/includes/nav.html | 28 ++++++------ 11 files changed, 112 insertions(+), 105 deletions(-) diff --git a/README.md b/README.md index f261fcd..2a87d10 100644 --- a/README.md +++ b/README.md @@ -34,9 +34,20 @@ theme = "duckquill" Duckquill offers some configuration options to make it fit you better. -### Custom CSS +### Custom stylesheets -You can add your own or override existing styles in the `sass/custom.scss` of your site, if for some reason overridden class are not respected, try using `!important`. You can import styles from Duckquill using `@use "../themes/duckquill/sass/NEEDED_FILE.scss";`. +You can add your own or override existing styles by creating custom stylesheet and adding it in the `config.toml`: + +```toml +[extra] +stylesheets = [ + "YOUR_STYLE.css" +] +``` + +It expects the style to be in the `static` directory. If you are using Sass it will be compiled there anyway. + +If for some reason overridden class are not respected, try using `!important`. You can import styles from Duckquill using `@use "../themes/duckquill/sass/NEEDED_FILE.scss";`. ### Primary color diff --git a/config.toml b/config.toml index ce19d7e..09463ef 100644 --- a/config.toml +++ b/config.toml @@ -1,8 +1,9 @@ title = "Duckquill" base_url = "https://duckquill.exozy.me" -description = "Modern, pretty, and clean theme" +description = "Modern, pretty, and clean theme." compile_sass = true +minify_html = true generate_feed = true feed_filename = "atom.xml" build_search_index = false diff --git a/content/blog/the-quill-of-duck/index.md b/content/blog/the-quill-of-duck/index.md index 6ddc9bd..2f0eabe 100644 --- a/content/blog/the-quill-of-duck/index.md +++ b/content/blog/the-quill-of-duck/index.md @@ -1,5 +1,6 @@ +++ title = "The Quill of Duck" +description = "This is a Duckquill post example, this post has nothing but a bunch of text and random formatting, acting like a demo." date = 2023-08-31 [taxonomies] tags = ["Demo", "Test"] diff --git a/content/demo/index.md b/content/demo/index.md index f27768a..ba755b4 100644 --- a/content/demo/index.md +++ b/content/demo/index.md @@ -47,24 +47,6 @@ GitHubPages::Dependencies.gems.each do |gem, version| end ``` -```scss, linenos, linenostart=10, hl_lines=3-4 8-9, hide_lines=2 7 -pre mark { - - display: block; - - color: currentcolor; - -} - -pre table td:nth-of-type(1) { - - color: #6b6b6b; - - font-style: italic; - -} -``` - #### Header 4 - This is an unordered list following a header. diff --git a/sass/_comments.scss b/sass/_comments.scss index db51789..94adafd 100644 --- a/sass/_comments.scss +++ b/sass/_comments.scss @@ -59,7 +59,7 @@ section#comments { background-color: var(--fg05); border-radius: 9999px; color: var(--fg-color); - font-size: smaller; + font-size: 0.8rem; font-weight: normal; padding: 0.25rem 0.75rem; @@ -85,7 +85,7 @@ section#comments { time { @extend small; - font-size: smaller; + font-size: 0.8rem; grid-area: time; &.edited::after { @@ -171,7 +171,7 @@ section#comments { .boosts { cursor: default; font-weight: 600; - font-size: 90%; + font-size: 0.9rem; padding: 0.4rem 1rem; border-radius: var(--rounded-corner); background-color: var(--orange-bg); @@ -187,7 +187,7 @@ section#comments { .faves { cursor: default; font-weight: 600; - font-size: 90%; + font-size: 0.9rem; padding: 0.4rem 1rem; border-radius: var(--rounded-corner); background-color: var(--red-bg); diff --git a/sass/_main.scss b/sass/_main.scss index fe542b1..9050d26 100644 --- a/sass/_main.scss +++ b/sass/_main.scss @@ -86,11 +86,11 @@ h6 { } h1 { - font-size: 2em; + font-size: 2rem; } h2 { - font-size: 1.4em; + font-size: 1.4rem; } a { @@ -165,7 +165,7 @@ kbd { border-radius: var(--rounded-corner-small); background-color: var(--fg07); box-shadow: inset 0 -2px 0 var(--fg09); - font-size: medium; + font-size: 0.8rem; cursor: pointer; user-select: none; -webkit-user-select: none; @@ -175,7 +175,7 @@ kbd { kbd:active { background-color: var(--fg09); box-shadow: inset 0 1px 0 var(--fg09); - transform: translate(0, 2px); + transform: translateY(2px); } mark { @@ -191,7 +191,7 @@ figcaption { display: block; text-align: center; color: var(--fg50); - font-size: smaller; + font-size: 0.9rem; } details { @@ -232,11 +232,6 @@ th { padding: 0; } -// make tables vertically aligned to the top -tbody td { - vertical-align: top; -} - // MEDIA img, video { diff --git a/static/card.png b/static/card.png index 169df907800e8d68dc50f13a79e8b43caffa53c6..13a57877ac2e64caecb8d245c5da557cb64882e1 100644 GIT binary patch literal 560467 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