Update themes gallery (#2279)

Co-authored-by: GitHub Action <action@github.com>
This commit is contained in:
Vincent Prouillet 2023-08-21 17:31:33 +02:00 committed by GitHub
parent e727f43fe0
commit 9ae7d15139
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
77 changed files with 575 additions and 809 deletions

View File

@ -3,11 +3,11 @@
title = "DeepThought"
description = "A simple blog theme focused on writing powered by Bulma and Zola."
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/RatanShreshtha/DeepThought.git"
homepage = "https://github.com/RatanShreshtha/DeepThought"
minimum_version = "0.14.1"

View File

@ -3,11 +3,11 @@
title = "Ergo"
description = "A simple blog Theme focused on writing, inspired by svbtle"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/insipx/Ergo.git"
homepage = "https://github.com/insipx/Ergo"
minimum_version = "0.4.1"

View File

@ -3,11 +3,11 @@
title = "HayFlow"
description = "HayFlow is a minimal and completely modular Zola theme for anyone wishing to have their own landing page."
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://gitlab.com/cyril-marpaud/hayflow.git"
homepage = "https://gitlab.com/cyril-marpaud/hayflow"
minimum_version = "0.4.0"

View File

@ -3,11 +3,11 @@
title = "Zulma"
description = "A zola theme based off bulma.css"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/Worble/Zulma.git"
homepage = "https://github.com/Worble/Zulma"
minimum_version = "0.6.0"

View File

@ -1,16 +1,16 @@
+++
title = "abridge"
description = "A fast and lightweight Zola theme using semantic html, a class-light abridge.css, and No JS."
description = "A fast and lightweight Zola theme using semantic html, a class-light abridge.css, and No mandatory JS."
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/Jieiku/abridge.git"
homepage = "https://github.com/jieiku/abridge"
minimum_version = "0.17.1"
minimum_version = "0.17.2"
license = "MIT"
demo = "https://abridge.netlify.app/"
@ -42,7 +42,7 @@ Maintenance of this project is made possible by all the <a href="https://github.
## Requirements
This theme requires version 0.17.1 or later of [Zola](https://www.getzola.org/documentation/getting-started/installation/)
This theme requires version 0.17.3 or later of [Zola](https://www.getzola.org/documentation/getting-started/installation/)
## Quick Start
@ -54,13 +54,14 @@ zola serve
```
## Installation
The Quick Start shows how to run the theme directly as a site.
The Quick Start shows how to run the theme directly.
Next we will use abridge as a theme to a NEW site.
### Step 1: Create a new zola site
```bash
zola init mysite
cd mysite
```
### Step 2: Install abridge
@ -68,47 +69,47 @@ zola init mysite
Download this theme to your themes directory:
```bash
cd mysite/themes
git clone https://github.com/jieiku/abridge.git
git clone https://github.com/jieiku/abridge.git themes/abridge
```
Or install as a submodule:
```bash
cd mysite
git init # if your project is a git repository already, ignore this command
git submodule add https://github.com/jieiku/abridge.git themes/abridge
```
### Step 3: Configuration
Copy the `config.toml` from the theme directory to your project's root directory:
(This will give you a base configuration with all config values used)
If you plan to use the search_facade feature (dynamic ondemand loading of search) then also copy the package.json (and netlify.toml if you use netlify)
You will also want to copy the content/static folder if you intend to use stork or tinysearch
Copy some files from the theme directory to your project's root directory:
```bash
cp themes/abridge/config.toml config.toml
cp themes/abridge/package.json package.json
cp themes/abridge/netlify.toml netlify.toml
cp -r themes/abridge/content/static content/
rsync themes/abridge/config.toml config.toml
rsync themes/abridge/COPY-TO-ROOT-SASS/* sass/
rsync themes/abridge/netlify.toml netlify.toml
rsync themes/abridge/package.json package.json
rsync -r themes/abridge/content/static content/
```
Uncomment the theme line:
- `config.toml` base configuration with all config values
- `COPY-TO-ROOT-SASS/abridge.scss` overrides to customize Abridge variables.
- `netlify.toml` settings to deploy your repo with netlfiy
- `package.json` to switch between nosearch, elasticlunr, tinysearch, stork.
- `content/static` files for generating tinysearch and stork indexes.
Uncomment the theme line in your project's root config.toml:
```bash
sed -i 's/^#theme = "abridge"/theme = "abridge"/' config.toml
```
### Step 4: Add new content
You can copy the content from the theme directory to your project:
Copy the content from the theme directory to your project or make a new post:
```bash
cp -r themes/abridge/content .
rsync -r themes/abridge/content .
```
You can modify or add new posts in the content directory as needed.
### Step 5: Run the project
Just run `zola serve` in the root path of the project:
@ -117,367 +118,116 @@ Just run `zola serve` in the root path of the project:
zola serve
```
Zola will start the development web server making your site accessible by default at
`http://127.0.0.1:1111`. Saved changes will live reload in the browser.
Zola will start the dev web server, accessible by default at `http://127.0.0.1:1111`.
### Step 6: Add provisions for search_facade.js (dynamic ondemand loading of search related js) or disable the facade.
**IMPORTANT!** by default abridge dynamically loads the js related to the search when the search box is clicked, this allows for a faster page load and saved bandwidth. (not everyone needs or will use the search!)
This feature uses a bundle that has all js related to the search in a single js file, this ensures that the files are in the proper order, and that once downloaded the search is ready to use.
to generate this file you have to do this:
```shell
zola build
npm run abridge
zola build # or zola serve
```
or if testing/running the theme directly:
```shell
zola build
npm run abridge-demo
zola build # or zola serve
```
I completely understand that this makes configuration a bit complicated. Zola does not have any built-in facilities for bundling javascript so we are using uglifyjs, shasum, openssl, etc (all defined in package.json) If you find this too difficult then I highly suggest just disabling the facade and loading the search index with the rest of the page:
You can disable the facade (dynamic loading of search) in the config.toml:
```toml
js_search_facade = false
```
The Abridge demo uses netlify, and the included package.json and netlify.toml files handle this extra bundle step for us automatically.
An overview of this logic is this:
```shell
zola build # just to generate search_index.en.js
uglifyjs to create search_bundle.min.js # all search related files
update sha256 hash and base64 encoded sha384 hash in search_facade.js file for cachebust and subresource integrity
uglifyjs to create abridge-bundle.min.js to include search_facade.js with the new hashes.
zola build to update the hashes for abridge-bundle.min.js
```
If you plan to use the included netlify.toml file you should change the following:
```toml
command = "zola build && npm run abridge-demo && zola build"
```
to this:
```toml
command = "zola build && npm run abridge && zola build"
```
### Step 7: Switch Search library (optional)
Abridge by default uses elasticlunr for the search library (zola's default), but both tinysearch and stork are supported search libraries.
tinysearch demo: https://jieiku.github.io/abridge-tinysearch/
stork demo: https://jieiku.github.io/abridge-stork/
**Switch to tinysearch:**
First you have to install tinysearch so that you can build the index:
```shell
git clone https://github.com/tinysearch/tinysearch
cd tinysearch
cargo build --release
sudo cp ./target/release/tinysearch /usr/local/bin/tinysearch
exit # reload shell environment
```
Switch abridge to tinysearch:
```shell
cd ~/.dev/abridge
sed -i 's/^search_library =.*/search_library = "tinysearch"/' config.toml
sed -i 's/^draft =.*/draft = true/' content/static/stork_toml.md
sed -i 's/^draft =.*/draft = false/' content/static/tinysearch_json.md
zola build
tinysearch --optimize --path static public/data_tinysearch/index.html
# zola serve
```
**Switch to stork:**
First you have to install stork so that you can build the index:
```shell
git clone https://github.com/jameslittle230/stork
cd stork
cargo build --release
sudo cp ./target/release/stork /usr/local/bin/stork
exit # reload shell environment
```
Switch abridge to stork:
```shell
cd ~/.dev/abridge
sed -i 's/^search_library =.*/search_library = "stork"/' config.toml
sed -i 's/^draft =.*/draft = false/' content/static/stork_toml.md
sed -i 's/^draft =.*/draft = true/' content/static/tinysearch_json.md
zola build
stork build --input public/data_stork/index.html --output static/stork.st
# zola serve
```
**Switch back to elasticlunr:**
abridge as a theme:
```shell
cd ~/.dev/abridge
sed -i 's/^search_library =.*/search_library = false/' config.toml
sed -i 's/^draft =.*/draft = true/' themes/abridge/content/static/stork_toml.md
sed -i 's/^draft =.*/draft = true/' themes/abridge/content/static/tinysearch_json.md
zola build
npm run abridge
zola build
# zola serve
```
abridge theme directly:
```shell
cd ~/.dev/abridge
sed -i 's/^search_library =.*/search_library = false/' config.toml
sed -i 's/^draft =.*/draft = true/' content/static/stork_toml.md
sed -i 's/^draft =.*/draft = true/' content/static/tinysearch_json.md
zola build
npm run abridge-demo
zola build
# zola serve
```
Saved changes will live reload in the browser.
## Customization
You can customize your configurations, templates and content for yourself. Look
at the `config.toml`, `content` files, and templates files in this
repo for an idea.
A lot of effort has been made to ensure Abridge features can be easily customized.
### Default Theme for nojs/noscript visitors.
If you have abridge configured to use the switcher mode instead of auto/dark/light, then your site will have a button that allows the visitor to toggle the theme.
If your visitor uses noscript or some other javascript blocking browser addon, then they will be stuck with whatever the configured default theme is for the switcher mode.
To adjust this mode you would set the following two config values in abridge.scss **AND** config.toml:
```scss
$switcherDefault: "dark",// default nojs switcher mode: dark, light (make sure to also set js_switcher_default in config.toml)
```
```toml
js_switcher_default = "dark" # default nojs switcher mode: dark, light (make sure to also set $switcherDefault in abridge.scss)
```
By default abridge uses dark mode for the switcher, so unless you want to set the default mode to light for nojs visitors, then you do not need to worry about these settings.
### Number of Items per page for pagination
To change the number of items per page edit: `abridge/content/_index.md` and change the value for `paginate_by`
To change the number of items per page edit: `content/_index.md` and change the value for `paginate_by`
### Page width
## Sass Overrides
You can set the overal page width by editing `themes\abridge\sass\_variables.scss` file, and adjusting these two lines:
Abridge SASS variables can be overrided by editing `sass\abridge.scss` file in your project's root sass folder.
### Page Width:
```scss
$mw:50% !default;// max-width
$mb:1200px !default;// value at which to switch from fluid layout to using max-width
$mw:75%,// max-width
```
### Abridge Theme Modes
```scss
$abridgeMode: "switcher",//valid values: switcher, auto, dark, light
```
- Switcher automatically displays a dark or light version depending on browser/OS settings, and has a javascript user clickable theme switcher.
- Auto automatically displays a dark or light version depending on browser/OS settings.
- Dark is the dark theme always.
- Light is the light theme always.
### Colors and Styles
Colors and style are handled by the sass files of [abridge.css](https://github.com/jieiku/abridge.css)
Abridge comes with "Skins" each with their own auto, dark, light and switcher modes.
Auto mode automatically displays a dark or light version depending on browser/OS settings.
Switcher mode automatically displays a dark or light version depending on browser/OS settings, and has a user clickable theme switcher, but it requires additional javascript.
The skin used on [the Demo](https://abridge.netlify.app/) uses primarily orange colors.
It is defined here: `/themes/abridge/sass/abridge-switcher.scss`
There is also other variations, that you will see defined in this same directory, they are also all defined in config.toml
To change colors or fonts all you need to do is edit these files or duplicate them and create your own skin.
Then in the root of your site type `zola build` which will regenerate your site, this is similar to what zola serve does, except it does not facilitate serving the site.
### Javascript Files, js_bundle and options
These are the javascript files currently used by Abridge:
- search_index.en.js: search index generated by zola at each build for elasticlunr.
- elasticlunr.min.js: search library for client side searching.
- search.js: to make use of elasticlunr from our sites search box for both suggestions and the results page.
- search_facade.js: used to dynamically load a bundle containing all search related js ONLY when the search box is clicked. (on-demand)
- email.js: uses javascript to obfuscate your real email address for the mail icon at the bottom of the page.
- codecopy.js: add a Copy Button to code blocks, to copy contents of the code block to clipboard.
- theme.js: very tiny script to facilitate local storage for the theme switcher. (never bundle, gets loaded separate)
- theme_button.js: tiny script for the theme switcher function when you click the theme switch button.
- prestyle.js: Used to preload css files `<link rel="preload"` - this script changes these to `<link rel="stylesheet"` once the page has finished loading, this allows us to load stylesheets for external fonts, fontawesome, or katex in a non blocking fashion.
js_bundle is set to a javascript file with a bundle of multiple javascript files, this allows us to serve fewer javascript files (only the search index and the bundle, or if using the facade all the js related features minus the search related files). Included are a few of the likely most commonly used combinations, but you can generate any combination of js features into a bundle yourself using uglifyjs if you need to, there are examples in the config.toml (or in package.json), eg:
`uglifyjs prestyle.js theme_button.js elasticlunr.min.js search.js -c -m -o abridge-nofacade.min.js`
All Bundles are defined in [package.json](https://github.com/Jieiku/abridge/blob/master/package.json)
A Bundle can be generated from the package.json scripts using npm, for example:
`npm run noswitchernosearch`
Abridge Default Bundle:
- abridge-bundle.min.js: includes: prestyle, theme_button, search_facade, email, codecopy
Abridge Alternate Bundles:
- abridge.min.js: includes: prestyle, search_facade, email, codecopy (same as default but without the theme switcher)
- abridge-bundle-nofacade.min.js: includes: prestyle, theme_button, email, codecopy, elasticlunr, search
- abridge-bundle-noswitcher.min.js - includes: prestyle, email, codecopy, elasticlunr, search
- abridge-bundle-nosearch.min.js - includes: prestyle, theme_button, email, codecopy
- abridge-bundle-noswitchernosearch.min.js - includes: prestyle, email, codecopy
- abridge-searchonly.min.js - includes: elasticlunr, search
Support Files:
- theme.min.js (not a bundle, just a minification of theme.js)
- katexbundle.min.js - includes: katex.min.js mathtex-script-type.min.js auto-render.min.js katexoptions.js
- search_bundle.min.js: includes: search_index.en, elasticlunr, search (loaded on demand by search_facade)
### Global Configuration
There are some configuration options that you can customize in `config.toml`.
#### Configuration options before `extra` options
Set the authors's taxonomies for the site.
```toml
taxonomies = [
{name = "authors"},
]
You can specify which color template you want to use as a base:
```scss
$color: "orange",// color template to use/override: orange, blue, blueshade
```
Use search function for the content.
```toml
build_search_index = true
Then override individual colors as needed:
```scss
/// Dark Colors
$f1d: #ccc,// Font Color Primary
$f2d: #ddd,// Font Color Headers
$c1d: #111,// Background Color Primary
$c2d: #222,// Background Color Secondary
...
```
The search is the only essential thing that requires javascript in this this theme.
### Footer Social Icons
If you set `build_search_index` to false then the javascript file will no longer be loaded.
The default elasticlunr search is currently used, I may eventually switch this out for something else.
#### Configuration options under the `extra`
Most Options in the config.toml are self documenting, meaning between the name of the config value and the notes in the file it is usually obvious what an option is for.
The following options should be under the `[extra]` in `config.toml`
- `uglyurls` - Set to true, as well as set a file path for base_url to support a local offline mode of your site, you can then browse your site directly from disk.
- `language_code` - Set the site language_code.
- `title_separator` - Separator between title and title_addition, eg "|": "Abridge | Fast & Lightweight Zola Theme"
- `title_addition` - a default value for title addition, used at the index.
- `recent = true` - This enabled the Recent posts box visible on the top right.
- `recent_items = 9` - The number of items to display in the recent posts box
- `author` - Used for articles to denote the author.
- `title_size_index` - Size of the Titles Font on the Index: s95, s90, s85, s80, s75, s70, false(full size)
- `meta_index / meta_post`
* `position` - top, bottom, both, false(hidden), Where to display the meta info in relation to the summary.
* `size` - s95, s90, s85, s80, false(full size). The size of the font for the meta info
* `author` - true/false, Display the author in the meta info.
* `readtime` - true/false, Display the read time in the meta info.
* `readstring` - "min", "min read", "minutes read". The string to display after the read time.
* `date` - true/false, Display the date in the meta info.
* `categories_tags` - true/false, Display the categores and tags in the meta info.
* `divider` - `"&middot;"` `"&bull;"` `" "` divider to display between meta info elements.
- `footer_size` - Size of the Footer Font: s95, s90, s85, s80, s75, s70, false(full size)
- `footer_credit = true` - This enables the powered by zola and abridge line in the footer.
- `footer_credit_override` - Can be used to customize the footer credit, useful to add icons to the text, etc.
- `logo = { file="logo.svg", width="42", height="42", alt="Abridge", text="bridge" }` - Defines the graphical logo with optional text to follow the logo.
- `textlogo` - A purely Text based logo, this will be used if logo is commented out, if both are commented out then config.title is used.
- `sitedesc` - This adds the site description just below the text based logo.
- `copyright_start_year` - Optionally define a start year for the copyright, otherwise the current year is used.
- `copyright_end_year` - Optionally set the copyright end year, recommend leaving unset, zola build will set this to current year by default
- `headhr` - Display a horizontal rule below header
- `foothr` - Display a horizontal rule above footer
- `menu` - This is an array of links to display at the top right corner of the page
- `menu_footer` - This is an array of links to display in the footer of the page
- `security_header_referrer` - This is mostly used for tracking, the default is set to "strict-origin-when-cross-origin" [info](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referrer-Policy)
- `security_header_csp` - Content Security policy, to enfore security rules: [observatory](https://observatory.mozilla.org), [csp-google](https://csp-evaluator.withgoogle.com/)
- `integrity` - Useful to set false during development, should normally be set to true.
- `js_bundle` - Useful to set false during javascript development, should normally be set to true.
- `js_switcher` - Set to false to disable the theme switcher.
- `js_search_facade` - Set to false to disable the search facade (dynamic loading of search_bundle).
- `search_library` - search library to use, valid values are: false or elasticlunr, tinysearch, stork
- `js_search_index` - The search index file to include in the header, comment out to disable.
- `js_prestyle` - The script file used to preload: FontAwesome, Katex, external Google Fonts.
- `js_codecopy` - The script file used to copy the code in code blocks.
- `js_email` - The script file used to obfuscate the email link in footer.
- `js_theme` - Used for the Theme Switcher, to facilitate localstorage.
- `js_themeButton` - Used for the Theme Switcher.
- `stylesheets = [ "abridge-switcher.css" ]` - The stylesheet file(s) to include in the header.
- `banner` - Image to use in seo related cards, this will be the fallback image if the individual articles does not provide one.
- `favicon_...` - Used to set the various favicons (displayed in bookmarks and active browser tab)
- `icon_...` - Used to set the various icons used on the site.
- `fontawesome =` - Uncomment to enable fontawesome library, this will include the file in the header.
* `icon_read` - icon to display in meta info on index and posts, comment out to disable
* `icon_date` - icon to display in meta info on index and posts, comment out to disable
* `icon_info` - icon to display in meta info on index and posts, comment out to disable
* `icon_author` - icon to display in meta info on index and posts, comment out to disable
- `fonts =` - Uncomment to load external fonts, they will be loaded in the header.
- `math` - Set to true to load the Katex library, enabling the use of the [katex shortcode](https://abridge.netlify.app/overview-math/) (recommend setting on a per page basis instead.)
- `math_auto_render` - This allows you to define a section of math notation using only $$ $$ symbols instead of using the katex shortcode directly. (recommend setting on a per page basis instead.)
- `katex_css`, `katex_js`, `mathtex_js`, `katex_autorender_js`, `katex_options` - Used for Math Notation.
- `katex_bundle` - Used to bundle all of the math related js.
- `keywords =` - This is used for SEO.
- `seo =` - This is used for SEO, for the social media related tags, eg: opengraph, facebook, twitter if set to false it disables them all.
- `extra.social` - These are the options for the social icons in the footer, and a couple are also used in SEO related meta tags.
Additionally you should configure which social icons you plan to use. (makes the css file size smaller)
open `themes/abridge/sass/_variables.scss`
You should configure which social icons you plan to use. (makes the css file size smaller)
To simply turn them all off you can set `$enable-icons: false`
Otherwise to turn on only the ones you need you would set `$enable-icons: true`
Then enable only the icons you need, eg for mail you would set `$icon-mail: true`
You should then disable all the icons that you do not use, as this will decrease the final size of your css file.
The difference in size is NOT a lot, without icons its ~4kb, with all the social icons its ~12kb.
There are also some general purpose icons you can use, they are disabled by default.
The theme requires tags and categories taxonomies to be enabled in your `config.toml`:
Otherwise enable only the icons you need, eg for mail you would set `$icon-mail: true`
```toml
taxonomies = [
# You can enable/disable RSS
{name = "categories", rss = true},
{name = "tags", rss = true},
]
```
You should then disable all the icons that you do not use.
## Config.toml Configuration
Most Options in config.toml are self documenting. (obvious between name of config value and comments)
Abridge will work with a barebones config.toml because default values are provided in the template files.
I recommend copying the entire config.toml file as outlined in Step 3 as it provides all configurable values.
### Top and Footer menus
Set a field in `extra` with a key of `menu` and `menu_footer`.
If you want the link to open in a new tab/browser then set `blank = true`.
If a link should have a trailing slash at the end of the url set `slash = true`.
(generally all links should have a trailing slash unless its a file link such as sitemap.xml)
```toml
# This is the default menu
menu = [
{url = "/", name = "Home", slash = true},
{url = "/about/", name = "About", slash = true},
{url = "/posts/", name = "Posts", slash = true},
{url = "/categories/", name = "Categories", slash = true},
{url = "/tags/", name = "Tags", slash = true},
{url = "about", name = "About", slash = true, blank = false},
{url = "posts", name = "Posts", slash = true, blank = false},
{url = "categories", name = "Categories", slash = true, blank = false},
{url = "tags", name = "Tags", slash = true, blank = false},
]
menu_footer = [
{url = "/", name = "Home", slash = true},
{url = "/about/", name = "About", slash = true},
{url = "/contact/", name = "Contact", slash = true},
{url = "/privacy/", name = "Privacy", slash = true},
{url = "/sitemap.xml", name = "Sitemap", slash = false},
{url = "about", name = "About", slash = true, blank = false},
{url = "contact", name = "Contact", slash = true, blank = false},
{url = "privacy", name = "Privacy", slash = true, blank = false},
{url = "sitemap.xml", name = "Sitemap", slash = false, blank = true},
]
```
### SEO and Header Tags
Most SEO Tags have been added as well as some important head tags for browser compatibility.
You can review the SEO tags in the head macro located at `templates/macros/head.html`, all configurable values should be in config.toml under config.extra or in the content markdown files.
In your post markdown file you should set a title less than 60 characters and a description between 80 and 160 characters in length. The description is what is displayed in search results below the page title. Anywhere that you do not set a page description, the primary site config.description will be used instead.
@ -503,81 +253,133 @@ thumbnail = "ferris-gesture.png"
+++
```
There are tools you can use to test your page SEO metadata, such as: [smallseotools.com](https://smallseotools.com/meta-tags-analyzer/)
### KaTeX Math Notation
KaTeX can be used to display complex mathematics, it is a "Fast math typesetting for the web."
You can see a demo on [this page](https://abridge.netlify.app/overview-math/).
I recommend only enabling math on a per page bases in your post.md files, instead of in your main config.toml file.
For better performance I recommend only enabling math on a [per page bases in your post.md files](https://github.com/Jieiku/abridge/blob/master/content/overview-math.md?plain=1#L11-L13), instead of in your main config.toml file.
### Templates
### PWA (Progressive Web Application)
All pages extend to `base.html`, and you can customize them as need.
Abridge theme has PWA support. You can install the entire site as an app and have it work offline. To try it out simply use google chrome or your phone and go here: https://abridge.netlify.app/
If using chrome on desktop then look at the end of the address bar for the install button. On android you should get a popup to install, you can also install from the 3 dot menu in the top right corner. Once you have the PWA installed, you can go completely offline and you will still be able to browse or search the site!
To use it in your own instance you will need to edit `static/sw.js` for the list of files to cache. Technically you do not need to edit `sw.js`, but if even a single file in the cache list is missing then it wont pre cache the list, so it will only cache as you browse.
There is an npm script to generate the file cache list and minification `npm run pwa`. My `netlify.toml` file automatically runs this npm script during site deployment, so everything is automatic. If Zola was able to template a js file then it might be possible to generate the list of cache files dynamically at build.
The PWA feature is also easy to disable by simply setting `pwa = false` in `config.toml`
## Javascript files
These are the javascript files currently used by Abridge:
- search_index.en.js: search index generated by zola at each build for elasticlunr.
- elasticlunr.min.js: search library for client side searching.
- search.js: to make use of elasticlunr from our sites search box for both suggestions and the results page.
- email.js: uses javascript to obfuscate your real email address for the mail icon at the bottom of the page.
- codecopy.js: add a Copy Button to code blocks, to copy contents of the code block to clipboard.
- theme.js: tiny script to facilitate local storage for the theme switcher. (never bundle, always separate)
- theme_button.js: tiny script for the theme switcher function when you click the theme switch button.
- prestyle.js: Used to preload css files `<link rel="preload"` - this script changes these to `<link rel="stylesheet"` once the page has finished loading, this allows us to load stylesheets for external fonts, fontawesome, or katex in a non blocking fashion.
- sw.js: this is the Service Worker file for the PWA.
- sw_load.js: this file handles loading the Service Worker for the PWA.
### js_bundle option
`js_bundle` when set to true serves a bundle file instead of all of the individual js files.
All Bundles are defined in [package.json](https://github.com/Jieiku/abridge/blob/master/package.json)
A Bundle can be generated from the package.json scripts using npm:
- `npm run abridge-bundle-nosearch` - generates a bundle without search.
- `npm run abridge-bundle-elasticlunr` - generates a bundle of all js with elasticlunr.
- `npm run abridge-bundle-tinysearch` - generates a bundle of all js with tinysearch.
- `npm run abridge-bundle-stork` - generates a bundle of all js with stork.
## Switch Search Library
In addition to elasticlunr abridge also supports tinysearch and stork.
tinysearch demo: https://jieiku.github.io/abridge-tinysearch/
stork demo: https://jieiku.github.io/abridge-stork/
To use tinysearch/stork extra steps are required.
**Switch to tinysearch:**
First you have to install tinysearch so that you can build the index:
```shell
git clone https://github.com/tinysearch/tinysearch
cd tinysearch
cargo build --release
sudo cp ./target/release/tinysearch /usr/local/bin/tinysearch
exit # reload shell environment
```
Switch abridge to tinysearch:
```shell
npm run tinysearch
zola build
tinysearch --optimize --path static public/data_tinysearch/index.html
# zola serve
```
**Switch to stork:**
First you have to install stork so that you can build the index:
```shell
git clone https://github.com/jameslittle230/stork
cd stork
cargo build --release
sudo cp ./target/release/stork /usr/local/bin/stork
exit # reload shell environment
```
Switch abridge to stork:
```shell
npm run stork
zola build
stork build --input public/data_stork/index.html --output static/stork.st
# zola serve
```
**Switch to elasticlunr:**
```shell
npm run elasticlunr
```
**Switch to nosearch:**
```shell
npm run nosearch
```
## Optional Performance Optimizations:
### Abridge.woff2 Icon Font
By default Abridge uses SVG icons directly in CSS, `abridge/sass/include/_icons.scss`, this very efficient and results in the least requests, additionally noscript does not block these resources.
The Abridge.woff2 Icon Font is a subset of Font Awesome, it is still included but not used by default because noscript addon blocks loading of font resources.
If you still want to use font icons continue reading:
Abridge.woff2 Icon Font is a subset of Font Awesome, and can be loaded like any other font by uncommenting the font in the `abridge/sass/font.scss` and including the font.css file in your stylesheet array defined in config.toml: `stylesheets = [ "abridge-switcher.css", "font.css", "iconfont.css" ]`
Abridge.woff2 file can be overridden just like any other Zola theme file, by placing your own Abridge.woff2 in your sites root eg: `mysite/static/font/Abridge.woff2`
To create your own Icon Font with other/more icons you can use the repository here: https://github.com/Jieiku/fontsubset
You will also need to add the additional icon entries to `abridge/sass/fonts/_Abridge.scss`
If you are running Abridge as a submodule, what you can do instead is copy `_Abridge.scss` as your own `mysite/sass/myfont.scss`, and then adjust your config.toml:
instead of this: `stylesheets = [ "abridge-switcher.css" ]` do this: `stylesheets = [ "abridge-switcher.css", "myfont.css" ]`
### Theme-Switcher
The theme switcher relies on javascript to work, it applies the .light class to the root documentElement. The file that handles this (theme.js) is tiny and optimized and it is the first file loaded in the head, so the performance hit is minimal, but it does still exist. Without the Theme switcher you can still use The automatic Theme, it works by using Browser/OS preference, you can even install a [Firefox plugin](https://addons.mozilla.org/en-US/firefox/addon/theme-switcher-for-firefox/) to quickly switch between the two. By default the demo has the theme switcher enabled so that it can be evaluated.
The theme switcher relies on javascript to work, it applies the .light class to the root documentElement. The file that handles this (theme.js) is tiny and optimized and it is the first file loaded in the head, so the performance hit is minimal. Without the Theme switcher you can still use The automatic Theme which uses the Browser/OS preference settings. You can even install a [Firefox plugin](https://addons.mozilla.org/en-US/firefox/addon/theme-switcher-for-firefox/) to quickly switch between the two.
With the growing number of options and configuration it can get confusing. To disable the Theme Switcher, you would set `js_switcher = false` and comment out the Switcher section and enable your choice in the No switcher section, for example:
### Optimize PNG/ICO files:
```toml
#################
# Resource Files
#################
js_switcher = false
########## Switcher ########## (comment this block out if NOT using switcher):
#stylesheets = [ "abridge-switcher.css" ] # Orange Automatic Dark/Light Theme based on browser/system preference with switcher
#stylesheets = [ "abridge-blue-switcher.css" ] # Blue Automatic Night/Light Theme based on browser/system preference with switcher
#stylesheets = [ "abridge-blueshade-switcher.css" ] # BlueShade Automatic Night/Light Theme based on browser/system preference with switcher
#stylesheets = [ "abridge-switcher.css", "font.css" ] # include your own font!
#stylesheets = [ "abridge-switcher.css", "iconfont.css" ] # include your own font icons!
#stylesheets = [ "abridge-switcher.css", "font.css", "iconfont.css" ] # include your own font, and font icons!
########## No Switcher ##########
stylesheets = [ "abridge.css" ] # Orange Automatic Dark/Light Theme based on browser/system preference
#stylesheets = [ "abridge-blue.css" ] # Blue Automatic Night/Light Theme based on browser/system preference
#stylesheets = [ "abridge-blueshade.css" ] # BlueShade Automatic Night/Light Theme based on browser/system preference
#stylesheets = [ "abridge-dark.css" ] # Orange Dark Theme
#stylesheets = [ "abridge-light.css" ] # Orange Light Theme
```
### Optimize PNG files:
All png files can be optimized using [oxipng](https://github.com/shssoichiro/oxipng), this usually results in files 1/2 the size:
All png files can be optimized using [oxipng](https://github.com/shssoichiro/oxipng):
```bash
cd static
oxipng -o max --strip all -a -Z *.png
```
You can go even farther if you use leanify:
leanify can compress farther for both png and ico files:
```bash
git clone https://github.com/JayXon/Leanify
@ -589,32 +391,13 @@ leanify -i 7777 *.png
leanify -i 7777 *.ico
```
Results of using leanify on files previously processed with oxipng (smaller favicons compressed a lot more):
With larger displays and greater pixel density becoming common it is probably a good idea to use atleast a littly bit of lossy compression. For example you can use pngquant with a 93% quality and you will often get images around 1/2 the size. Understand that pngquant is cumulative, so you should keep your original images somewhere, and only ever use pngquant once per image, if you use it again and again on the same image then you will lower the image quality each time. Always use oxipng afterwards, oxipng is lossless.
```bash
Processing: android-chrome-192x192m.png
2.23 KB -> 2.22 KB Leanified: 11 B (0.48%)
Processing: android-chrome-192x192.png
2.51 KB -> 2.48 KB Leanified: 33 B (1.28%)
Processing: android-chrome-512x512.png
5.49 KB -> 5.25 KB Leanified: 241 B **(4.29%)**
Processing: apple-touch-icon.png
2.57 KB -> 2.54 KB Leanified: 30 B (1.14%)
Processing: banner.png
13.07 KB -> 12.93 KB Leanified: 138 B (1.03%)
Processing: mstile-150x150.png
2.24 KB -> 2.20 KB Leanified: 38 B (1.66%)
Processing: favicon-16x16.png
559 B -> 366 B Leanified: 193 B **(34.53%)**
Processing: favicon-32x32.png
969 B -> 663 B Leanified: 306 B **(31.58%)**
Processing: favicon.ico
2.59 KB -> 1.90 KB Leanified: 703 B **(26.53%)**
pngquant --skip-if-larger --strip --quality=93-93 --speed 1 *.png
oxipng -o max --strip all -a -Z *.png
```
Google lighthouse will often notice when your pictures could be more compressed, this may even help SEO.
### Pre gzip/brotli content to serve with nginx:
If you are serving your site with nginx, you can pre gzip your content.
@ -645,26 +428,18 @@ rsync -zvrh ~/.dev/abridge/public/ web:/var/www/abridge
Nginx does not come by default with brotli support, but adding it was not difficult.
## Reporting Issues
We use GitHub Issues as the official bug tracker for **abridge**.
Please search [existing issues](https://github.com/jieiku/abridge/issues).
Its possible someone has already reported the same problem.
If your problem or idea is not addressed yet, [open a new issue](https://github.com/jieiku/abridge/issues/new).
(Netlify brotli gzips your files automatically, no exta work required.)
## Contributing and Philosophy
We'd love your help! Especially with fixes to issues.
We'd love your help! Especially with fixes to issues, or improvements to existing features.
The overall idea behind abridge is to be lightweight and fast, and to work properly even if javascript is disabled.
The goal is for abridge to be lightweight, fast, and to work properly even if javascript is disabled or blocked.
The only feature that some people may consider a necessity that relies on javascript is the Search.
Any feature added to abridge that relies on javascript will do so with it disabled by default.
The only feature that may be considered a necessity that relies on javascript is the Search.
## License
**abridge** is distributed under the terms of the
[MIT license](https://github.com/jieiku/abridge/blob/master/LICENSE).
**abridge** is distributed under the terms of the [MIT license](https://github.com/jieiku/abridge/blob/master/LICENSE).

Binary file not shown.

Before

Width:  |  Height:  |  Size: 117 KiB

After

Width:  |  Height:  |  Size: 52 KiB

View File

@ -3,11 +3,11 @@
title = "adidoks"
description = "AdiDoks is a Zola theme helping you build modern documentation."
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/aaranxu/adidoks.git"
homepage = "https://github.com/aaranxu/adidoks"
minimum_version = "0.15.0"

View File

@ -3,16 +3,16 @@
title = "after-dark"
description = "A robust, elegant dark theme"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/getzola/after-dark.git"
homepage = "https://github.com/getzola/after-dark"
minimum_version = "0.11.0"
minimum_version = "0.17.0"
license = "MIT"
demo = "https://zola-after-dark.netlify.app"
demo = "https://getzola.github.io/after-dark/"
[extra.author]
name = "Vincent Prouillet"

View File

@ -3,11 +3,11 @@
title = "Albatros"
description = "A feature rich theme originally made for Duniter website."
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://git.42l.fr/HugoTrentesaux/Albatros.git"
homepage = "https://git.42l.fr/HugoTrentesaux/Albatros"
minimum_version = "0.16.0"

View File

@ -3,11 +3,11 @@
title = "anatole-zola"
description = "A port of farbox-theme-Anatole for zola"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/longfangsong/anatole-zola.git"
homepage = "https://github.com/longfangsong/anatole-zola"
minimum_version = "0.4.0"
@ -173,8 +173,10 @@ We support a bunch of social links:
```toml
[extra.social]
github = ""
gitlab = ""
stackoverflow = "" # use user_id
twitter = ""
mastodon = "" # use hostname/@username
facebook = ""
instagram = ""
dribbble = ""

View File

@ -3,11 +3,11 @@
title = "Andromeda"
description = "Photography journal blog theme"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/Pixadus/andromeda-theme.git"
homepage = "https://github.com/Pixadus/andromeda-theme"
minimum_version = "0.16.0"

View File

@ -3,11 +3,11 @@
title = "anemone"
description = "Nearly no-Javascript, efficient, minimal theme."
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/Speyll/anemone"
homepage = "https://github.com/Speyll/anemone"
minimum_version = "0.4.0"

View File

@ -3,11 +3,11 @@
title = "Anpu"
description = "A port of the Hugo Anubis theme"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/zbrox/anpu-zola-theme.git"
homepage = "https://github.com/zbrox/anpu-zola-theme"
minimum_version = "0.11.0"

View File

@ -3,11 +3,11 @@
title = "apollo"
description = "Modern and minimalistic blog theme"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/not-matthias/apollo.git"
homepage = "https://github.com/not-matthias/apollo"
minimum_version = "0.14.0"

View File

@ -3,11 +3,11 @@
title = "archie-zola"
description = "A zola theme based on Hugo archie."
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/XXXMrG/archie-zola.git"
homepage = "https://github.com/XXXMrG/archie-zola"
minimum_version = "0.14.0"

View File

@ -3,11 +3,11 @@
title = "ataraxia"
description = "A personal theme focused on ease of reading."
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/gersonbdev/ataraxia-zola"
homepage = "https://github.com/gersonbenavides/ataraxia-zola"
minimum_version = "0.16.0"

View File

@ -3,11 +3,11 @@
title = "Bear"
description = "Bear blog theme"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://codeberg.org/alanpearce/zola-bearblog"
homepage = "https://codeberg.org/alanpearce/zola/bearblog"
minimum_version = "0.4.0"

View File

@ -3,11 +3,11 @@
title = "Blow"
description = "A Zola theme made with Tailwindcss"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/tchartron/blow.git"
homepage = "https://github.com/tchartron/blow"
minimum_version = "0.9.0"
@ -106,6 +106,8 @@ github = "https://github.com/johndoe"
gitlab = "https://gitlab.com/johndoe"
twitter = "https://twitter.com/johndoe"
linkedin = "https://www.linkedin.com/in/john-doe-b1234567/"
stackoverflow = "https://stackoverflow.com/users/01234567/johndoe"
telegram = "https://t.me/johndoe"
email = "john.doe@gmail.com"
[extra.favicon]

View File

@ -3,16 +3,16 @@
title = "book"
description = "A book theme inspired from GitBook/mdBook"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/getzola/book.git"
homepage = "https://github.com/getzola/book"
minimum_version = "0.16.0"
minimum_version = "0.17.0"
license = "MIT"
demo = "https://zola-book.netlify.app"
demo = "https://getzola.github.io/book/"
[extra.author]
name = "Vincent Prouillet"

View File

@ -3,11 +3,11 @@
title = "boring"
description = "A minimal theme"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/ssiyad/boring.git"
homepage = "https://github.com/ssiyad/boring"
minimum_version = "0.16.0"

View File

@ -3,11 +3,11 @@
title = "Clean Blog"
description = "A port of Start Bootstrap Clean Blog for Zola"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/dave-tucker/zola-clean-blog.git"
homepage = "https://github.com/dave-tucker/zola-clean-blog"
minimum_version = "0.4.0"

View File

@ -3,11 +3,11 @@
title = "codinfox-zola"
description = "Codinfox theme for Zola"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/svavs/codinfox-zola.git"
homepage = "https://github.com/svavs/codinfox-zola"
minimum_version = "0.11.0"

View File

@ -3,11 +3,11 @@
title = "d3c3nt"
description = "A simple, clean, and flexible theme for personal sites."
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "git://git.figbert.com/d3c3nt.git"
homepage = "https://git.figbert.com/d3c3nt/"
minimum_version = "0.15.0"

View File

@ -3,11 +3,11 @@
title = "dinkleberg"
description = "The Rust BR theme for Gutenberg"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/rust-br/dinkleberg.git"
homepage = "https://github.com/rust-br/dinkleberg"
minimum_version = "0.4.0"

View File

@ -3,11 +3,11 @@
title = "Docsascode_theme"
description = "A modern simple Zola's theme related to docs as code methodology"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/codeandmedia/zola_docsascode_theme.git"
homepage = "https://github.com/codeandmedia/zola_docsascode_theme"
minimum_version = "0.10.0"

View File

@ -3,11 +3,11 @@
title = "dose"
description = "a small blog theme"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/oltdaniel/dose.git"
homepage = "https://github.com/oltdaniel/dose"
minimum_version = "0.14.0"
@ -25,11 +25,13 @@ homepage = "https://oltdaniel.eu"
## Installation
First download this theme to your `themes` directory:
First install the theme into the `themes` directory with one of these options:
```bash
cd themes
git clone https://github.com/oltdaniel/dose.git
# If you work with git:
git submodule add https://github.com/oltdaniel/dose.git themes/dose
# or just do a download:
git clone https://github.com/oltdaniel/dose.git themes/dose
```
and then enable it in your `config.toml`:
@ -38,11 +40,11 @@ and then enable it in your `config.toml`:
theme = "dose"
```
The following taxonomies are enabled:
You can enable the following taxonomies:
```toml
taxonomies = [
{name = "tags"},
{ name = "tags", feed = true },
]
```
@ -51,13 +53,15 @@ And the theme uses the following extras:
```toml
[extra]
social_media = [
{name = "GitHub", url = "https://github.com/oltdaniel"},
{name = "Twitter", url = "https://twitter.com/@twitter"},
{ name = "GitHub", url = "https://github.com/oltdaniel" },
{ name = "Twitter", url = "https://twitter.com/@twitter" },
{ name = "Mastodon", url = "https://mastodon.social/@Mastodon", rel = "me" }
]
default_theme = "dark" # or "light"
```
The description of yourself with your image, you can modify by using a template. Just create a new
file `myblog/parts/me.html`:
file `myblog/templates/parts/me.html`:
```html
<img src="https://via.placeholder.com/50" height="50px" width="50px">
@ -90,9 +94,13 @@ This theme supports dark and light mode. Currently this will be only switched ba
#### Size
We need about `~2.3KiB` extra stuff aside from images and raw html. This is divided up to `~2.1KiB CSS` and `212B JS`.
The JavaScript has been moved into the page itself to allow minification. Together this results in the following sizes for the `index.html`:
- `~ 3kB` JavaScript
- `~ 3kB` CSS
- `~ 17kB` Profile Image
- `~5kB - ~3kB = ~2kB` HTML
Test yourself with `zola build 1>/dev/null; echo "scale=2; $(cat public/**/*.{js,css} | wc -c)/1024" | bc -l`.
Which results in a total loading size of `3kB + 3kB + 17kB + 2kB = 25kB`.
#### Syntax Highlighting
@ -115,13 +123,9 @@ $target-color: yellow;
$separator-decoration: "//////";
```
### TODO
- [x] introduce sass variables for colors
- [x] dark/light switch with javascript and store in browser local storage
## License
## License & Contributors
![GitHub](https://img.shields.io/github/license/oltdaniel/dose)
This project was created by [Daniel Oltmanns](https://github.com/oltdaniel) and has been imporved by these [contributors](https://github.com/oltdaniel/dose/graphs/contributors).

Binary file not shown.

Before

Width:  |  Height:  |  Size: 102 KiB

After

Width:  |  Height:  |  Size: 108 KiB

View File

@ -3,11 +3,11 @@
title = "emily_zola_theme"
description = "a KISS theme for Zola"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/kyoheiu/emily_zola_theme.git"
homepage = "https://github.com/kyoheiu/emily_zola_theme"
minimum_version = "0.14.1"
@ -21,7 +21,7 @@ homepage = "https://github.com/kyoheiu"
# emily_zola_theme
![screenshot01](static/images/ss01.png)
![screenshot01](/static/images/ss01.png)
A KISS theme for Zola (static site generator written in Rust).
@ -52,8 +52,6 @@ In `YOUR_SITE_DIRECTORY/themes/emily_zola_theme/content`.
## MathJax support
![screenshot03](static/images/ss02.png)
To use MathJax, add the following lines to the front matter in `.md` file. `[extra]` is mandatory:
```

Binary file not shown.

Before

Width:  |  Height:  |  Size: 104 KiB

After

Width:  |  Height:  |  Size: 154 KiB

View File

@ -3,16 +3,16 @@
title = "even"
description = "A robust, elegant dark theme"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/getzola/even.git"
homepage = "https://github.com/getzola/even"
minimum_version = "0.16.0"
minimum_version = "0.17.0"
license = "MIT"
demo = "https://zola-even.netlify.app"
demo = "https://getzola.github.io/even/"
[extra.author]
name = "Vincent Prouillet"

View File

@ -3,11 +3,11 @@
title = "feather"
description = "A modern blog theme"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/piedoom/feather.git"
homepage = "https://github.com/piedoom/feather"
minimum_version = "0.11.0"

View File

@ -3,11 +3,11 @@
title = "Float"
description = "An elegant blog theme"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://gitlab.com/float-theme/float.git"
homepage = "https://gitlab.com/float-theme/float/"
minimum_version = "0.15.3"

View File

@ -3,11 +3,11 @@
title = "hallo"
description = "A single-page theme to introduce yourself."
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/flyingP0tat0/zola-hallo.git"
homepage = "https://github.com/janbaudisch/zola-hallo"
minimum_version = "0.4.0"

View File

@ -3,11 +3,11 @@
title = "hephaestus"
description = "A portfolio theme"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/BConquest/hephaestus.git"
homepage = "https://github.com/BConquest/hephaestus"
minimum_version = "0.4.0"

View File

@ -3,11 +3,11 @@
title = "Hermit_Zola"
description = "Minimal Zola theme"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/VersBinarii/hermit_zola.git"
homepage = "https://github.com/VersBinarii/hermit_zola"
minimum_version = "0.4.0"

View File

@ -3,11 +3,11 @@
title = "Hook"
description = "Clean and simple personal site/blog theme"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/InputUsername/zola-hook.git"
homepage = "https://github.com/InputUsername/zola-hook"
minimum_version = "0.15.2"

View File

@ -3,16 +3,16 @@
title = "hyde"
description = "A classic blog theme"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/getzola/hyde.git"
homepage = "https://github.com/getzola/hyde"
minimum_version = "0.11.0"
license = "MIT"
demo = "https://zola-hyde.netlify.app"
demo = "https://getzola.github.io/hyde/"
[extra.author]
name = "Vincent Prouillet"

View File

@ -3,11 +3,11 @@
title = "juice"
description = "An intuitive, elegant, and lightweight Zola theme for product sites."
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/huhu/juice.git"
homepage = "https://github.com/huhu/juice"
minimum_version = "0.11.0"

View File

@ -3,11 +3,11 @@
title = "kangae"
description = "a lightweight microblog theme for zola"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/ayushnix/kangae.git"
homepage = "https://github.com/ayushnix/kangae"
minimum_version = "0.15.0"

View File

@ -3,11 +3,11 @@
title = "karzok"
description = "The theme for launching fast documentation sites"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/kogeletey/karzok.git"
homepage = "https://github.com/kogeletey/karzok"
minimum_version = "0.15.0"
@ -20,52 +20,49 @@ homepage = ""
+++
<p align="center">
<a href="https://github.com/kogeletey/karzok/actions"><img src="https://flat.badgen.net/github/checks/kogeletey/karzok" alt="github workflows status" /></a>
<a href="https://github.com/kogeletey/karzok/blob/develop/LICENSE"><img src="https://flat.badgen.net/github/license/kogeletey/karzok" alt="license a repository" /></a>
<a href="https://ci.codeberg.org/kogeletey/karzok" target="_blank"><img src="https://ci.codeberg.org/api/badges/kogeletey/karzok/status.svg" alt="status-badge" /></a>
<a href="https://codeberg.org/kogeletey/karzok/blob/develop/LICENSE"><img src="https://flat.badgen.net/github/license/kogeletey/karzok" alt="license a repository, MIT" /></a>
<a href="https://github.com/kogeletey/karzok/releases"><img src="https://flat.badgen.net/github/release/kogeletey/karzok" alt="latest release as a repository" /></a>
<a href="https://framagit.org/kogeletey/nebra"><img alt="pipeline status re128" src="https://framagit.org/kogeletey/nebra/badges/develop/pipeline.svg" /></a>
</p>
<p align="center">
<a href="https://karzok.re128.org"> Documentation </a>
</p>
# Karzok
A theme for your documentation. Fast and secure
- classless and frameworkless
- Jinja-like templates
- javascript is optional, needed only for search,math,alerts and dark mode
- no roundings and other strange design trends
![screenshot](./screenshot.png)
## Demo
## Get Started
[Karzok](https://karzok.re128.org)
- [find out more](https://karzok.re128.org/install/)
## Requirements
### Requirements
- [Node.js](https://nodejs.org/)
### Optional
- [docker](https://docs.docker.com/engine/install/)
> for packaging container and production
## Get Started
### 1. Create a new zola site
```zsh
```sh
zola init zola_site
```
### 2. Download this theme to you themes directory:
```zsh
git clone https://git.sr.ht/~kogeletey/karzok zola_site/themes
```sh
git clone https://codeberg.org/kogeletey/karzok zola_site/themes
```
or install as submodule:
```zsh
```sh
cd zola_site
git init # if your project is a git repository already, ignore this command
git submodule add https://git.sr.ht/~kogeletey/karzok zola_site/themes
git submodule add https://codeberg.org/kogeletey/karzok zola_site/themes
```
### 3. Configuration. Open in favorite editor `config.toml`
@ -81,8 +78,6 @@ See more in [configuration](https://karzok.re128.org/configure/)
```zsh
cp ./themes/content/_index.md content/_index.md
# a template will appear with which you can quickly start writing
# cp ./themes/content/tmpl.md content/filename.md
```
how you can give freedom to your creativity
@ -94,8 +89,8 @@ i. development enviroment
1. Install node dependencies needed to work
```zsh
npm ci
npm run gen
pnpm ci
pnpm run build
```
2. Just run `zola serve` in the root path of the project
@ -109,7 +104,7 @@ changes live reolad.
ii. production enviroment
- with docker
- with conainers
1. Write file for container
@ -154,13 +149,13 @@ This program is Free Software: You can use, study share and improve it at your
will. Specifically you can redistribute and/or modify it under the terms of the
[MIT](https://mit-license.org/)
# Contribute
## Contribute
Make sure to read the [Code of Conduct](https://karzok.re128.org/reference/code_of_conduct/)
## Find bugs and come up with features
### Find bugs and come up with features
On the [todo.sr.ht](https://todo.sr.ht/~kogeletey/karzok) or
On the [codeberg issues](https://codeberg.org/kogeletey/karzok/issues) or
[github issues](https://github.com/kogeletey/karzok/issues)

View File

@ -3,11 +3,11 @@
title = "kodama"
description = "Theme insipired by wowchemy academic."
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/adfaure/kodama-theme.git"
homepage = "https://github.com/adfaure/kodama-theme"
minimum_version = "0.15"

View File

@ -3,11 +3,11 @@
title = "lightspeed"
description = "Zola theme with a perfect Lighthouse score"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/carpetscheme/lightspeed.git"
homepage = "https://github.com/carpetscheme/lightspeed"
minimum_version = "0.10.0"

View File

@ -3,11 +3,11 @@
title = "nasm-theme"
description = "A robust, elegant blue theme"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/lucasnasm/nasm-theme.git"
homepage = "https://github.com/lucasnasm/nasm-theme"
minimum_version = "0.1.0"

View File

@ -3,11 +3,11 @@
title = "no style, please!"
description = "A (nearly) no-CSS, fast, minimalist Zola theme"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://gitlab.com/4bcx/no-style-please.git"
homepage = "https://gitlab.com/4bcx/no-style-please"
minimum_version = "0.4.0"

View File

@ -3,11 +3,11 @@
title = "ntun-zola-theme"
description = "A classic resume theme"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/Netoun/ntun.git"
homepage = "https://github.com/netoun/ntun"
minimum_version = "0.1.0"

View File

@ -3,11 +3,11 @@
title = "Oceanic Zen"
description = "Minimalistic blog theme"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/barlog-m/oceanic-zen.git"
homepage = "https://github.com/barlog-m/oceanic-zen"
minimum_version = "0.12.0"

View File

@ -3,11 +3,11 @@
title = "Papaya"
description = "A clean Zola theme for blogging and projects"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/justint/papaya.git"
homepage = "https://github.com/justint/papaya"
minimum_version = "0.16.1"

View File

@ -3,11 +3,11 @@
title = "PaperMod"
description = ""
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/cydave/zola-theme-papermod.git"
homepage = "https://github.com/cydave/zola-theme-papermod"
minimum_version = "0.4.0"

View File

@ -3,14 +3,14 @@
title = "particle"
description = "Particle theme for Zola"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/svavs/particle-zola.git"
homepage = "https://github.com/svavs/particle"
minimum_version = "0.11.0"
homepage = "https://github.com/svavs/particle-zola"
minimum_version = "0.16.1"
license = "MIT"
demo = "https://particle-zola.vercel.app/"

View File

@ -3,11 +3,11 @@
title = "resume"
description = "A resume theme"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/AlongWY/zola-resume.git"
homepage = "https://github.com/alongwy/zola-resume"
minimum_version = "0.11.0"

View File

@ -3,11 +3,11 @@
title = "sam"
description = "A Simple and Minimalist theme with a focus on typography and content."
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/janbaudisch/zola-sam.git"
homepage = "https://github.com/janbaudisch/zola-sam"
minimum_version = "0.4.0"

View File

@ -3,11 +3,11 @@
title = "Seagull"
description = "A Zola theme."
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://git.42l.fr/HugoTrentesaux/seagull.git"
homepage = "https://git.42l.fr/HugoTrentesaux/seagull"
minimum_version = "0.17.0"

View File

@ -3,16 +3,16 @@
title = "Seje2"
description = "A beautiful zola theme"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/eatradish/seje2"
homepage = "https://github.com/eatradish/Seje2"
minimum_version = "0.15.0"
license = "MIT"
demo = "https://blog.miraclemilk.me/Seje2"
demo = "https://eatradish.github.io/Seje2"
[extra.author]
name = "Mag Mell"

View File

@ -1,13 +1,13 @@
+++
title = "serene"
description = "A blog theme for zola, simple and clean."
description = "A blog theme for zola, simple and clean"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/isunjn/serene.git"
homepage = "https://github.com/isunjn/serene"
minimum_version = "0.9.0"
@ -19,69 +19,37 @@ name = "isunjn"
homepage = "https://github.com/isunjn"
+++
English | [简体中文](https://github.com/isunjn/serene/blob/main/README-cn.md)
![screenshot](https://github.com/isunjn/serene/blob/main/screenshot.png?raw=true)
# Serene - A blog theme for zola
<br />
Serene is a simple and clean blog theme for Static-Site-Generator [Zola](https://www.getzola.org/).
A blog theme for [zola](https://www.getzola.org), simple and clean
[Demo](https://serene-demo-site.vercel.app) | [Docs](https://github.com/isunjn/serene/wiki)
## Demo
## Preview
<details>
<summary>Click to see screenshots</summary>
![](https://github.com/isunjn/serene/blob/main/screenshots/1.png?raw=true)
![](https://github.com/isunjn/serene/blob/main/screenshots/2.png?raw=true)
![](https://github.com/isunjn/serene/blob/main/screenshots/3.png?raw=true)
![](https://github.com/isunjn/serene/blob/main/screenshots/4.png?raw=true)
![](https://github.com/isunjn/serene/blob/main/screenshots/5.png?raw=true)
![](https://github.com/isunjn/serene/blob/main/screenshots/6.png?raw=true)
![](https://github.com/isunjn/serene/blob/main/screenshots/7.png?raw=true)
</details>
- <https://serene-demo-site.vercel.app>
## Features
- Personal website style
- Simple and clean, focus on content
- Dark mode
- Blog-related features
- Sticky table-of-contents
- Image zooming
- Reading progress bar
- Admonitions (Info, Important, Warning, etc.)
- Out-of-date warning
- Creative-Commons statement
- Comments
- Mathematical notations using [KaTeX](https://katex.org/)
- Diagrams and visualizations using [Mermaid](https://github.com/mermaid-js/mermaid)
- Web analytics
- A spiffy design, well crafted
- Projects page
- Easily customize
- Dark mode
- Image zooming
- Out-of-date alert
- Sticky table-of-contents
- Callouts (note, warning, alert, etc.)
- Comments using [Giscus](https://giscus.app)
- Mathematical notations using [KaTeX](https://katex.org)
- Diagrams and visualizations using [Mermaid](https://github.com/mermaid-js/mermaid)
## How to use
## Usage
See [docs](https://github.com/isunjn/serene/wiki).
- Check the [USAGE.md](https://github.com/isunjn/serene/blob/latest/USAGE.md) of `latest` branch
- Also available in Simplified Chinese: [USAGE-zh_CN.md](https://github.com/isunjn/serene/blob/latest/USAGE-zh_CN.md) (简体中文)
## Contributing
If you found a bug or want a specific feature, just open an issue.
Be noticed that to keep serene simple, some needs may not be considered. You can implement it in your own site.
## Credits
- [Remixicon](https://remixicon.com/) for icons
- [Lightense Images](https://github.com/sparanoid/lightense-images) for image zooming
- This theme draws some inspiration from these awesome sites:
- <https://www.zhangxiaochun.com/>
- <https://lightquantum.me/>
- <https://theme-cards.ichr.me/>
- <https://brianlovin.com/>
## License
[MIT](https://github.com/isunjn/serene/blob/main/LICENSE)
- Before you make any non-trivial changes, you may want to open an issue so we can discuss
- If you got any idea inspired by another blog theme or website and want to have that in serene, I'd like to hear about it

Binary file not shown.

Before

Width:  |  Height:  |  Size: 94 KiB

After

Width:  |  Height:  |  Size: 86 KiB

View File

@ -3,11 +3,11 @@
title = "shadharon"
description = "Simple blog theme powered by Zola"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/syedzayyan/shadharon"
homepage = "https://github.com/syedzayyan/shadharon"
minimum_version = "0.4.0"
@ -21,7 +21,7 @@ homepage = "https://syedzayyan.com"
# Shadharon
Simple blog theme powered by [Zola](getzola.org). See a live preview [here](https://syedzayyan.github.io/shadharon).
Simple blog theme powered by [Zola](getzola.org). See a live preview [here](https://shadharon.syedzayyan.com/).
> Name derived from the Bengali Word - সাধারণ which translates to "generic"

View File

@ -3,11 +3,11 @@
title = "simple-dev-blog"
description = "A simple dev blog theme with no javascript, prerendered linked pages and SEO tags."
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/bennetthardwick/simple-dev-blog-zola-starter.git"
homepage = "https://github.com/bennetthardwick/simple-dev-blog-zola-starter"
minimum_version = "0.4.0"

View File

@ -3,11 +3,11 @@
title = "Slim"
description = "Slim is a minimal, clean and beautiful theme for Zola."
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/jameshclrk/zola-slim.git"
homepage = "https://github.com/jameshclrk/zola-slim"
minimum_version = "0.8.0"

View File

@ -3,11 +3,11 @@
title = "Soapstone"
description = "A bare bones dark theme with some color tweakability"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/MattyRad/soapstone.git"
homepage = "https://github.com/MattyRad/soapstone"
minimum_version = "0.4.0"

View File

@ -3,11 +3,11 @@
title = "solar-theme-zola"
description = "A port of solar-theme-hugo for zola"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/hulufei/solar-theme-zola.git"
homepage = "https://github.com/hulufei/solar-theme-zola"
minimum_version = "0.4.0"

View File

@ -3,11 +3,11 @@
title = "tabi"
description = "A fast, lightweight, and modern Zola theme with optional JavaScript, and a perfect Lighthouse score."
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/welpo/tabi.git"
homepage = "https://github.com/welpo/tabi"
minimum_version = "0.9.0"

View File

@ -3,11 +3,11 @@
title = "tale-zola"
description = "Tala-Zola is a minimal Zola theme helping you to build a nice and seo-ready blog."
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/aaranxu/tale-zola.git"
homepage = "https://github.com/aaranxu/tale-zola"
minimum_version = "0.13.0"

View File

@ -3,11 +3,11 @@
title = "tilde"
description = "Simple theme to match the dracula tilde css"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://git.sr.ht/~savoy/tilde"
homepage = "https://git.sr.ht/~savoy/tilde"
minimum_version = "0.4.0"

View File

@ -3,11 +3,11 @@
title = "Toucan"
description = "Inspired from Pelican default theme"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://git.42l.fr/HugoTrentesaux/toucan.git"
homepage = "https://git.42l.fr/HugoTrentesaux/toucan"
minimum_version = "0.8.0"

View File

@ -3,11 +3,11 @@
title = "zerm"
description = "A minimalistic and dark theme based on Radek Kozieł's theme for Hugo"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/ejmg/zerm.git"
homepage = "https://github.com/ejmg/zerm"
minimum_version = "0.8.0"

View File

@ -3,11 +3,11 @@
title = "Zhuia"
description = "An elegant but still playful theme for Zola."
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/gicrisf/zhuia.git"
homepage = "https://github.com/gicrisf/zhuia"
minimum_version = "0.15.0"

View File

@ -3,16 +3,16 @@
title = "henry"
description = "A timeless blog theme"
template = "theme.html"
date = 2023-04-16T21:40:29+02:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-04-16T21:40:29+02:00
updated = 2023-04-16T21:40:29+02:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/sirodoht/zola-henry.git"
homepage = "https://github.com/sirodoht/zola-henry"
minimum_version = "0.4.0"
license = "MIT"
demo = ""
demo = "https://sirodoht.github.io/zola-henry/"
[extra.author]
name = "sirodoht"
@ -23,7 +23,13 @@ homepage = ""
Henry is a single-column [Zola](https://github.com/getzola/zola) theme based on the original Jekyll styles.
![Henry screenshot](screenshot.png)
Demo -> [https://sirodoht.github.io/zola-henry/](https://sirodoht.github.io/zola-henry/)
![screenshot for home page](screenshot.png)
![screenshot for posts](screenshot-post.png)
![screenshot for any other page](screenshot-page.png)
## Installation
@ -49,8 +55,8 @@ Set a field in `extra` with a key of `henry_links`:
```toml
[extra]
henry_links = [
{url = "/about", name = "About"},
{url = "https://github.com/patrick", name = "Projects"},
{url = "about", name = "About"},
{url = "https://github.com/benbalter", name = "GitHub"},
]
```
@ -71,7 +77,7 @@ Twitter is too mainstream and a bit lame, but 100% of our users have requested,
```toml
[extra]
henry_twitter = "https://twitter.com/dhh"
henry_twitter = "https://twitter.com/benbalter"
```
## License

Binary file not shown.

Before

Width:  |  Height:  |  Size: 58 KiB

After

Width:  |  Height:  |  Size: 17 KiB

View File

@ -3,11 +3,11 @@
title = "zola-paper"
description = "A clean theme inspired from hugo-paper."
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/schoenenberg/zola-paper.git"
homepage = "https://github.com/schoenenberg/zola-paper"
minimum_version = "0.11.0"

View File

@ -3,15 +3,15 @@
title = "pickles"
description = "A modern, simple, clean blog theme for Zola."
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/lukehsiao/zola-pickles.git"
homepage = "https://github.com/lukehsiao/zola-pickles"
minimum_version = "0.13.0"
license = "MIT OR Apache-2.0"
license = "BlueOak-1.0.0"
demo = "https://effervescent-chebakia-056748.netlify.app/"
[extra.author]

View File

@ -3,11 +3,11 @@
title = "Course"
description = "A zola theme designed for online courses or tutorials"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/elegaanz/zola-theme-course.git"
homepage = "https://github.com/elegaanz/zola-theme-course"
minimum_version = "0.17.1"

View File

@ -3,11 +3,11 @@
title = "Hikari"
description = "Fluid, responsive blog theme for Zola"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/waynee95/zola-theme-hikari.git"
homepage = "https://github.com/waynee95/zola-theme-hikari"
minimum_version = "0.5.1"

View File

@ -3,11 +3,11 @@
title = "terminimal"
description = "A simple, minimal retro theme"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/pawroman/zola-theme-terminimal.git"
homepage = "https://github.com/pawroman/zola-theme-terminimal"
minimum_version = "0.11.0"
@ -29,7 +29,7 @@ homepage = "https://github.com/pawroman"
See the live demo (of the default configuration) here:
https://pawroman.github.io/zola-theme-terminimal/
Tested with Zola v0.16.1. Please note that earlier versions might not work because of breaking changes across Zola versions.
Tested with Zola v0.17.2. Please note that earlier versions might not work because of breaking changes across Zola versions.
#### Fork disclaimer
@ -39,49 +39,18 @@ https://github.com/panr/hugo-theme-terminal
Many thanks for that outstanding original theme, Radek!
## Changes compared to the original theme
For more information about this fork and the differences to the original theme, please see:
Changes compared to the original theme below.
- Slight changes in the layout and styling.
- Content has been centered (instead of left-aligned).
- The header stripes have been spaced out.
- Tweaks to pagination, especially on mobile (small screens).
- The post title underline is dashed instead of doubly-dotted.
- All links are underlined, as per
[Brutalist Web Design Guidelines](https://www.brutalist-web.design/).
- Tweaks to header font sizes.
- Minor footer tweaks.
## Versioning
- Absolutely **no JavaScript**.
- No JavaScript needed to pre-process anything.
Zola with its Sass pre-processor is the only dependency.
- There's no menu trigger.
- Things load crazy fast, as it's all static content.
- Prism.js syntax highlighting is not supported (you can use
[Zola's](https://www.getzola.org/documentation/content/syntax-highlighting/)).
This theme used to be non-versioned, e.g. you'd pull the master branch, and occasionally new features or fixes would
be released.
- All references to social media (e.g. Twitter, OpenGraph) have been removed.
Starting from version v1.0.0, the project adopted [Semantic Versioning](https://semver.org/).
- All references to external URLs (e.g. Google CDN) have been removed.
This theme's static assets are meant to be served from where it's hosted.
- [Hack](https://github.com/source-foundry/Hack) is the default font.
- The default color theme is blue (original uses orange).
### New features
- You can pick the accent color as well as background color.
There's a new `dark` background. See Configuration
below for details.
- Active "section" links will change color indicating the
active section. This is all static, done at template level.
## Features retained from the original
- 5 color themes, depending on your preference:
blue (default), green, orange, pink, red.
- The shortcodes `image` and `figure` (See Shortcodes.
- Fully responsive.
Please check the [GitHub releases](https://github.com/pawroman/zola-theme-terminimal/releases) to see a change log
and work out if there's any breaking changes.
## How to start
@ -171,11 +140,12 @@ of your `config.toml`:
# One of: blue, green, orange, pink, red.
# Defaults to blue.
# Append -light for light themes, e.g. blue-light
# Or append -auto, e.g. blue-auto
accent_color = "green"
# One of: blue, dark, green, orange, pink, red.
# Enabling dark background will also modify primary font color
# to be darker.
# One of: blue, dark, green, orange, pink, red, light, auto
# Enabling dark background will also modify primary font color to be darker.
# Defaults to accent color (or, if not accent color specified, to blue).
background_color = "dark"
```
@ -387,6 +357,52 @@ base template, `index.html`, create file like this in `templates/index.html`:
If you spot any bugs or wish to contribute new features, please create a new
[Pull Request](https://github.com/pawroman/zola-theme-terminimal/pulls).
## Changes compared to the original theme
This theme has been forked from https://github.com/panr/hugo-theme-terminal
- Slight changes in the layout and styling.
- Content has been centered (instead of left-aligned).
- The header stripes have been spaced out.
- Tweaks to pagination, especially on mobile (small screens).
- The post title underline is dashed instead of doubly-dotted.
- All links are underlined, as per
[Brutalist Web Design Guidelines](https://www.brutalist-web.design/).
- Tweaks to header font sizes.
- Minor footer tweaks.
- Absolutely **no JavaScript**.
- No JavaScript needed to pre-process anything.
Zola with its Sass pre-processor is the only dependency.
- There's no menu trigger.
- Things load crazy fast, as it's all static content.
- Prism.js syntax highlighting is not supported (you can use
[Zola's](https://www.getzola.org/documentation/content/syntax-highlighting/)).
- All references to social media (e.g. Twitter, OpenGraph) have been removed.
- All references to external URLs (e.g. Google CDN) have been removed.
This theme's static assets are meant to be served from where it's hosted.
- [Hack](https://github.com/source-foundry/Hack) is the default font.
- The default color theme is blue (original uses orange).
### New features
- You can pick the accent color as well as background color.
There's a new `dark` background. See Configuration
below for details.
- Active "section" links will change color indicating the
active section. This is all static, done at template level.
### Features retained from the original
- 5 color themes, depending on your preference:
blue (default), green, orange, pink, red.
- The shortcodes `image` and `figure` (See Shortcodes.
- Fully responsive.
## License
Copyright © 2019 Paweł Romanowski (pawroman)

View File

@ -3,11 +3,11 @@
title = "zola.386"
description = "Zola port of the BOOTSTRA.386 theme."
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/lopes/zola.386.git"
homepage = "https://github.com/lopes/zola.386"
minimum_version = "0.10.1"

View File

@ -3,11 +3,11 @@
title = "EasyDocs"
description = "An easy way to create docs for your project"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/codeandmedia/zola_easydocs_theme.git"
homepage = "https://github.com/codeandmedia/zola_easydocs_theme"
minimum_version = "0.13.0"

View File

@ -3,11 +3,11 @@
title = "zolastrap"
description = "A bootstrap theme for zola"
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/marcodpt/zolastrap.git"
homepage = "https://github.com/marcodpt/zolastrap"
minimum_version = "0.14.1"

View File

@ -3,11 +3,11 @@
title = "Zplit"
description = "A single page theme for a professional online presence."
template = "theme.html"
date = 2023-07-10T22:28:41+01:00
date = 2023-08-20T14:37:38+02:00
[extra]
created = 2023-07-10T22:28:41+01:00
updated = 2023-07-10T22:28:41+01:00
created = 2023-08-20T14:37:38+02:00
updated = 2023-08-20T14:37:38+02:00
repository = "https://github.com/gicrisf/zplit"
homepage = "https://github.com/gicrisf/zplit"
minimum_version = "0.15.0"