Giter VIP home page Giter VIP logo

zerm's Introduction

zerm

my fork of a minimalist and dark theme for Zola.

Screenshot

Live Preview!

Largely a port of Radek Kozieł's Terminal Theme for Hugo.

differences from original theme

This theme is largely true to the original by Radek, but there are some mild differences. They are almost all stylistic in nature and are intended to emphasize minimalism even more. Some of them are as follows:

  • tags are now included in a post's meta data.
  • categories are included in the taxonomy.
  • bullet points have slightly more margin and different symbols for nesting.

Some of these might be added later and PR's are always welcomed.

differences from ejmg port

  • math typesetting support with KaTeX (now merged in upstream)
  • copy URL to clipboard function at the end of the page.
  • pagination at the end of the page.
  • optional support us and follow me boxes at the end of the page.
  • theme switcher for dark/light mode
  • elasticlunr js search implemented according to the zola documentation.
  • search supports multilanguage thanks to Lunr languages integration.
  • duckduckgo search.
  • highly optimized cover images for posts and lists.
  • 404 template (now in upstream, but here still different)

configuration

Please follow the Zola documentation for how to use a theme.

In config.toml, you will find all values for customization that are supported thus far have documentation explaining how they are used. If there is any confusion or something is not working as intended, please open an issue!

colorschemes

You can add a button in the navbar to change the color palette from a dark mode to a light mode with ease. I already wrote a light version for the orange palette. You can see the button switching colors in the gif below.

theme switching colors

You can add your custom light colorscheme for any palette you want like I did with the orange one on the orange.scss file in sass/colors:

:root {
  --accent: rgb(255,168,106);
  --accent-alpha-20: rgba(255, 168, 106, .2);
  --accent-alpha-70: rgba(255, 168, 106,.7);
  --background: #211f1a;
  --color: whitesmoke;
  --border-color: rgba(255, 255, 255, .1);
}

[data-theme="light"] {
  --accent: rgb(196, 125, 76);
  --accent-alpha-20: rgba(196, 125, 76, .2);
  --accent-alpha-70: rgba(196, 125, 76, .7);
  --background: #e4e3dd;
  --color: #110b11;
  --border-color: rgba(255, 255, 255, .1);
}

Enable this function with the theme_switcher parameter in [extra] section of configuration file:

# Dark/Light mode switcher
theme_switcher = true

elasticlunr search

elasticlunr italian search

Elasticlunr uses JS to search on an indexed version of the website; you have to enable the generation of the index by zola with this parameter:

# /config.toml

# Whether to build a search index to be used later on by a JavaScript library
build_search_index = true

elasticlunr multilang support

Multilanguage supported with those available:

  • German
  • French
  • Spanish
  • Italian
  • Japanese
  • Dutch
  • Danish
  • Portuguese
  • Finnish
  • Romanian
  • Hungarian
  • Russian
  • Norwegian

Just select a default_language accordingly to make it work!

duckduckgo search

DuckDuckGo search mode

If you don't want to make use of javascript on your website or you really like DDG like me, you could set up a DuckDuckGo search form.

math

You can use KaTeX for mathematical typesetting. Assets are only available if you opt-in on a per-page level through a single line (math=true) on the extra section of the page frontmatter.

# index.md
+++
title="this page title"
...

[extra]
math=true
+++

Content

Pages wich doesn't opt-in are not affected in any way, so you doesn't have to worry about any performance hit.

license

MIT. See LICENSE.md for more details.

zerm's People

Contributors

adworacz avatar austinwise avatar damccull avatar desmondwillowbrook avatar ebkalderon avatar ejmg avatar gicrisf avatar jseung5 avatar junghanacs avatar leodido avatar phrohdoh avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.