diff --git a/EXAMPLES.md b/EXAMPLES.md index cd7eb6f506..f6eafe88d8 100644 --- a/EXAMPLES.md +++ b/EXAMPLES.md @@ -41,4 +41,5 @@ | [Der Corona-Effekt](https://corona-effekt.orgatalk.de/) | https://github.com/orgatalk/corona-effekt | | [Table Dog](https://table.dog/blog/) | | | [146 Parks](https://146parks.blog/) | https://github.com/scouten/146parks.blog | -| [films.mlcdf.fr](https://films.mlcdf.fr) | https://github.com/mlcdf/films | \ No newline at end of file +| [films.mlcdf.fr](https://films.mlcdf.fr) | https://github.com/mlcdf/films | +| [Mish Ushakov](https://mish.co) | | diff --git a/README.md b/README.md index 9603d577a2..bdcfd4aa75 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,7 @@ # zola (né Gutenberg) [![Build Status](https://dev.azure.com/getzola/zola/_apis/build/status/getzola.zola?branchName=master)](https://dev.azure.com/getzola/zola/_build/latest?definitionId=1&branchName=master) +![GitHub all releases](https://img.shields.io/github/downloads/getzola/zola/total) A fast static site generator in a single binary with everything built-in. diff --git a/docs/content/documentation/getting-started/installation.md b/docs/content/documentation/getting-started/installation.md index 1f6913a301..0cb16379c9 100644 --- a/docs/content/documentation/getting-started/installation.md +++ b/docs/content/documentation/getting-started/installation.md @@ -112,6 +112,7 @@ You can now browse http://localhost:8080. > port between 1024 and 9000 for live reload. The new docker command would be > `$ docker run -u "$(id -u):$(id -g)" -v $PWD:/app --workdir /app -p 8080:8080 -p 1024:1024 ghcr.io/getzola/zola:v0.16.0 serve --interface 0.0.0.0 --port 8080 --base-url localhost` + ## Windows Zola is available on [Scoop](https://scoop.sh): diff --git a/docs/content/documentation/getting-started/overview.md b/docs/content/documentation/getting-started/overview.md index 5c205fba36..3b93a06013 100644 --- a/docs/content/documentation/getting-started/overview.md +++ b/docs/content/documentation/getting-started/overview.md @@ -220,7 +220,7 @@ The `index.html` file inside the `templates` directory should be:

This is my blog made with Zola.

-

Click here to see my posts.

+

Click here to see my posts.

{% endblock content %} ``` diff --git a/docs/content/themes/DeepThought/index.md b/docs/content/themes/DeepThought/index.md index 1d8e866645..a34de65deb 100644 --- a/docs/content/themes/DeepThought/index.md +++ b/docs/content/themes/DeepThought/index.md @@ -3,14 +3,14 @@ title = "DeepThought" description = "A simple blog theme focused on writing powered by Bulma and Zola." template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 repository = "https://github.com/RatanShreshtha/DeepThought.git" homepage = "https://github.com/RatanShreshtha/DeepThought" -minimum_version = "0.9.0" +minimum_version = "0.14.1" license = "MIT" demo = "https://deepthought-theme.netlify.app/" @@ -65,8 +65,6 @@ homepage = "https://ratanshreshtha.dev" - - ## About The Project [![DeepThought](./screenshot.png)](https://deepthought-theme.netlify.app/) @@ -74,6 +72,7 @@ homepage = "https://ratanshreshtha.dev" > A simple blog theme focused on writing powered by Bulma and Zola. ### Features + - [x] Dark Mode - [x] Pagination - [x] Search @@ -88,13 +87,10 @@ homepage = "https://ratanshreshtha.dev" - [x] Multilingual Navbar - [x] Katex - ### Built With -* [Zola](https://www.getzola.org/) -* [Bulma](https://bulma.io/) - - +- [Zola](https://www.getzola.org/) +- [Bulma](https://bulma.io/) ## Getting Started @@ -110,22 +106,32 @@ Follow zola's guide on [installing a theme](https://www.getzola.org/documentatio Make sure to add `theme = "DeepThought"` to your `config.toml` **Check zola version (only 0.9.0+)** -Just to double-check to make sure you have the right version. It is not supported to use this theme with a version under 0.9.0. - - +Just to double-check to make sure you have the right version. It is not supported to use this theme with a version under 0.14.1. ## Usage ### How to serve? + Go into your sites directory and type `zola serve`. You should see your new site at `localhost:1111`. - **NOTE**: you must provide the theme options variables in `config.toml` to serve a functioning site +**NOTE**: you must provide the theme options variables in `config.toml` to serve a functioning site ### Deployment + [Zola](https://www.getzola.org) already has great documentation for deploying to [Netlify](https://www.getzola.org/documentation/deployment/netlify/) or [Github Pages](https://www.getzola.org/documentation/deployment/github-pages/). I won't bore you with a regurgitated explanation. ### Theme Options + ```toml +# Enable external libraries +[extra] +katex.enabled = true +katex.auto_render = true + +chart.enabled = true +mermaid.enabled = true +galleria.enabled = true + navbar_items = [ { code = "en", nav_items = [ { url = "$BASE_URL/", name = "Home" }, @@ -159,8 +165,11 @@ keybase = "" linkedin = "" stackoverflow = "" twitter = "" -instagram = "" +instagram = "" behance = "" +google_scholar = "" +orcid = "" +mastodon = "" # To add google analytics @@ -173,6 +182,7 @@ disqus = "" # To enable mapbox maps [extra.mapbox] +enabled = true access_token = "" ``` @@ -184,7 +194,7 @@ If you want to have a multilingual navbar on your blog, you must add your new co ```toml languages = [ - {code = "fr"}, + {code = "fr"}, {code = "es"}, ] ``` @@ -220,46 +230,52 @@ fr: ![DeepThought](./screenshot_navbar_fr.png) -es: +es: ![DeepThought](./screenshot_navbar_es.png) - ### KaTeX math formula support This theme contains math formula support using [KaTeX](https://katex.org/), which can be enabled by setting `katex.enabled = true` in the `extra` section -+of `config.toml`: - -```toml -[extra] -katex.enabled = true -katex.auto_render = true -``` +of `config.toml`. After enabling this extension, the `katex` short code can be used in documents: -* `{{/* katex(body="\KaTeX") */}}` to typeset a math formula inlined into a text, + +- `{{/* katex(body="\KaTeX") */}}` to typeset a math formula inlined into a text, similar to `$...$` in LaTeX -* `{%/* katex(block=true) */%}\KaTeX{%/* end */%}` to typeset a block of math formulas, +- `{%/* katex(block=true) */%}\KaTeX{%/* end */%}` to typeset a block of math formulas, similar to `$$...$$` in LaTeX #### Automatic rendering without short codes Optionally, `\\( \KaTeX \\)` / `$ \KaTeX $` inline and `\\[ \KaTeX \\]` / `$$ \KaTeX $$` -block-style automatic rendering is also supported, if enabled in the config: +block-style automatic rendering is also supported, if enabled in the config +by setting `katex.auto_render = true`. -```toml -[extra] -katex.enabled = true -katex.auto_render = true +### Elasticlunr search in other language + +Zola use [Elasticlunr.js](https://github.com/weixsong/elasticlunr.js) to add full-text search feature. +To use languages other than en (English), you need to add some javascript files. See the Zola's issue [#1349](https://github.com/getzola/zola/issues/1349). +By placing the `templates/base.html`on your project and using the `other_lang_search_js` block, you can load the required additional javascript files in the right timing. + +e.g. `templates/base.html` + +```html +{%/* extends "DeepThought/templates/base.html" */%} {%/* block other_lang_search_js */%} + + + + +{%/* endblock */%} ``` +More detailed explanations are aound in [elasticlunr's documents](https://github.com/weixsong/elasticlunr.js#other-languages-example-in-browser). + ## Roadmap See the [open issues](https://github.com/RatanShreshtha/DeepThought/issues) for a list of proposed features (and known issues). - - ## Contributing Contributions are what make the open source community such an amazing place to be learn, inspire, and create. Any contributions you make are **greatly appreciated**. @@ -270,27 +286,22 @@ Contributions are what make the open source community such an amazing place to b 4. Push to the Branch (`git push origin feature/AmazingFeature`) 5. Open a Pull Request - - ## License Distributed under the MIT License. See `LICENSE` for more information. - - ## Contact Ratan Kulshreshtha - [@RatanShreshtha](https://twitter.com/RatanShreshtha)> - Project Link: [https://github.com/RatanShreshtha/DeepThought](https://github.com/RatanShreshtha/DeepThought) ## Acknowledgements -* [GitHub Emoji Cheat Sheet](https://www.webpagefx.com/tools/emoji-cheat-sheet) -* [Choose an Open Source License](https://choosealicense.com) -* [Slick Carousel](https://kenwheeler.github.io/slick) -* [Font Awesome](https://fontawesome.com) -* [Unsplash](https://unsplash.com/) +- [GitHub Emoji Cheat Sheet](https://www.webpagefx.com/tools/emoji-cheat-sheet) +- [Choose an Open Source License](https://choosealicense.com) +- [Slick Carousel](https://kenwheeler.github.io/slick) +- [Font Awesome](https://fontawesome.com) +- [Unsplash](https://unsplash.com/) \ No newline at end of file diff --git a/docs/content/themes/DeepThought/screenshot.png b/docs/content/themes/DeepThought/screenshot.png index 4b8520efdc..9b59837825 100644 Binary files a/docs/content/themes/DeepThought/screenshot.png and b/docs/content/themes/DeepThought/screenshot.png differ diff --git a/docs/content/themes/Ergo/index.md b/docs/content/themes/Ergo/index.md index f4de7fb1ff..856b40bd86 100644 --- a/docs/content/themes/Ergo/index.md +++ b/docs/content/themes/Ergo/index.md @@ -3,12 +3,12 @@ title = "Ergo" description = "A simple blog Theme focused on writing, inspired by svbtle" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 -repository = "https://github.com/InsidiousMind/Ergo.git" +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 +repository = "https://github.com/insipx/Ergo.git" homepage = "https://github.com/insipx/Ergo" minimum_version = "0.4.1" license = "MIT" diff --git a/docs/content/themes/Zulma/index.md b/docs/content/themes/Zulma/index.md index cd5a79896e..5a05cb8fd5 100644 --- a/docs/content/themes/Zulma/index.md +++ b/docs/content/themes/Zulma/index.md @@ -3,12 +3,12 @@ title = "Zulma" description = "A zola theme based off bulma.css" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 -repository = "https://github.com/Worble/Zulma" +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 +repository = "https://github.com/Worble/Zulma.git" homepage = "https://github.com/Worble/Zulma" minimum_version = "0.6.0" license = "MIT" diff --git a/docs/content/themes/abridge/index.md b/docs/content/themes/abridge/index.md new file mode 100644 index 0000000000..feb2959e4d --- /dev/null +++ b/docs/content/themes/abridge/index.md @@ -0,0 +1,401 @@ + ++++ +title = "abridge" +description = "A fast and lightweight Zola theme using semantic html, a class-light abridge.css, and No JS." +template = "theme.html" +date = 2022-06-03T14:22:50-07:00 + +[extra] +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 +repository = "https://github.com/Jieiku/abridge.git" +homepage = "https://github.com/jieiku/abridge/" +minimum_version = "0.14.1" +license = "MIT" +demo = "https://abridge.netlify.app/" + +[extra.author] +name = "Jake G (jieiku)" +homepage = "https://github.com/jieiku/" ++++ + +
+ + +# Abridge Zola Theme + +Abridge is a fast and lightweight Zola theme using semantic html, only ~6kb css before svg icons, no mandatory JS[*](https://github.com/Jieiku/abridge#contributing-and-philosophy), and perfect [Lighthouse](https://web.dev/measure/?url=https%3A%2F%2Fabridge.netlify.app) and [Observatory](https://observatory.mozilla.org/analyze/abridge.netlify.app) scores. + +There is also an [Abridge-minimal](https://github.com/jieiku/abridge.css) Theme which is used to showcase the [abridge.css framework](https://github.com/Jieiku/abridge.css/tree/master/dist) + +Maintainence of this project is made possible by all the contributors and sponsors. If you'd like to sponsor this project and have your avatar or company logo appear below click here. 💖 + + + +
+ +--- + +## Demo + +[https://abridge.netlify.app/](https://abridge.netlify.app/) + +## Requirements + +This theme requires version 0.14.1 or later of [Zola](https://www.getzola.org/documentation/getting-started/installation/) + +## Quick Start + +```bash +git clone https://github.com/jieiku/abridge.git +cd abridge +zola serve +# open http://127.0.0.1:1111/ in the browser +``` + +## Installation +The Quick Start shows how to run the theme directly as a site. +Next we will use abridge as a theme to a NEW site. + +### Step 1: Create a new zola site + +```bash +zola init mysite +``` + +### Step 2: Install abridge + +Download this theme to your themes directory: + +```bash +cd mysite/themes +git clone https://github.com/jieiku/abridge.git +``` + +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 + +Enable the theme in your `config.toml` in the site directory: + +```toml +theme = "abridge" +``` + +Or 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) + +```bash +cp themes/abridge/config.toml config.toml +``` + +Uncomment the theme line, and point extra_syntaxes_and_themes at the correct directory: +```bash +sed -i 's/^#theme = "abridge"/theme = "abridge"/' config.toml +sed -i 's/^extra_syntaxes_and_themes = \["highlight_themes"\]/extra_syntaxes_and_themes = \["highlight_themes", "themes\/abridge\/highlight_themes"\]/' config.toml +``` + +The result should be: +```toml +theme = "abridge" +[markdown] +extra_syntaxes_and_themes = ["highlight_themes", "themes/abridge/highlight_themes"] +``` + +### Step 4: Add new content + +You can copy the content from the theme directory to your project: + +```bash +cp -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: + +```bash +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. + +## 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. + +### 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` + +### Page width + +You can set the overal page width by editing `themes\abridge\sass\_variables.scss` file, and adjusting these two lines: + +```scss +$mw:50% !default;// max-width +$mb:1200px !default;// value at which to switch from fluid layout to using max-width +``` + +### Colors and Styles + +Colors and style are handled by the sass files of [abridge.css](https://github.com/jieiku/abridge.css) + +Abridge comes with two "Skins" each with their own auto, dark, and light modes. +Auto mode automatically displays a dark or light version depending on browser/OS settings. + +The skin used on [the Demo](https://abridge.netlify.app/) uses primarily orange colors. +It is defined here: `/themes/abridge/sass/abridge.scss` + +There is also other variations, that you will see defined in this same directory. + +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. + +### 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"}, +] +``` + +Use search function for the content. + +```toml +build_search_index = true +``` + +​The search is the only thing that requires javascript in this this theme. + +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` + +- `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. + +- `author` - Used for articles to denote the author. +- `author_show = true` - Displays the author name on line with date, tags, categories +- `readtime = true` - Displays the read time on line with date, tags, categories. +- `readtime_string` - The word following the read time, you can set this to "min", "minutes", "min read", etc. +- `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 +- `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 add 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/) + +- `banner` - Image to use in seo related cards, this will be the fallback image if the individual articles does not provide one, still a work in progress. +- `js_search_index = "search_index.en.js"` - The search index file to include in the header, comment out to disable. +- `js_search = "search.min.js"` - The search script file to include in the header, comment out to disable. +- `rss_atom_feed = "atom.xml"` - The atom.xml rss file to include in the header. +- `stylesheet = "abridge.css"` - The stylesheet file to include in the header. +- `fontawesome =` - Uncomment to enable fontawesome library, this will include the file in the header. +- `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/) +- `math_auto_render` - This allows you to define a section of math notation using only $$ $$ symbols instead of using the katex shortcode directly. + +- `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` + +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`: + +```toml +taxonomies = [ + # You can enable/disable RSS + {name = "categories", rss = true}, + {name = "tags", rss = true}, +] +``` + +### Top and Footer menus +Set a field in `extra` with a key of `menu` and `menu_footer`. +If a link should have a trailing slash at the end of the url set `slash = true`. + +```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}, +] +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}, +] +``` + +### 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. + +You should also set page specific keywords unless your keywords defined in config.toml suffice, any keywords that you add to the page are in addition to the ones defined in config.toml, so do not add those same keywords to your page keywords. + +You can optionally also set a page specific image for search results by using page.extra.thumbnail. OpenGraph recommends 1200 x 630 (1.9:1). Twitter recommends 2:1 for large and 1:1 for small. If you do not set a page specific thumbnail then the banner defined in config.toml will be used instead. + +Refer to [overview-images](https://raw.githubusercontent.com/Jieiku/abridge/master/content/overview-images/index.md) for an example: +```md ++++ +title = "Image Shortcodes" +description = "Images can be embeded directly using markdown `![Ferris](ferris.svg)`, but using a shortcode prevents CLS by explicitly setting the width and height." +date = 2021-05-19 + +[taxonomies] +categories = ["Features"] +tags = ["shortcodes","images"] +[extra] +toc = true +keywords = "Image, Markdown, Shortcodes, Hover" +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 and CSP + +KaTeX unfortunately requires `script-src 'unsafe-inline'` in the Content Security Policy. This is a security vulnerability, so the demo site will not render KaTeX correctly because the demo site uses best security practices. + +KaTeX js is designed to work even with dynamic content, but because Zola is a SSG it seems to me the best solution is to avoid using this javascript all-together, process our markdown files similar to how KaTeX autorender does, but do it during zola build. insert some `` ...etc so that we basically render it during the build process. If complex mathematics were part of my daily life then I might be motivated to write such code for Zola. + +You will also see [this page](https://abridge.netlify.app/overview-math/) rendered correctly if you git clone this repo and use zola serve because then there will be no Content Security Policy in place. + +### Templates + +All pages extend to `base.html`, and you can customize them as need. + +## Optional Optimizations: + +### 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: + +```bash +cd static +oxipng -o max --strip all -a -Z *.png +``` + +### Consolidate two search js files into one: + +Optionally you can serve a single js file for the search instead of a separate index by combining the two: +(although I am not sure how to accomplish this if your using the theme as a submodule, maybe you can use a git action for this command depending on your hosting provider.) + +First comment out this line in config.toml: + +```toml +#js_search_index ="search_index.en.js +``` + +Then build and uglifyjs: +```bash +zola build +uglifyjs search_index.en.js search.min.js -o search.min.js -c -m +``` + +### Pre gzip content to serve with nginx: + +If you are serving your site with nginx, you can pre gzip your content. + +First configure nginx: + +```bash +sudo nano /etc/nginx/nginx.conf + +gzip on; +gzip_vary on; +gzip_proxied expired no-cache no-store private auth; +#gzip_proxied any; +gzip_comp_level 9; +gzip_buffers 64 16k; +#gzip_buffers 16 8k; +gzip_http_version 1.1; +gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript image/svg+xml application/xhtml+xml application/x-javascript application/x-font-ttf application/vnd.ms-fontobject font/opentype font/ttf font/eot font/otf; +#gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript; +``` + +Then you can gzip your files: +```bash +zola build +find ./public -type f -regextype posix-extended -regex '.*\.(htm|html|css|js|xml|xsl|txt|woff|woff2|svg|otf|eot|ttf)' -exec gzip -k -9 -f {} \; +``` + +## Reporting Issues + +We use GitHub Issues as the official bug tracker for **abridge**. +Please search [existing issues](https://github.com/jieiku/abridge/issues). +It’s 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). + +## Contributing and Philosophy + +We'd love your help! Especially with fixes to issues. + +The overall idea behind abridge is to be lightweight and fast, and to work properly even if javascript is disabled. + +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. + +## License + +**abridge** is distributed under the terms of the +[MIT license](https://github.com/jieiku/abridge/blob/master/LICENSE). + + \ No newline at end of file diff --git a/docs/content/themes/abridge/screenshot.png b/docs/content/themes/abridge/screenshot.png new file mode 100644 index 0000000000..79e0bb5bf2 Binary files /dev/null and b/docs/content/themes/abridge/screenshot.png differ diff --git a/docs/content/themes/adidoks/index.md b/docs/content/themes/adidoks/index.md index 7a50b71c26..c3f8dd19ad 100644 --- a/docs/content/themes/adidoks/index.md +++ b/docs/content/themes/adidoks/index.md @@ -3,14 +3,14 @@ title = "adidoks" description = "AdiDoks is a Zola theme helping you build modern documentation." template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 repository = "https://github.com/aaranxu/adidoks.git" homepage = "https://github.com/aaranxu/adidoks" -minimum_version = "0.13.0" +minimum_version = "0.15.0" license = "MIT" demo = "https://adidoks.netlify.app/" @@ -30,7 +30,7 @@ theme [Doks](https://github.com/h-enk/doks) for Zola. ## Requirements -Before using the theme, you need to install the [Zola](https://www.getzola.org/documentation/getting-started/installation/) ≥ 0.13.0. +Before using the theme, you need to install the [Zola](https://www.getzola.org/documentation/getting-started/installation/) ≥ 0.15.0. ## Quick Start diff --git a/docs/content/themes/after-dark/index.md b/docs/content/themes/after-dark/index.md index 968451c274..9c0149f4b2 100644 --- a/docs/content/themes/after-dark/index.md +++ b/docs/content/themes/after-dark/index.md @@ -3,11 +3,11 @@ title = "after-dark" description = "A robust, elegant dark theme" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 repository = "https://github.com/getzola/after-dark.git" homepage = "https://github.com/getzola/after-dark" minimum_version = "0.11.0" diff --git a/docs/content/themes/anatole-zola/index.md b/docs/content/themes/anatole-zola/index.md index 2ccee16315..c50de5587b 100644 --- a/docs/content/themes/anatole-zola/index.md +++ b/docs/content/themes/anatole-zola/index.md @@ -3,11 +3,11 @@ title = "anatole-zola" description = "A port of farbox-theme-Anatole for zola" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 repository = "https://github.com/longfangsong/anatole-zola.git" homepage = "https://github.com/longfangsong/anatole-zola" minimum_version = "0.4.0" diff --git a/docs/content/themes/anpu/index.md b/docs/content/themes/anpu/index.md index 2eb08fda51..93fa66c87e 100644 --- a/docs/content/themes/anpu/index.md +++ b/docs/content/themes/anpu/index.md @@ -3,11 +3,11 @@ title = "Anpu" description = "A port of the Hugo Anubis theme" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 repository = "https://github.com/zbrox/anpu-zola-theme.git" homepage = "https://github.com/zbrox/anpu-zola-theme" minimum_version = "0.11.0" diff --git a/docs/content/themes/apollo/index.md b/docs/content/themes/apollo/index.md new file mode 100644 index 0000000000..44802c7a4a --- /dev/null +++ b/docs/content/themes/apollo/index.md @@ -0,0 +1,83 @@ + ++++ +title = "apollo" +description = "Modern and minimalistic blog theme" +template = "theme.html" +date = 2022-06-03T14:22:50-07:00 + +[extra] +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 +repository = "https://github.com/not-matthias/apollo.git" +homepage = "https://github.com/not-matthias/apollo" +minimum_version = "0.14.0" +license = "MIT" +demo = "https://not-matthias.github.io/apollo" + +[extra.author] +name = "not-matthias" +homepage = "https://github.com/not-matthias" ++++ + +# apollo + +Modern and minimalistic blog theme powered by [Zola](getzola.org). See a live preview [here](https://not-matthias.github.io/apollo). + +Named after the greek god of knowledge, wisdom and intellect + +
+ Dark theme + + ![blog-dark](https://user-images.githubusercontent.com/26800596/168986771-4ed049e2-e123-4d0e-8a24-7bf43f47551f.png) +
+ +
+ Light theme + +![blog-light](https://user-images.githubusercontent.com/26800596/168986766-72a48517-7122-465d-8108-3ae33e1e88b1.png) +
+ +## Features + +- [X] Pagination +- [X] Themes (light, dark, auto) +- [X] Analytics using [GoatCounter](https://www.goatcounter.com/) +- [ ] Social Links +- [ ] Search +- [ ] Categories + +## Installation + +1. Download the theme +``` +git submodule add https://github.com/not-matthias/apollo themes/apollo +``` + +2. Add `theme = "apollo"` to your `config.toml` +3. Copy the example content + +``` +cp themes/apollo/content content +``` + +## Options + +### Additional stylesheets + +You can add stylesheets to override the theme: + +```toml +[extra] +stylesheets = [ + "override.css", + "something_else.css" +] +``` + +These filenames are relative to the root of the site. In this example, the two CSS files would be in the `static` folder. + +## References + +This theme is based on [archie-zola](https://github.com/XXXMrG/archie-zola/). + + \ No newline at end of file diff --git a/docs/content/themes/apollo/screenshot.png b/docs/content/themes/apollo/screenshot.png new file mode 100644 index 0000000000..37b0b92261 Binary files /dev/null and b/docs/content/themes/apollo/screenshot.png differ diff --git a/docs/content/themes/archie-zola/index.md b/docs/content/themes/archie-zola/index.md new file mode 100644 index 0000000000..8eac567e29 --- /dev/null +++ b/docs/content/themes/archie-zola/index.md @@ -0,0 +1,164 @@ + ++++ +title = "archie-zola" +description = "A zola theme based on Hugo archie." +template = "theme.html" +date = 2022-06-03T14:22:50-07:00 + +[extra] +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 +repository = "https://github.com/XXXMrG/archie-zola.git" +homepage = "https://github.com/XXXMrG/archie-zola" +minimum_version = "0.14.0" +license = "MIT" +demo = "https://archie-zola.vercel.app/" + +[extra.author] +name = "Keith" +homepage = "https://github.com/XXXMrG" ++++ + +# archie-zola + + +A zola theme forked from [https://github.com/athul/archie](https://github.com/athul/archie) + +## Demo + + +The Main branch source code hosted on [https://archie-zola.vercel.app](https://archie-zola.vercel.app) + +### ScreenShot + +![screenshot-light](https://archie-zola.vercel.app/screenshot/screenshot-light.png) + +![screenshot-dark](https://archie-zola.vercel.app/screenshot/screenshot-dark.png) + + +## Installation + + +First download this theme to your themes directory: + +```bash +cd themes +git clone https://github.com/XXXMrG/archie-zola.git +``` + +or add as a git submodule: + +```bash +git submodule add https://github.com/XXXMrG/archie-zola.git themes/archie-zola +``` + +and then enable it in your config.toml: +```toml +theme = "archie-zola" +``` + +## Feature + +* Pagination +* Tags +* Auto Dark Mode(based on system theme) +* Dark/Light Mode toggle +* Google Analytics Script + +in the planning stage: + +- [ ] Custom CSS & JS +- [ ] Twitter Cards & Youtube video + + +## Config + + +### Theme config + +Cause Zola limited custom config must under the `extra` field, so there are some different with the origin theme: + +Demo website config.toml: + +```toml +# control dark mode: auto | dark | toggle +mode = "toggle" + +# subtitle will show under the title in index page +subtitle = "A zola theme forked from [archie](https://github.com/athul/archie)" + +# if set true, will use external CDN resource to load font and js file +useCDN = false + +favicon = "/icon/favicon.png" + +# show in the footer +copyright = "keith" + +# config your Google Analysis ID +ga = "XXXX-XXXXX" + + +# config menu path +[[extra.menu]] +name = "Home" +url = "/" +weight = 1 + +[[extra.menu]] +name = "All posts" +url = "/posts" +weight = 2 + +[[extra.menu]] +name = "About" +url = "/about" +weight = 3 + +[[extra.menu]] +name = "Tags" +url = "/tags" +weight = 4 + +# config social icon info in the footer +[[extra.social]] +icon = "github" +name = "GitHub" +url = "https://github.com/XXXMrG/archie-zola" + +[[extra.social]] +icon = "twitter" +name = "Twitter" +url = "https://github.com/your-name/" + +[[extra.social]] +icon = "gitlab" +name = "GitLab" +url = "https://gitlab.com/your-name/" + +``` + +### Content config + +**In content/posts/_index.md. I use Zola config: transparent = true to implement the pagination** + +In Zola, you can use config in the _index.md to control pagination and sort post list: + +```toml +paginate_by = 3 +sort_by = "date" +``` + +## Extension + +Follow this [doc](https://www.getzola.org/documentation/themes/extending-a-theme/) to extend theme. + +## Contributing + +Thank you very much for considering contributing to this project! + +We appreciate any form of contribution: + +* New issues (feature requests, bug reports, questions, ideas, ...) +* Pull requests (documentation improvements, code improvements, new features, ...) + \ No newline at end of file diff --git a/docs/content/themes/archie-zola/screenshot.png b/docs/content/themes/archie-zola/screenshot.png new file mode 100644 index 0000000000..32f1875739 Binary files /dev/null and b/docs/content/themes/archie-zola/screenshot.png differ diff --git a/docs/content/themes/blow/index.md b/docs/content/themes/blow/index.md index 83818a796f..458afacf11 100644 --- a/docs/content/themes/blow/index.md +++ b/docs/content/themes/blow/index.md @@ -3,11 +3,11 @@ title = "Blow" description = "A Zola theme made with Tailwindcss" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 repository = "https://github.com/tchartron/blow.git" homepage = "https://github.com/tchartron/blow" minimum_version = "0.9.0" @@ -94,10 +94,12 @@ items = [ [extra.index] title = "Main title" image = "https://via.placeholder.com/200" +image_alt = "Placeholder text describing the index's image." [extra.default_author] name = "John Doe" avatar = "https://via.placeholder.com/200" +avatar_alt = "Placeholder text describing the default author's avatar." [extra.social] github = "https://github.com/johndoe" diff --git a/docs/content/themes/book/index.md b/docs/content/themes/book/index.md index 8d94e1a9ea..254ef92cd8 100644 --- a/docs/content/themes/book/index.md +++ b/docs/content/themes/book/index.md @@ -3,11 +3,11 @@ title = "book" description = "A book theme inspired from GitBook/mdBook" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 repository = "https://github.com/getzola/book.git" homepage = "https://github.com/getzola/book" minimum_version = "0.5.0" diff --git a/docs/content/themes/clean-blog/index.md b/docs/content/themes/clean-blog/index.md index ebeeb17cc0..caf1a8cfd8 100644 --- a/docs/content/themes/clean-blog/index.md +++ b/docs/content/themes/clean-blog/index.md @@ -3,12 +3,12 @@ title = "Clean Blog" description = "A port of Start Bootstrap Clean Blog for Zola" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 -repository = "https://github.com/dave-tucker/zola-clean-blog" +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07: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" license = "MIT" diff --git a/docs/content/themes/codinfox-zola/index.md b/docs/content/themes/codinfox-zola/index.md index 31c866d8bd..96dd21aaae 100644 --- a/docs/content/themes/codinfox-zola/index.md +++ b/docs/content/themes/codinfox-zola/index.md @@ -3,12 +3,12 @@ title = "codinfox-zola" description = "Codinfox theme for Zola" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 -repository = "https://github.com/svavs/codinfox-zola" +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 +repository = "https://github.com/svavs/codinfox-zola.git" homepage = "https://github.com/svavs/codinfox-zola" minimum_version = "0.11.0" license = "MIT" diff --git a/docs/content/themes/d3c3nt/index.md b/docs/content/themes/d3c3nt/index.md new file mode 100644 index 0000000000..73ea69a2aa --- /dev/null +++ b/docs/content/themes/d3c3nt/index.md @@ -0,0 +1,62 @@ + ++++ +title = "d3c3nt" +description = "A simple, clean, and flexible theme for personal sites." +template = "theme.html" +date = 2022-06-03T14:22:50-07:00 + +[extra] +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 +repository = "https://git.figbert.com/FIGBERT/d3c3nt.git" +homepage = "https://git.figbert.com/figbert/d3c3nt" +minimum_version = "0.15.0" +license = "GPLv3" +demo = "https://d3c3nt.figbert.com" + +[extra.author] +name = "FIGBERT" +homepage = "https://figbert.com" ++++ + +# d3c3nt + +d3c3nt is a simple, clean, and flexible theme for personal sites, made +by [FIGBERT] for the [Zola static site engine][zola]. This theme is +developed mainly for use on my personal site, so new features and styles +will be added when I stumble onto the need to make them. + +All in all, it's fairly... decent. + +## installation + +To use d3c3nt in your own site, you have to add it to your `themes` +directory. You can do this in a variety of ways, but I recommend adding +it as a git submodule: + +``` +$ cd themes/ +$ git submodule add https://git.figbert.com/FIGBERT/d3c3nt.git +``` + +After installing the theme, set the top-level `theme` variable to +`"d3c3nt"` in your `config.toml`. + +For more information about Zola themes in general, check out Zola's +[official site][zola-docs]. To find out more about d3c3nt's features and +configuration, head over to the [project's docs][docs]. + +## whoami + +To learn more about me, feel free to check out [my website][FIGBERT] and +subscribe via the [Atom feed][atom]. You can contact me via email at: +[figbert+d3c3nt@figbert.com][email]. + +[FIGBERT]: https://figbert.com/ +[zola]: https://getzola.org/ +[zola-docs]: https://www.getzola.org/documentation/themes/overview/ +[docs]: https://d3c3nt.figbert.com/config/ +[atom]: https://figbert.com/atom.xml +[email]: mailto:figbert+d3c3nt@figbert.com + + \ No newline at end of file diff --git a/docs/content/themes/d3c3nt/screenshot.png b/docs/content/themes/d3c3nt/screenshot.png new file mode 100644 index 0000000000..28ee279d2b Binary files /dev/null and b/docs/content/themes/d3c3nt/screenshot.png differ diff --git a/docs/content/themes/dinkleberg/index.md b/docs/content/themes/dinkleberg/index.md index 9b010703f3..4e267e9642 100644 --- a/docs/content/themes/dinkleberg/index.md +++ b/docs/content/themes/dinkleberg/index.md @@ -3,11 +3,11 @@ title = "dinkleberg" description = "The Rust BR theme for Gutenberg" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 repository = "https://github.com/rust-br/dinkleberg.git" homepage = "https://github.com/rust-br/dinkleberg" minimum_version = "0.4.0" diff --git a/docs/content/themes/docsascode-theme/index.md b/docs/content/themes/docsascode-theme/index.md index fbba04efd1..52efa09b95 100644 --- a/docs/content/themes/docsascode-theme/index.md +++ b/docs/content/themes/docsascode-theme/index.md @@ -3,11 +3,11 @@ title = "Docsascode_theme" description = "A modern simple Zola's theme related to docs as code methodology" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 repository = "https://github.com/codeandmedia/zola_docsascode_theme.git" homepage = "https://github.com/codeandmedia/zola_docsascode_theme" minimum_version = "0.10.0" diff --git a/docs/content/themes/dose/index.md b/docs/content/themes/dose/index.md index 7c00c04549..25f1bf2c8f 100644 --- a/docs/content/themes/dose/index.md +++ b/docs/content/themes/dose/index.md @@ -3,11 +3,11 @@ title = "dose" description = "a small blog theme" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 repository = "https://github.com/oltdaniel/dose.git" homepage = "https://github.com/oltdaniel/dose" minimum_version = "0.14.0" diff --git a/docs/content/themes/emily/index.md b/docs/content/themes/emily/index.md new file mode 100644 index 0000000000..bc208be36b --- /dev/null +++ b/docs/content/themes/emily/index.md @@ -0,0 +1,75 @@ + ++++ +title = "emily_zola_theme" +description = "a KISS theme for Zola" +template = "theme.html" +date = 2022-06-03T14:22:50-07:00 + +[extra] +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 +repository = "https://github.com/kyoheiu/emily_zola_theme.git" +homepage = "https://github.com/kyoheiu/emily_zola_theme" +minimum_version = "0.14.1" +license = "MIT" +demo = "https://emily-zola-theme.netlify.app/" + +[extra.author] +name = "Kyohei Uto" +homepage = "https://github.com/kyoheiu" ++++ + +# emily_zola_theme + +![screenshot01](static/images/ss01.png) + + +A KISS theme for Zola (static site generator written in Rust). + +Features: +- simple & clean +- mobile-friendly +- MathJax support + +Demo site is [here](https://emily-zola-theme.netlify.app/). + +## Usage + +``` +cd YOUR_SITE_DIRECTORY/themes +git clone https://github.com/kyoheiu/emily_zola_theme.git +``` + +and set the theme-name in `config.toml` to `emily_zola_theme`. + +``` +theme = "emily_zola_theme" +``` + +## example articles + +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: + +``` +[extra] +math = true +``` + +## How to customize +In addition to default values, you can customize following parts easily: + +- author name (appears in footer) +- header icon (appears in header) +- favicon +- header icon size (default width: 70px) +- number of posts in `index.html` (default 5) + +Set your own in `themes/emily_zola_theme/theme.toml`, or to overwrite, copy `[extra]` block, paste it into your `config.toml` and edit. + + \ No newline at end of file diff --git a/docs/content/themes/emily/screenshot.png b/docs/content/themes/emily/screenshot.png new file mode 100644 index 0000000000..3bfbb7d84c Binary files /dev/null and b/docs/content/themes/emily/screenshot.png differ diff --git a/docs/content/themes/even/index.md b/docs/content/themes/even/index.md index 54cd56ab2e..2eef9e6ec3 100644 --- a/docs/content/themes/even/index.md +++ b/docs/content/themes/even/index.md @@ -3,11 +3,11 @@ title = "even" description = "A robust, elegant dark theme" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 repository = "https://github.com/getzola/even.git" homepage = "https://github.com/getzola/even" minimum_version = "0.11.0" diff --git a/docs/content/themes/feather/index.md b/docs/content/themes/feather/index.md index 539b195f2e..e0b5d4c41c 100644 --- a/docs/content/themes/feather/index.md +++ b/docs/content/themes/feather/index.md @@ -3,20 +3,20 @@ title = "feather" description = "A modern blog theme" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 -repository = "https://github.com/piedoom/feather" +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 +repository = "https://github.com/piedoom/feather.git" homepage = "https://github.com/piedoom/feather" -minimum_version = "0.5.1" +minimum_version = "0.11.0" license = "MIT" demo = "" [extra.author] name = "doomy" -homepage = "https://alexanderlozada.com" +homepage = "https://doomy.org" +++ # feather diff --git a/docs/content/themes/float/index.md b/docs/content/themes/float/index.md index 5fbf70222d..bcbcf8cff1 100644 --- a/docs/content/themes/float/index.md +++ b/docs/content/themes/float/index.md @@ -3,20 +3,20 @@ title = "Float" description = "An elegant blog theme" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 repository = "https://gitlab.com/float-theme/float.git" homepage = "https://float-theme.netlify.app/" -minimum_version = "0.11.0" +minimum_version = "0.15.3" license = "MIT" demo = "" [extra.author] name = "Leon" -homepage = "https://exp2.uniuni.space/" +homepage = "https://editor.leonh.space/" +++ ![Float](content/blog/2020/2020-06-14-Float theme for Zola/Float.png) @@ -46,19 +46,20 @@ Float 是一款為 [Zola](https://www.getzola.org/) 設計的佈景主題。 在您的 Zola 專案資料夾內: 把 Float 以 Git 子模組的方式加入專案內: -```shell + +```sh git submodule add https://gitlab.com/float-theme/float.git themes/float ``` 編輯您的 config.toml,指定 Float 作為佈景主題: -```TOML +```toml theme = "float" ``` 編輯您的 config.toml,加入 tags 作為分類系統: -```TOML +```toml taxonomies = [ {name = "tags", paginate_by = 10}, ] @@ -66,13 +67,13 @@ taxonomies = [ 複製 float/static/ 的所有子資料夾與檔案到您的 static/: -```shell +```sh cp -r themes/float/static/* static/ ``` 複製 float/content/ 的所有子資料夾與檔案到您的 content/: -```shell +```sh cp -r themes/float/content/* content/ ``` @@ -86,7 +87,7 @@ cp -r themes/float/content/* content/ content/ └── blog/ └── 2020/ - └── 2020-06-21-Float theme for Zola/ + └── 2020-06-15-Zola-Theme-Float/ ├── index.md ├── pic1.png ├── pic2.png @@ -99,7 +100,7 @@ content/ Front-matter 請參照下列註解說明: -```TOML +```toml title = "Float theme for Zola" description = "Float features and usage guide" draft = false @@ -115,7 +116,7 @@ link = "" # 指定卡片連結,若有指定則卡片不會連結到文章頁 可客製化設定大多可以在 config.toml 的 `[extra]` 區段做設定: -```TOML +```toml [extra] main_section = "blog" diff --git a/docs/content/themes/hallo/index.md b/docs/content/themes/hallo/index.md index 4f2e480e30..7289a4afc8 100644 --- a/docs/content/themes/hallo/index.md +++ b/docs/content/themes/hallo/index.md @@ -3,11 +3,11 @@ title = "hallo" description = "A single-page theme to introduce yourself." template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 repository = "https://github.com/flyingP0tat0/zola-hallo.git" homepage = "https://github.com/janbaudisch/zola-hallo" minimum_version = "0.4.0" diff --git a/docs/content/themes/hephaestus/index.md b/docs/content/themes/hephaestus/index.md new file mode 100644 index 0000000000..664ffe0547 --- /dev/null +++ b/docs/content/themes/hephaestus/index.md @@ -0,0 +1,148 @@ + ++++ +title = "hephaestus" +description = "A portfolio theme" +template = "theme.html" +date = 2022-06-03T14:22:50-07:00 + +[extra] +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 +repository = "https://github.com/BConquest/hephaestus.git" +homepage = "https://github.com/BConquest/hephaestus" +minimum_version = "0.4.0" +license = "AGPL" +demo = "https://bryantconquest.com" + +[extra.author] +name = "Bryant Conquest" +homepage = "https://bryantconquest.com" ++++ + +# hephaestus +Hephaestus is a portfolio theme for zola. It uses bulma css and supports using icons from ion-icon. + +![hephaestus screenshot](screenshot.png?raw=true) + +## Contents +- [Installation](#installation) +- [Options](#options) + - [Navigation Bar](#navigation-bar) + - [Education](#education) + - [Projects](#projects) + - [Skills](#skills) + - [Social Links](#social-links) + +## Installation + +First, you will download the theme into your `themes` directory: + +```bash +$ cd themes +$ git clone https://github.com/BConquest/hephaestus +``` + +Second, you will enable the theme in your `config.toml` directory: + +```toml +theme = "hephaestus" +``` + +## Options +### Navigation Bar +To edit the navigation bar you will need to edit your `config.toml` to include: + +```toml +menu = [ +{ text = "foo", link = "/foo"}, +{ text = "bar", link = "/bar"}, +] +``` +You can have as many items as you want to have and the links can be to anything. + +### Education +To edit the education that is displayed you will need to create a directory in `content`. +In the `_index.md` the frontmatter needs to include: + +```TOML +title = "foo" +template = "education.html" + +[extra] +author = "Name" +``` + +For every educational level you want to add you will need to create a new markdown file that includes the frontmatter: + +``` +title = "place of education" + +[extra] +image = "image-location" +link = "link to school" ++++ +``` + +Any content that is typed will be rendered underneath these two items. + +### Projects +To edit the projects that are displayed you will need to create a directory in `content`. +In the `_index.md` the frontmatter needs to include: + +```TOML +title = "foo" +template = "projects.html" + +[extra] +author = "bar" +``` + +Then for every project you want to add you will need to format the `*.md` as: + +```md ++++ +title = "foo" + +[extra] +image = "/image_location" +link = "link to project" +technologies = ["bar", "baz"] ++++ + +Description of project named foo. +``` + +### Skills + +To edit the skills that you want to display it is important to note that there are two types of skills that can be +displayed (lan, and tools). To format the look you will need to create a directory in `content` that includes the +frontmatter of: + +```TOML +title = "foo" +template = "skills.html" +page_template = "skills.html" + +[extra] +author = "author-name" +image = "image-location" + +lan = [ +{ lang = "language", expr = "num between 1-5", image = "image-location", comfort = "word to describe comfort"}, +] + +tools = [ +{ tool = "tool-name", expr = "num between 1-5", image = "tool-image"}, +] +``` + +### Social Links +To edit the social links that appear in the footer of the page, you need to edit your `config.toml` to include: + +``` +social = [ +{ user = "username", link = "link", icon = "icon-name from ion-icon"}, +] +``` + + \ No newline at end of file diff --git a/docs/content/themes/hephaestus/screenshot.png b/docs/content/themes/hephaestus/screenshot.png new file mode 100644 index 0000000000..f05cff55f0 Binary files /dev/null and b/docs/content/themes/hephaestus/screenshot.png differ diff --git a/docs/content/themes/hermit/index.md b/docs/content/themes/hermit/index.md new file mode 100644 index 0000000000..e4d1e18d71 --- /dev/null +++ b/docs/content/themes/hermit/index.md @@ -0,0 +1,105 @@ + ++++ +title = "Hermit_Zola" +description = "Minimal Zola theme" +template = "theme.html" +date = 2022-06-03T14:22:50-07:00 + +[extra] +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 +repository = "https://github.com/VersBinarii/hermit_zola.git" +homepage = "https://github.com/VersBinarii/hermit_zola" +minimum_version = "0.4.0" +license = "MIT" +demo = "https://versbinarii.gitlab.io/blog/" + +[extra.author] +name = "VersBinarii" +homepage = "https://versbinarii.gitlab.io/blog/" ++++ + +[![Build Status](https://travis-ci.org/VersBinarii/hermit_zola.svg?branch=master)](https://travis-ci.org/VersBinarii/hermit_zola) + +# Hermit + +> this is a port of the [Hermit theme](https://github.com/Track3/hermit) for [Zola](https://www.getzola.org/) + +Hermit is a minimal & fast Zola theme for bloggers. + +![screenshot](screenshot.png) + +[View demo](https://versbinarii.gitlab.io/blog/) + +## Installation + +First download the theme to your `themes` directory: + +```bash +$ cd themes +$ git clone https://github.com/VersBinarii/hermit_zola +``` +and then enable it in your `config.toml`: + +```toml +theme = "hermit_zola" +``` + +## Configuration + +```toml +[extra] +home_subtitle = "Some profound and catchy statement" + +footer_copyright = ' · CC BY-NC 4.0' + +hermit_menu = [ + { link = "/posts", name = "Posts" }, + { link = "/about", name = "About" } +] + +hermit_social = [ + { name = "twitter", link = "https://twitter.com" }, + { name = "github", link = "https://github.com" }, + { name = "email", link = "mailto:author@domain.com" } +] + + + +[extra.highlightjs] +enable = true +clipboard = true +theme = "vs2015" + +[extra.disqus] +enable = false +# Take this from your Disqus account +shortname = "my-supa-dupa-blog" + +[extra.author] +name = "The Author" +email = "author@domain.com" + +[extra.google_analytics] +enable = false +id = "UA-4XXXXXXX-X" +``` + +### Table of content +Table of content can be enabled by adding +``` ++++ +[extra] +toc=true ++++ +``` +to the page front matter. Icon will then appear above the page title that will +allow to toggle the ToC. + +## License + +[MIT](LICENSE) + +Thanks to [Track3](https://github.com/Track3) for creating the original! + + \ No newline at end of file diff --git a/docs/content/themes/hermit/screenshot.png b/docs/content/themes/hermit/screenshot.png new file mode 100644 index 0000000000..cfe7e726ff Binary files /dev/null and b/docs/content/themes/hermit/screenshot.png differ diff --git a/docs/content/themes/hook/index.md b/docs/content/themes/hook/index.md index 9cc3f0315e..23dbbb6500 100644 --- a/docs/content/themes/hook/index.md +++ b/docs/content/themes/hook/index.md @@ -3,11 +3,11 @@ title = "Hook" description = "Clean and simple personal site/blog theme" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 repository = "https://github.com/InputUsername/zola-hook.git" homepage = "https://github.com/InputUsername/zola-hook" minimum_version = "0.15.2" @@ -48,10 +48,14 @@ The following templates are built-in: Templates have the following Tera blocks: - `title` - to override the default `` (`config.title`); +- `description` - to override the `<meta name="description">`'s content (`config.description`); - `extra_head` - to override styles and anything else in `<head>`; - `header` - to change the header (best to put this in a `<header>`); - `content` - to change the content (best to put this in a `<main>`). +You can set a section or page description using `description` in your front matter. +By default, the `description` in `config.toml` is used. + You can define links to include in the header on the homepage in `config.toml`: ```toml [extra] diff --git a/docs/content/themes/hook/screenshot.png b/docs/content/themes/hook/screenshot.png index c1e25a0deb..8cb1eb7235 100644 Binary files a/docs/content/themes/hook/screenshot.png and b/docs/content/themes/hook/screenshot.png differ diff --git a/docs/content/themes/hyde/index.md b/docs/content/themes/hyde/index.md index f566f3d2a2..c431ece742 100644 --- a/docs/content/themes/hyde/index.md +++ b/docs/content/themes/hyde/index.md @@ -3,11 +3,11 @@ title = "hyde" description = "A classic blog theme" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 repository = "https://github.com/getzola/hyde.git" homepage = "https://github.com/getzola/hyde" minimum_version = "0.11.0" diff --git a/docs/content/themes/juice/index.md b/docs/content/themes/juice/index.md index 17d6e08bee..ceb5320d45 100644 --- a/docs/content/themes/juice/index.md +++ b/docs/content/themes/juice/index.md @@ -3,12 +3,12 @@ title = "juice" description = "An intuitive, elegant, and lightweight Zola theme for product sites." template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 -repository = "https://github.com/huhu/juice" +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 +repository = "https://github.com/huhu/juice.git" homepage = "https://github.com/huhu/juice" minimum_version = "0.11.0" license = "MIT" diff --git a/docs/content/themes/kangae/index.md b/docs/content/themes/kangae/index.md new file mode 100644 index 0000000000..f66a90c2e3 --- /dev/null +++ b/docs/content/themes/kangae/index.md @@ -0,0 +1,215 @@ + ++++ +title = "kangae" +description = "a lightweight microblog theme for zola" +template = "theme.html" +date = 2022-06-03T14:22:50-07:00 + +[extra] +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 +repository = "https://github.com/ayushnix/kangae.git" +homepage = "https://github.com/ayushnix/kangae" +minimum_version = "0.15.0" +license = "NCSA" +demo = "" + +[extra.author] +name = "Ayush Agarwal" +homepage = "https://microblog.ayushnix.com" ++++ + +# kangae (考え, idea or thought) + +[kangae][1] is a lightweight microblog theme for [zola][2]. + +<details> + <summary>kangae screenshots on desktop and mobile</summary> + + ![kangae screenshot light mode on desktop](static/images/kangae-desktop-light.webp) + ![kangae screenshot dark mode on desktop](static/images/kangae-desktop-dark.webp) + ![kangae screenshot light mode on mobile](static/images/kangae-mobile-light.webp) + ![kangae screenshot dark mode on mobile](static/images/kangae-mobile-dark.webp) +</details> + +I've created kangae from scratch and it is not based on any other theme. However, I was inspired to +create kangae after I came across [Wolfgang Müller's microblog][3]. Thanks Wolf! + +kangae is licensed under the [NCSA license][5], which is quite similar to the BSD-3-Clause license. +Unlike BSD-3-Clause, NCSA also covers documentation of a project. + +# Showcase + +Here's a list of websites using the kangae theme + +- [ayushnix microblog][4] + +If you want to mention your website in this section, please raise a pull request. + +# Installation + +Before using this theme, [install zola][6]. After you've installed zola, + +``` +$ zola init microblog +> What is the URL of your site? (https://example.com): +> Do you want to enable Sass compilation? [Y/n]: +> Do you want to enable syntax highlighting? [y/N]: +> Do you want to build a search index of the content? [y/N]: +$ cd microblog/ +``` + +kangae doesn't use Sass or syntax highlighting so if you don't want to use custom Sass code or +enable syntax highlighting, answer the 2nd and 3rd question with a 'no'. kangae also doesn't use any +JavaScript library to search content. If you don't intend to install a JavaScript library to enable +search on your microblog, answer 'no' to the last question as well. + +If you intend to publish your microblog on a forge like GitHub, initialize an empty git repository +using + +``` +$ git init +$ git commit --allow-empty -m 'initial empty root commit' +``` + +If you don't want to make an empty commit, add and commit a README or a LICENSE file instead. + +At this point, you can install kangae using one of the following methods + +## using `git subtree` + +``` +$ git subtree add -P themes/kangae/ --squash https://github.com/ayushnix/kangae.git master +``` + +## using `git submodule` + +``` +$ git submodule add https://github.com/ayushnix/kangae.git themes/kangae +``` + +## download kangae in themes directory + +If you want to keep things simple and figure out version control later, you can + +``` +$ git clone https://github.com/ayushnix/kangae.git themes/kangae +``` + +# Configuration + +To begin using kangae after installing it, + +``` +$ cp themes/kangae/config.toml ./ +$ sed -i 's;# theme =\(.*\);theme =\1;' config.toml +``` + +The [`config.toml`][7] file of kangae has been documented carefully using TOML comments. If you have +any questions about configuring kangae which haven't been answered in the `config.toml` file itself, +please [raise an issue][8]. + +## Shortcodes + +kangae provides several shortcodes that can be used to add content in an accessible manner + +### kaomoji `(・_・)ノ` + +If you want to use kaomoji in your posts, you can use insert them in an accessbile manner using + +``` +I don't know. {{/* kaomoji(label="shrug kaomoji", text="╮( ˘_˘ )╭") */}} I've never thought about it. +``` + +Providing a value for the `label` is optional but highly recommended. A short text should be +mentioned that explains what the kaomoji means to convey. The value of `text` should be the actual +emoticon itself. + +This shortcode can also be used for any other ASCII emoticon that can fit in an inline paragraph. +This includes western emoticons such as `;)` and combination emoticons such as `<(^_^<)`. + +### Quotes + +You can add quotes in your microblog posts using + +``` +{%/* quote(author="Nara Shikamaru") */%} +You would think just this once, when it was life or death, I could pull through. +{%/* end */%} +``` + +This is the most basic form of improvement in writing quotes over simply using `>` in markdown. + +If you want to mention the name of the source from where the quote has been taken, such as the name +of the book or a movie, you can use + +``` +{%/* quote(citation="Mass Effect 3", author="Javik") */%} +Stand in the ashes of a trillion dead souls, and ask the ghosts if honor matters. The silence is your answer. +{%/* end */%} +``` + +A `citeurl` can also be given as an argument to this shortcode to provide the actual URL from where +the source is borrowed. + +``` +{%/* quote(author="Edward Snowden", citeurl="https://old.reddit.com/r/IAmA/comments/36ru89/just_days_left_to_kill_mass_surveillance_under/crglgh2/")*/%} +Arguing that you don't care about the right to privacy because you have nothing to hide is no different than saying you don't care about free speech because you have nothing to say. +{%/* end */%} +``` + +A live preview of these how these shortcodes look like can be found on [this blog post][14]. + +## Optional Features + +kangae includes some optional features that aren't enabled by default + +- [style external links using a ↗ unicode symbol][11] + +# Donate + +If you found kangae helpful in creating your own microblog website, please consider supporting me by +buying me a coffee :coffee: + +<a href='https://www.buymeacoffee.com/ayushnix' target='_blank' rel="noopener"><img src='https://cdn.buymeacoffee.com/buttons/default-blue.png' alt='buy ayushnix a coffee at buymeacoffee.com' border='0' height='36'></a> +<a href='https://ko-fi.com/O5O64SQ4C' target='_blank' rel="noopener"><img src='https://cdn.ko-fi.com/cdn/kofi1.png?v=2' alt='buy ayusnix a coffee at ko-fi.com' border='0' height='36'></a> + +If you're in India, you can also use UPI for donations. My UPI address is `ayushnix@ybl`. + +# Notes + +I'm not really a web developer and I don't intend to be one either. However, I am interested in +learning HTML and CSS to create lightweight textual websites. You may be interested in reading [my +log about how I learned HTML and CSS][12]. However, that page is just an unorganized dump of my +thoughts and isn't a polished blog post. [Seirdy's blog post on creating textual websites][13] is +probably a better reference. + +# TODO (maybe?) + +- (responsive) image shortcodes +- run prettier on HTML and CSS before deployment +- twitter and mastodon shortcodes +- add optional support for cross posting and commenting on mastodon without using JS +- add optional support for [giscus][9] and [loading mastodon comments][10] +- add shortcode for asciinema +- add shortcode for blockquote and citation +- pagination +- light and dark mode switch +- content tabs + +[1]: https://kangae.ayushnix.com/ +[2]: https://www.getzola.org/ +[3]: https://zunzuncito.oriole.systems/ +[4]: https://microblog.ayushnix.com +[5]: LICENSE +[6]: https://www.getzola.org/documentation/getting-started/installation/ +[7]: config.toml +[8]: https://github.com/ayushnix/kangae/issues/new +[9]: https://giscus.app/ +[10]: https://carlschwan.eu/2020/12/29/adding-comments-to-your-static-blog-with-mastodon/ +[11]: https://github.com/ayushnix/kangae/blob/master/static/css/style-external-links.css +[12]: https://wiki.ayushnix.com/frontend/creating-a-website/ +[13]: https://seirdy.one/2020/11/23/website-best-practices.html +[14]: https://kangae.ayushnix.com/being-shikamaru-102/ + + \ No newline at end of file diff --git a/docs/content/themes/kangae/screenshot.png b/docs/content/themes/kangae/screenshot.png new file mode 100644 index 0000000000..e8faabaa16 Binary files /dev/null and b/docs/content/themes/kangae/screenshot.png differ diff --git a/docs/content/themes/karzok/index.md b/docs/content/themes/karzok/index.md index d4c0394d58..d1b1ab03a4 100644 --- a/docs/content/themes/karzok/index.md +++ b/docs/content/themes/karzok/index.md @@ -1,18 +1,18 @@ +++ title = "karzok" -description = "A theme for your documentation. Fast and secure" +description = "The theme for launching fast documentation sites" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 -repository = "https://github.com/kogeletey/karzok" +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 +repository = "https://github.com/kogeletey/karzok.git" homepage = "https://github.com/kogeletey/karzok" -minimum_version = "0.0.14" -license = "Apache-2.0" -demo = "https://fmatch.org/karzok" +minimum_version = "0.15.0" +license = "MIT" +demo = "https://karzok.re128.org" [extra.author] name = "Konrad Geletey" @@ -20,8 +20,11 @@ homepage = "" +++ <p align="center"> - <a href="https://builds.sr.ht/~kogeletey/karzok"><img src="https://builds.sr.ht/~kogeletey/karzok.svg" alt="builds.sr.ht status" /></a> - <a href="https://design.penpot.app/#/view/b4a9c170-5cb6-11ec-826f-e949c75b760d?page-id=ef8611e1-7c24-11eb-89c7-03f8ac143bbf&index=0&share-id=d81024f0-5cb7-11ec-826f-e949c75b760d"><img alt="designed with penpot" src="https://badgen.net/badge/designed%20with/penpot/31EFB8" /></a> + <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/actions"><img src="https://github.com/kogeletey/karzok/actions/workflows/badge.svg" alt="github workflows action 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://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> # Karzok @@ -32,7 +35,7 @@ A theme for your documentation. Fast and secure ## Demo -[Fmatch Karzok](https://fmatch.org/karzok) +[Karzok](https://karzok.re128.org) ## Requirements @@ -42,17 +45,14 @@ Karzok uses npm,zola to dependency managment,rendering, scripts and plugins. 1. [Zola](https://www.getzola.org/documentation/getting-started/installation/) 2. [Node.js](https://nodejs.org/) +3. [rsync](https://rsync.samba.org) for your platform. ### Optional -1. [yj](https://github.com/sclevine/yj) - > for transfer toml file in yaml -2. [docker](https://docs.docker.com/engine/install/) - > for packaging container -3. [rsync](https://rsync.samba.org/) - > A better copy and move +- [docker](https://docs.docker.com/engine/install/) + > for packaging container and production ## Get Started @@ -83,7 +83,7 @@ base_url = "https://karzok.example.net" # set-up for production theme = "karzok" ``` -See more in [Karzok Configuration](#configuration) +See more in [configuration](https://karzok.re128.org/configure/) ### 4. Added new content @@ -102,7 +102,8 @@ i. development enviroment 1. Install node dependencies needed to work ```zsh -npm run gen # don't use npm install before that +npm ci +npm run gen ``` 2. Just run `zola serve` in the root path of the project @@ -118,61 +119,52 @@ ii. production enviroment - with docker -1. Build docker image +1. Write file for container -```zsh -docker build . -``` +```Dockerfile +FROM ghcr.io/kogeletey/karzok:latest AS build-stage +# or your path to image +ADD . /www +WORKDIR /www +RUN sh /www/build.sh -or if installed docker-compose +FROM nginx:stable-alpine -```zsh -docker-compose build -``` +COPY --from=build-stage /www/public /usr/share/nginx/html -2. Run containers - -```zsh -docker start -d -p 80:80 container_id +EXPOSE 80 ``` -or if installed docker-compose - +2. Run the your container ```zsh -docker-compose up -d +docker build -t <your_name_image> . &&\ +docker run -d -p 8080:8080 <your_name_image> +``` +- using gitlab-ci and gitlab-pages + +```yml +image: ghcr.io/kogeletey/karzok:latest # or change use your registry + +pages: + script: + - sh /www/build.sh + - mv /www/public public + artifacts: + paths: + - public/ ``` -Open in favorite browser [https://localhost](http://localhost) - -## Configuration - -## options under the `[extra]` - -1. `math` - rendering math formulas throught [katex](https://katex.org) -2. `favicon` - set path to favicon icon import(default `favicon`) -3. `localcdn`- if you want to store all assets on your domain, then enable this - setting -4. `cdnurl` - you can customize your url to store assets,default use - [jsdelivr](https://www.jsdelivr.com) -5. `show_word_count` - allowing you to show number of words -6. `show_reading_time`- allowing you to show reading time -7. `children`- for header nesting to work -8. `[[extra.menu]]` - the main navigation on the site -9. `[[extra.header]]` - the header navigantion for the site - -### Templates - -All pages are extend to the base.html, and you can customize them as need. +Open in favorite browser [https://localhost:8080](http://localhost:8080) ## License 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 -[Apache 2.0](https://www.apache.org/licenses/LICENSE-2.0) +[MIT](https://mit-license.org/) # Contribute -Make sure to read the [Code of Conduct](/meta/code-of-conduct) +Make sure to read the [Code of Conduct](https://karzok.re128.org/reference/code-of-conduct/) ## Find bugs and come up with features @@ -181,7 +173,7 @@ On the [todo.sr.ht](https://todo.sr.ht/~kogeletey/karzok) or ## Improve Code -The Karzok is stored in the repository at +The karzok is stored in the repository at [sr.ht](https://sr.ht/~kogeletey/karzok) and mirror [github](https://github.com/kogeletey/karzok) diff --git a/docs/content/themes/karzok/screenshot.png b/docs/content/themes/karzok/screenshot.png index a33f0c1a8e..c2944fdedf 100644 Binary files a/docs/content/themes/karzok/screenshot.png and b/docs/content/themes/karzok/screenshot.png differ diff --git a/docs/content/themes/kodama-theme/index.md b/docs/content/themes/kodama-theme/index.md new file mode 100644 index 0000000000..025fbfa10c --- /dev/null +++ b/docs/content/themes/kodama-theme/index.md @@ -0,0 +1,247 @@ + ++++ +title = "kodama" +description = "Theme insipired by wowchemy academic." +template = "theme.html" +date = 2022-06-03T14:22:50-07:00 + +[extra] +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 +repository = "https://github.com/adfaure/kodama-theme.git" +homepage = "https://github.com/adfaure/kodama-theme" +minimum_version = "0.15" +license = "MIT" +demo = "https://adfaure.github.io/kodama-theme/" + +[extra.author] +name = "Adrien Faure" +homepage = "https://adrien-faure.fr" ++++ + +# Kodama + +![Theme screenshot](./screenshot.png) +## Summary + +This theme is greatly inspired from hugo academic theme. + +First lets introduce some technical details: +- It relies on [zola](https://getzola.com). +- It has no javascript. +- The CSS is built with [tailwindcss](https://tailwindcss.com/). + - The blog articles are themed with [@tailwindcss/typography](https://tailwindcss.com/docs/typography-plugin) theme. + + +## Getting started + +The best way to get started is to follow the official [zola tutorial](https://www.getzola.org/documentation/getting-started/overview/). + +This theme can be installed as any other theme. + +``` +mkdir themes +cd themes & git clone https://github.com/adfaure/kodama-theme +``` + +and set in the `config.toml` the variable `theme` to `kodama-theme`. + +### Generate the CSS + +[Tailwindcss](https://tailwindcss.com/) is a framework that parses your html files, and generate the minimal CSS required. +This theme depends on this framework. + +The theme comes with the precompiled style files (`static/styles/styles.css`). However, if you wish to change the style, or modify the template htlm, you might need to recompile your styles. + +The most simple way, is to follow the [installation page of tailwindcss](https://tailwindcss.com/docs/installation). + +At the end, you should have tailwindcss installed, and I advise to use the following tailwind configuration: + +```js +# tailwind.config.js +module.exports = { + content: ["./templates/**/*.html", "./themes/**/*.html", "./themes/**/*.html"], + theme: {}, + variants: {}, + plugins: [ + require('@tailwindcss/typography'), + ], +}; +``` + +Create a file `styles/styles.css`, and use the following command to generate the final CSS file: + +``` +npx tailwindcss -i styles/styles.css -o static/styles/styles.css +``` + +The resulting file `static/styles/styles.css` is loaded in the html. + +*Note that, for the moment the generation of the css is not automated. As a result, it is necessary to re-run this command when changes are made with the styling.* + +## Configuration + +This theme use some extra configuration, that can be set in the extra section of your `config.toml`. + +```toml +# Title displayed in the index page +title = "Website title" + +# Use this theme +theme = "kodama-theme" + +[extra] + +# Image of your avatar displayed on the landing page +avatar = "static/img/avatar.jpg" +# Image of the favicon +favicon = "static/img/avatar.jpg" + +# Your email address showed in the contact section +email = "kodama[at]domain.com" + +# If you don't want to show your contact information in the index +contact_in_index = true + +# Additional menu items +# `Name` is what it is displayed, `path` is the url +menu_items = [ + { path = "#contacts", name = "Contact" }, +] +``` + +## Index page + +The information needed to build the index page are located in the page [front matter](https://www.getzola.org/documentation/content/page/#front-matter) of root index file (e.g `content/_index.md`). + +The available configuration options are: + +```toml +# Insert zola front matter variable such as date etc + +[extra] + +# Show a concise description of what you do below your avatar. +title = "Concise description" + +# The list of interests displayed +interests = [ + "Rainbow pony", + "Martian food", + "Quantic science" +] + +# The list of your degrees / education +[[extra.education.courses]] + course = "Latest degree" + institution = "Some acamedy" + year = 2020 + +[[extra.education.courses]] + course = "Another degree" + institution = "Here and there" + year = 2016 + +# Finally, a list of icons with a link displayed below your avatar +[[extra.avatar_icons]] + icon = "github" + link = "https://github.com/adfaure" +[[extra.avatar_icons]] + icon = "gitlab" + link = "https://gitlab.com/adfaure" +[[extra.avatar_icons]] + icon = "linkedin" + link = "https://www.linkedin.com/in/adrien-faure-9958978b/" +``` +## Contact + +The predefined contact page can be use. +The front matter extra part should contains a list of the link to show in the contacts. + +## Sections + +The section available in your website are automatically detected and displayed in the nav bar at the top of the page. +To prevent a section to be displayed in the nav bar, you can set the extra front matter option `extra.hidden_nav = false` to false. + +The section are sorted by `weight` defined in the front matter of the section. + +By default, the sections (i.e folders under `content/section_name`) have a summary showed in the index. +This is configurable in the front matter of the section (e.g `content/section_name/_index.md`). + +```toml +# The name displayed in the section summary +extra.index_title = "Recent Posts" +# Set to false to remove the section from the index +extra.index_show = true +``` + +### Blog + +The section `blog` is the most standard section. It show a list of article with things that you want to share in your website. +To use the blog template, configure the section with the following front matter: + +```toml +template = "blog.html" +page_template = "blog-page.html" +``` + +### Publications + +The section `publication` is very similar to the `blog` section however it is dedicated to show your list of scientific articles. +The articles are showed in two subcategories: Thesis and Conference / Workshop. + +To configure a publication section (e.g `content/research`) and set the following content: + +```md ++++ +title = "Research" +sort_by = "date" + +# Here the two dedicated templates +template = "publications.html" +page_template = "publication-page.html" ++++ + +## Content + +Any content will be displayed on top of the section. +``` + +Article are referenced in subdirectories of this section. +``` +tree content/research +content/research +├── _index.md +├── paper1 +│ ├── bib +│ └── index.md +└── thesis + ├── bib + ├── index.md + ├── thesis.pdf + └── thesis_slides.pdf +``` + +The bib files are automatically loaded to get information from it. However, it is also possible to add information in the front matter of the article markdown file. + +```markdown ++++ +title = "Article 1" +date = 2021-05-18 + +[extra] +type = "Conference" +authors = [ "Kodama Mononoke" ] +publication_types = "Conference paper" +featured = true +publication = "2020 IEE rainbow workshop" +url_pdf = "https://your-pdf" +url_slides = "path_to_slides" ++++ +``` + +## Icons + +The icons available in this project are stored in a dedicated macro function in `templates/macros/icons.html`. +To add a new svg, you can add a case in the `if elif .. else` of the function containing the svg copied from [heroicons](https://heroicons.com/) for instance. + \ No newline at end of file diff --git a/docs/content/themes/kodama-theme/screenshot.png b/docs/content/themes/kodama-theme/screenshot.png new file mode 100644 index 0000000000..a4f8a1c3e4 Binary files /dev/null and b/docs/content/themes/kodama-theme/screenshot.png differ diff --git a/docs/content/themes/lightspeed/index.md b/docs/content/themes/lightspeed/index.md index 7aef5b3156..0282d13c22 100644 --- a/docs/content/themes/lightspeed/index.md +++ b/docs/content/themes/lightspeed/index.md @@ -3,12 +3,12 @@ title = "lightspeed" description = "Zola theme with a perfect Lighthouse score" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 -repository = "https://github.com/carpetscheme/lightspeed" +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 +repository = "https://github.com/carpetscheme/lightspeed.git" homepage = "https://github.com/carpetscheme/lightspeed" minimum_version = "0.10.0" license = "MIT" diff --git a/docs/content/themes/nasm-theme/index.md b/docs/content/themes/nasm-theme/index.md new file mode 100644 index 0000000000..648ae22733 --- /dev/null +++ b/docs/content/themes/nasm-theme/index.md @@ -0,0 +1,110 @@ + ++++ +title = "nasm-theme" +description = "A robust, elegant blue theme" +template = "theme.html" +date = 2022-06-03T14:22:50-07:00 + +[extra] +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 +repository = "https://github.com/lucasnasm/nasm-theme.git" +homepage = "https://github.com/lucasnasm/nasm-theme" +minimum_version = "0.1.0" +license = "MIT" +demo = "https://lucasnasm.github.io" + +[extra.author] +name = "Francisco Lucas" +homepage = "https://lucasnasm.github.io" ++++ + +# nasm-theme + +## Web +![nasm-theme web](screenshot.png) + +## Mobile +![nasm-theme mobile](https://github.com/lucasnasm/nasm-theme/blob/master/screenshot-mobile.png?raw=true) + +## Contents + +- [nasm-theme](#nasm-theme) + - [Web](#web) + - [Mobile](#mobile) + - [Contents](#contents) + - [Fonts](#fonts) + - [Installation](#installation) + - [Options](#options) + - [Disqus](#disqus) + - [Top-menu](#top-menu) + - [Title](#title) + - [Original](#original) +## Fonts +Font Awesome for icons +Nunito Font +## Installation +First download this theme to your `themes` directory: + +```bash +$ git submodule add git@github.com:lucasnasm/nasm-theme.git themes/nasm-theme +``` +and then enable it in your `config.toml`: + +```toml +theme = "nasm-theme" +``` + +This theme requires your index section (`content/_index.md`) to be paginated to work: + +```toml +paginate_by = 5 +``` + +The posts should therefore be in directly under the `content` folder. + +The theme requires tags and categories taxonomies to be enabled in your `config.toml`: + +```toml +taxonomies = [ + # You can enable/disable RSS + {name = "categories", rss = true}, + {name = "tags", rss = true}, +] +``` +If you want to paginate taxonomies pages, you will need to overwrite the templates +as it only works for non-paginated taxonomies by default. + + +## Options +### Disqus +set a field `extra` with key of `disqus_username`: +```toml +disqus_username = 'username' +``` +### Top-menu +Set a field in `extra` with a key of `nasm-theme`: +Font Awesome default icons +```toml +nasm_menu = [ + {url = "$BASE_URL", name = "Home", fawesome = "fas fa-home"}, + {url = "$BASE_URL/categories", name = "Categories", fawesome = "fas fa-folder-open"}, + {url = "$BASE_URL/tags", name = "Tags", fawesome = "fas fa-tag" }, + {url = "$BASE_URL/about", name = "About", fawesome = "fas fa-user-alt" }, + +] +``` + +If you put `$BASE_URL` in a url, it will automatically be replaced by the actual +site URL. + +### Title +The site title is shown on the homepage. As it might be different from the `<title>` +element that the `title` field in the config represents, you can set the `nasm_theme_title` +instead. + +## Original +This template is based on the Zola template https://github.com/getzola/after-dark +Thanks + + \ No newline at end of file diff --git a/docs/content/themes/nasm-theme/screenshot.png b/docs/content/themes/nasm-theme/screenshot.png new file mode 100644 index 0000000000..2f32073fa0 Binary files /dev/null and b/docs/content/themes/nasm-theme/screenshot.png differ diff --git a/docs/content/themes/ntun/index.md b/docs/content/themes/ntun/index.md index 1cb5806a80..9b40f4e156 100644 --- a/docs/content/themes/ntun/index.md +++ b/docs/content/themes/ntun/index.md @@ -3,12 +3,12 @@ title = "ntun-zola-theme" description = "A classic resume theme" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 -repository = "https://github.com/Netoun/ntun" +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 +repository = "https://github.com/Netoun/ntun.git" homepage = "https://github.com/netoun/ntun" minimum_version = "0.1.0" license = "MIT" diff --git a/docs/content/themes/oceanic-zen/index.md b/docs/content/themes/oceanic-zen/index.md index a670f5c85f..86dfb7b80b 100644 --- a/docs/content/themes/oceanic-zen/index.md +++ b/docs/content/themes/oceanic-zen/index.md @@ -3,11 +3,11 @@ title = "Oceanic Zen" description = "Minimalistic blog theme" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 repository = "https://github.com/barlog-m/oceanic-zen.git" homepage = "https://github.com/barlog-m/oceanic-zen" minimum_version = "0.12.0" diff --git a/docs/content/themes/papaya/index.md b/docs/content/themes/papaya/index.md index d53e9b4d3e..5e8f8109fc 100644 --- a/docs/content/themes/papaya/index.md +++ b/docs/content/themes/papaya/index.md @@ -3,11 +3,11 @@ title = "Papaya" description = "A clean Zola theme for blogging and projects" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 repository = "https://github.com/justint/papaya.git" homepage = "https://github.com/justint/papaya" minimum_version = "0.14.0" diff --git a/docs/content/themes/particle/index.md b/docs/content/themes/particle/index.md new file mode 100644 index 0000000000..cb1ba81445 --- /dev/null +++ b/docs/content/themes/particle/index.md @@ -0,0 +1,88 @@ + ++++ +title = "particle" +description = "Particle theme for Zola" +template = "theme.html" +date = 2022-06-03T14:22:50-07:00 + +[extra] +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 +repository = "https://github.com/svavs/particle-zola.git" +homepage = "https://github.com/svavs/particle" +minimum_version = "0.11.0" +license = "MIT" +demo = "https://particle-zola.vercel.app/" + +[extra.author] +name = "Silvano Sallese" +homepage = "https://svavs.github.io/" ++++ + +# Port for Zola of the Particle Jekyll theme + +![](./screenshot.jpg) + +This is a simple and minimalist template for Zola designed for developers that want to show of their portfolio. + +The Theme features: + +- Gulp +- SASS +- Sweet Scroll +- Particle.js +- BrowserSync +- Font Awesome and Devicon icons +- Google Analytics +- Info Customization + +## Basic Setup + +1. [Install Zola](https://getzola.com) +2. Clone the particle theme: `git clone https://github.com/svavs/particle-zola.git` +3. Edit `config.yml` to personalize your site. + +## Site and User Settings + +You have to fill some informations on the `[extra]` section of the `config.yml` to customize your site. + +``` +# Site settings +description: A blog about lorem ipsum dolor sit amet + +# User settings +username: Lorem Ipsum +user_description: Anon Developer at Lorem Ipsum Dolor +user_title: Anon Developer +email: my@email.com +twitter_username: lorem_ipsum +github_username: lorem_ipsum +gplus_username: lorem_ipsum +``` + +## Color and Particle Customization +- Color Customization + - Edit the sass variables (`_vars.scss`) +- Particle Customization + - Edit the json data in particle function in app.js + - Refer to [Particle.js](https://github.com/VincentGarreau/particles.js/) for help + +To customize the project lists and the about sections, you need to edit the `templates/content.html` template file. +In future versions will be provided a simpler way. + +## Questions + +Having any issues file a [GitHub Issue](https://github.com/svavs/particle-zola/issues/new). + +## License + +This theme is free and open source software, distributed under the The MIT License. So feel free to use this Jekyll theme anyway you want. + +## Credits + +This theme was partially designed with the inspiration from these fine folks +- [Nathan Randecker](https://github.com/nrandecker/particle) +- [Willian Justen](https://github.com/willianjusten/will-jekyll-template) +- [Vincent Garreau](https://github.com/VincentGarreau/particles.js/) + + \ No newline at end of file diff --git a/docs/content/themes/particle/screenshot.png b/docs/content/themes/particle/screenshot.png new file mode 100644 index 0000000000..db60eef1e8 Binary files /dev/null and b/docs/content/themes/particle/screenshot.png differ diff --git a/docs/content/themes/resume/index.md b/docs/content/themes/resume/index.md index dc2d1fe815..16645c6dd3 100644 --- a/docs/content/themes/resume/index.md +++ b/docs/content/themes/resume/index.md @@ -3,11 +3,11 @@ title = "resume" description = "A resume theme" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 repository = "https://github.com/AlongWY/zola-resume.git" homepage = "https://github.com/alongwy/zola-resume" minimum_version = "0.11.0" diff --git a/docs/content/themes/sam/index.md b/docs/content/themes/sam/index.md index 8c53fcd036..b916aaa24d 100644 --- a/docs/content/themes/sam/index.md +++ b/docs/content/themes/sam/index.md @@ -3,11 +3,11 @@ title = "sam" description = "A Simple and Minimalist theme with a focus on typography and content." template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 repository = "https://github.com/janbaudisch/zola-sam.git" homepage = "https://github.com/janbaudisch/zola-sam" minimum_version = "0.4.0" diff --git a/docs/content/themes/seje2/index.md b/docs/content/themes/seje2/index.md new file mode 100644 index 0000000000..6499d51b5a --- /dev/null +++ b/docs/content/themes/seje2/index.md @@ -0,0 +1,86 @@ + ++++ +title = "Seje2" +description = "A beautiful zola theme" +template = "theme.html" +date = 2022-06-03T14:22:50-07:00 + +[extra] +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07: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" + +[extra.author] +name = "Mag Mell" +homepage = "https://blog.utopiosphere.net" ++++ + +# Seje2 + +![screenshot](screenshot.png) + +[Demo](https://eatradish.github.io/Seje2) + +## Contents + +- [Installation](#installation) +- [Options](#options) + - [Top menu](#top-menu) + - ["About" page](#"About"-page) + +## Installation +First download this theme to your `themes` directory: + +```bash +cd themes +git clone https://github.com/eatradish/Seje2 +``` +and then enable it in your `config.toml`: + +```toml +theme = "Seje2" +``` + +This theme requires your index section (`content/_index.md`) to be paginated to work: + +```toml +paginate_by = 5 +``` + +The posts should therefore be in directly under the `content` folder. + +## Options + +### Top-menu +Set a field in `extra` with a key of `seje2_menu_links`: + +```toml +seje2_menu_links = [ + {url = "$BASE_URL", name = "Home"}, + {url = "$BASE_URL/categories", name = "Categories"}, + {url = "$BASE_URL/tags", name = "Tags"}, + {url = "https://google.com", name = "Google"}, +] +``` + +If you put `$BASE_URL` in a url, it will automatically be replaced by the actual +site URL. + +### "About"-page + +In a about page (wrap this in +++): + +```toml +title = "..." + +[extra] +year = 2019 +month = 11 +day = 03 +``` + + \ No newline at end of file diff --git a/docs/content/themes/seje2/screenshot.png b/docs/content/themes/seje2/screenshot.png new file mode 100644 index 0000000000..acf2aefcf1 Binary files /dev/null and b/docs/content/themes/seje2/screenshot.png differ diff --git a/docs/content/themes/serene/index.md b/docs/content/themes/serene/index.md index 7e3bbd90c7..920d252bf3 100644 --- a/docs/content/themes/serene/index.md +++ b/docs/content/themes/serene/index.md @@ -3,11 +3,11 @@ title = "serene" description = "A blog theme for zola, simple and clean." template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 repository = "https://github.com/isunjn/serene.git" homepage = "https://github.com/isunjn/serene" minimum_version = "0.9.0" @@ -54,6 +54,8 @@ Serene is a simple and clean blog theme for Static-Site-Generator [Zola](https:/ - 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 - Projects page - Easily customize diff --git a/docs/content/themes/simple-dev-blog/index.md b/docs/content/themes/simple-dev-blog/index.md index aad6e5752b..7d2ab135fd 100644 --- a/docs/content/themes/simple-dev-blog/index.md +++ b/docs/content/themes/simple-dev-blog/index.md @@ -3,12 +3,12 @@ title = "simple-dev-blog" description = "A simple dev blog theme with no javascript, prerendered linked pages and SEO tags." template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 -repository = "https://github.com/bennetthardwick/simple-dev-blog-zola-starter" +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07: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" license = "MIT" @@ -29,7 +29,9 @@ You can view it live [here](https://simple-dev-blog-zola-starter.netlify.app/). ## How to get started -To create a new Zola site, first download the CLI and install it on your system. +To create a new Zola site, first download the CLI and install it on your system. This theme requires Zola version 0.14 or greater. + + You can find installation instructions [on the Zola website](https://www.getzola.org/documentation/getting-started/installation/). 1. After you've installed the Zola CLI, run the following command to create a new site: diff --git a/docs/content/themes/simplify/index.md b/docs/content/themes/simplify/index.md index 7dd3af3599..bf19159613 100644 --- a/docs/content/themes/simplify/index.md +++ b/docs/content/themes/simplify/index.md @@ -3,11 +3,11 @@ title = "simplify" description = "A minimal blog theme built with simple.css" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-05-02T15:40:10-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 +created = 2022-05-02T15:40:10-07:00 +updated = 2022-05-02T15:40:10-07:00 repository = "https://github.com/tarunjana/simplify.git" homepage = "https://github.com/tarunjana/simplify" minimum_version = "0.15.3" diff --git a/docs/content/themes/slim/index.md b/docs/content/themes/slim/index.md index 9ddd9273d6..dd61965f45 100644 --- a/docs/content/themes/slim/index.md +++ b/docs/content/themes/slim/index.md @@ -3,12 +3,12 @@ title = "Slim" description = "Slim is a minimal, clean and beautiful theme for Zola." template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 -repository = "https://github.com/jameshclrk/zola-slim" +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 +repository = "https://github.com/jameshclrk/zola-slim.git" homepage = "https://github.com/jameshclrk/zola-slim" minimum_version = "0.8.0" license = "MIT" diff --git a/docs/content/themes/soapstone/index.md b/docs/content/themes/soapstone/index.md new file mode 100644 index 0000000000..c8994e49c5 --- /dev/null +++ b/docs/content/themes/soapstone/index.md @@ -0,0 +1,48 @@ + ++++ +title = "Soapstone" +description = "A bare bones dark theme with some color tweakability" +template = "theme.html" +date = 2022-06-03T14:22:50-07:00 + +[extra] +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 +repository = "https://github.com/MattyRad/soapstone.git" +homepage = "https://github.com/MattyRad/soapstone" +minimum_version = "0.4.0" +license = "MIT" +demo = "https://mattyrad.github.io/soapstone/" + +[extra.author] +name = "Matt Radford" +homepage = "https://mradford.com" ++++ + +# Soapstone + +A divless dark theme for zola. [See it in action](https://mattyrad.github.io/soapstone/). + +![sample](/screenshot.png) + +See [installation](https://www.getzola.org/documentation/themes/installing-and-using-themes/) for installation directions. + +## Extra config + +The following config is optional, but can add a few niceties. + +```toml +[extra] +list_header = "Hello World" # title of the main page +favicon_href = "http://example.com" # link to favicon +gravatar_img_src = "https://0.gravatar.com/avatar/abc123?s=60" # adds gravatar image in footer +gravatar_href = "https://example.com" # link for gravatar image +github_link = "https://github.com/JohnDoe" # adds a github link in footer +about_link = "https://example.com" # adds an about link in footer +signature_img_src = "/example.png" # adds an image to bottom of article +signature_text = "Signing off!" # adds signature text to bottom of articles +ga_code = "UA-1234" # adds google analytics code +theme_color = "#000" # for meta browser theme only +``` + + \ No newline at end of file diff --git a/docs/content/themes/soapstone/screenshot.png b/docs/content/themes/soapstone/screenshot.png new file mode 100644 index 0000000000..936ab06c4b Binary files /dev/null and b/docs/content/themes/soapstone/screenshot.png differ diff --git a/docs/content/themes/solar-theme-zola/index.md b/docs/content/themes/solar-theme-zola/index.md index 838ed163f8..04b09aa5af 100644 --- a/docs/content/themes/solar-theme-zola/index.md +++ b/docs/content/themes/solar-theme-zola/index.md @@ -3,11 +3,11 @@ title = "solar-theme-zola" description = "A port of solar-theme-hugo for zola" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 repository = "https://github.com/hulufei/solar-theme-zola.git" homepage = "https://github.com/hulufei/solar-theme-zola" minimum_version = "0.4.0" diff --git a/docs/content/themes/tale-zola/index.md b/docs/content/themes/tale-zola/index.md index 8d53483b99..eb59f7af34 100644 --- a/docs/content/themes/tale-zola/index.md +++ b/docs/content/themes/tale-zola/index.md @@ -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 = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 repository = "https://github.com/aaranxu/tale-zola.git" homepage = "https://github.com/aaranxu/tale-zola" minimum_version = "0.13.0" diff --git a/docs/content/themes/toucan/index.md b/docs/content/themes/toucan/index.md index cb3fadc3f7..499e455758 100644 --- a/docs/content/themes/toucan/index.md +++ b/docs/content/themes/toucan/index.md @@ -3,11 +3,11 @@ title = "Toucan" description = "Inspired from Pelican default theme" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 repository = "https://git.42l.fr/HugoTrentesaux/toucan.git" homepage = "https://git.42l.fr/HugoTrentesaux/toucan" minimum_version = "0.8.0" diff --git a/docs/content/themes/zerm/index.md b/docs/content/themes/zerm/index.md index 2aeef9d14f..38c34198f1 100644 --- a/docs/content/themes/zerm/index.md +++ b/docs/content/themes/zerm/index.md @@ -3,11 +3,11 @@ title = "zerm" description = "A minimalistic and dark theme based on Radek Kozieł's theme for Hugo" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 repository = "https://github.com/ejmg/zerm.git" homepage = "https://github.com/ejmg/zerm" minimum_version = "0.8.0" diff --git a/docs/content/themes/zhuia/index.md b/docs/content/themes/zhuia/index.md new file mode 100644 index 0000000000..2c3a44b568 --- /dev/null +++ b/docs/content/themes/zhuia/index.md @@ -0,0 +1,178 @@ + ++++ +title = "Zhuia" +description = "An elegant but still playful theme for Zola." +template = "theme.html" +date = 2022-06-03T14:22:50-07:00 + +[extra] +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 +repository = "https://github.com/gicrisf/zhuia.git" +homepage = "https://github.com/gicrisf/zhuia" +minimum_version = "0.15.0" +license = "MIT" +demo = "https://zhuia.netlify.app" + +[extra.author] +name = "Giovanni Crisalfi" +homepage = "https://github.com/gicrisf" ++++ + +# Zhuia + +An elegant but still playful theme for [Zola](https://getzola.org/) powered by [Spectre.css](https://picturepan2.github.io/spectre/). + +It is especially optimized for mobile navigation (optionally without JavaScript, if you don't like fancy stuff). + +**DEMO**: [https://zhuia.netlify.app/](https://zhuia.netlify.app/) + +## Contents + +- [Installation](#installation) +- [Features](#features) +- [Options](#options) + - [Title](#title) + - [SEO](#seo) + - [Social](#social) + - [Footer](#footer) +- [Name](#name) +- [Genesis](#genesis) +- [Donate](#donate) +- [License](#license) + +## Installation + +First download this theme to your `themes` directory: + +```bash +$ cd themes +$ git clone https://github.com/gicrisf/zhuia.git +``` +and then enable it in your `config.toml`: + +```toml +theme = "zhuia" +``` + +Posts should be placed directly in the `content` folder. + +To sort the post index by date, enable sort in your index section `content/_index.md`: + +```toml +sort_by = "date" +``` + +## Features +- [x] Lightweight and minimal +- [x] Spectre CSS classes to manage content. [Look at the docs](https://picturepan2.github.io/spectre/) +- [x] Responsive for mobile support (with full-page mobile menu) +- [x] SCSS based CSS source files for easy customization +- [x] HTML based sidebar widget +- [x] Author card sidebar widget with customizable avatar +- [ ] Multi-author support +- [x] Optional twitter sidebar widget +- [x] Feed RSS/Atom +- [x] Open Graph and Twitter Cards support +- [x] Social buttons with icons +- [x] Deploy via Netlify (config already included) +- [x] Tags AND categories +- [x] Granular image optimization for a really faster loading on mobile +- [x] Pagination +- [x] Easily extendable menu +- [ ] Inter-page pagination +- [x] Optional NoJs +- [ ] Hamburger animation +- [ ] Comments +- [ ] Related posts (not sure about this) +- [ ] Search bar +- [ ] Math rendering (WIP) +- [ ] Other shortcodes (WIP) +- [ ] Multilanguage support (WIP) +- [ ] Dark mode +- [ ] Table of Contents + +## Options + +### Title + +Set a title and description in the config to appear in the site header and on the RSS feed: + +```toml +title = "Der Prozess" +description = "a novel written by Franz Kafka in 1914" +``` + +### SEO + +Most SEO tags are populated by the page metadata, but you can set the `author` and for the `og:image` tag provide the path to an image: + +```toml +[extra] + +author = "Timothy Morton" +og_image = "Hyperobjects.png" +``` + +### Menu +You can choose between two modes: +- With a small script for an elegant overlay menu +- Without any scripts at all (it just your show menu underneath) + +![mobile menus](screenshot-mobile-menus.png) + +### Social + +Set a field in `extra` with a key of `footer_links`: + +```toml +[extra] + +# Freely comment out or delete every field +social_links = [ + {url = "https://t.me/yourname", name = "telegram"}, + # {url = "https://facebook.com/yourname", name = "facebook"}, + {url = "https://twitter.com/yourname", name = "twitter"}, + # {url = "", name = "instagram"}, + {url = "https://github.com/gicrisf", name = "github"}, +] +``` + +![social buttons](social-buttons.png) + +The theme automatically use the right icons for the social in the example. +We can expand the support to other social, for sure: make a PR or open an enhancement issue to ask a new implementation. + +### Footer + +You can add your own copyright or whatever to the footer with a through a simple option on the config file: + +```toml +[extra] + +footer_tagline = "What if everything is an illusion and nothing exists? In that case, I definitely overpaid for my carpet." +``` + +## Name + +The name arise from two parts: +- The generator, Zola, gives the "Z"; +- An extinct species of New Zealand wattlebird, the huia, provide the second part. + +The theme is built on **Spectre** CSS framework, so I found reasonable evoking a **spectral species**. + +## Genesis + +This theme is based on a Pelican theme I originally made for my blog, which was in turn based on the +Grav theme [Quark](https://github.com/getgrav/grav-theme-quark). + +## Donate +Did you liked this theme? Make a donation and support new features! + +[![ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/V7V425BFU) + +## License + +Open sourced under the [MIT license](LICENSE.md). + + \ No newline at end of file diff --git a/docs/content/themes/zhuia/screenshot.png b/docs/content/themes/zhuia/screenshot.png new file mode 100644 index 0000000000..a39f0a3dae Binary files /dev/null and b/docs/content/themes/zhuia/screenshot.png differ diff --git a/docs/content/themes/zola-henry/index.md b/docs/content/themes/zola-henry/index.md index 7b31a26e4d..af9658ca6e 100644 --- a/docs/content/themes/zola-henry/index.md +++ b/docs/content/themes/zola-henry/index.md @@ -3,12 +3,12 @@ title = "henry" description = "A timeless blog theme" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 -repository = "https://github.com/sirodoht/zola-henry" +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 +repository = "https://github.com/sirodoht/zola-henry.git" homepage = "https://github.com/sirodoht/zola-henry" minimum_version = "0.4.0" license = "MIT" diff --git a/docs/content/themes/zola-paper/index.md b/docs/content/themes/zola-paper/index.md index 90838edbf1..cea43fce8f 100644 --- a/docs/content/themes/zola-paper/index.md +++ b/docs/content/themes/zola-paper/index.md @@ -3,11 +3,11 @@ title = "zola-paper" description = "A clean theme inspired from hugo-paper." template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 repository = "https://github.com/schoenenberg/zola-paper.git" homepage = "https://github.com/schoenenberg/zola-paper" minimum_version = "0.11.0" diff --git a/docs/content/themes/zola-pickles/index.md b/docs/content/themes/zola-pickles/index.md index fe81513375..e1fe6c10a6 100644 --- a/docs/content/themes/zola-pickles/index.md +++ b/docs/content/themes/zola-pickles/index.md @@ -3,11 +3,11 @@ title = "pickles" description = "A modern, simple, clean blog theme for Zola." template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 repository = "https://github.com/lukehsiao/zola-pickles.git" homepage = "https://github.com/lukehsiao/zola-pickles" minimum_version = "0.13.0" diff --git a/docs/content/themes/zola-theme-course/index.md b/docs/content/themes/zola-theme-course/index.md new file mode 100644 index 0000000000..304274bed8 --- /dev/null +++ b/docs/content/themes/zola-theme-course/index.md @@ -0,0 +1,100 @@ + ++++ +title = "Course" +description = "A zola theme designed for online courses or tutorials" +template = "theme.html" +date = 2022-06-03T14:22:50-07:00 + +[extra] +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 +repository = "https://github.com/elegaanz/zola-theme-course.git" +homepage = "https://github.com/elegaanz/zola-theme-course" +minimum_version = "0.15.0" +license = "GPL-3.0" +demo = "https://c.gelez.xyz" + +[extra.author] +name = "Ana Gelez" +homepage = "https://ana.gelez.xyz" ++++ + +# Zola Theme : Course + +This theme allows you to publish only courses/tutorials structured in +parts and subparts, using Zola. + +![Homepage of the demo](screenshot.png) + +![Page of a course](screenshot2.png) + +It automatically links pages of the course with the next and previous ones +for easy navigation. There is also a navigation bar at the top of each page +to easily navigate the whole tutorial, and for the reader to never be lost. + +Each page can have an illustration. + +It lets you customize some parts of the site, like the color palette. + +It also features a light/dark mode switcher. + +It also has some SEO features. + +It was made for french courses, so a few parts of the interface may be in french. +You can easily adapt it to your language by editing the files in `themes/zola-theme-course/templates/`. + +## Usage + +Create your Zola site, and import this theme: + +```bash +zola init NAME +cd NAME/themes +git clone https://github.com/elegaanz/zola-theme-course.git +cd .. +``` + +Then update your `config.toml` with this line: + +```toml +theme = "zola-theme-course" +``` + +You can also add these lines to customize how the theme behaves: + +```toml +[extra] +site_name = "My course" +icon = "image.png" +icon_desc = "Icon of the course" +description = "A great course!" +default_illus = "illus.png" +primary_color = "#FFFFFF" +accent_color = "#FFFFFF" +source_url = "https://github.com/me/my-course" +``` + +### File structure + +For your course to be displayed correctly, it needs to follow a specific structure. + +- `content/_index.md` is the text displayed on the homepage +- each part should have its own folder, with an `_index.md` +- each subpart should have its own markdown file (which can be an `index.md` in a subfolder) +- all `_index.md` files should have `sort_by = "weight"` in their frontmatter, and you can then + order parts and subparts using the `weight` option. + +With this theme, pages can also have extra options: + +```toml +[extra] +# Don't display the page title, useful for the homepage +no_title = true +# The name of the image to use as a banner +illus = "illus.jpg" +# Adds JSON-LD metadata on this page, useful for the homepage +jsonld = true +``` + +The standard `title` and `description` fields are also taken into account. + \ No newline at end of file diff --git a/docs/content/themes/zola-theme-course/screenshot.png b/docs/content/themes/zola-theme-course/screenshot.png new file mode 100644 index 0000000000..74734f9cd3 Binary files /dev/null and b/docs/content/themes/zola-theme-course/screenshot.png differ diff --git a/docs/content/themes/zola-theme-hikari/index.md b/docs/content/themes/zola-theme-hikari/index.md index d81b12b84e..c6f7fb356d 100644 --- a/docs/content/themes/zola-theme-hikari/index.md +++ b/docs/content/themes/zola-theme-hikari/index.md @@ -3,12 +3,12 @@ title = "Hikari" description = "Fluid, responsive blog theme for Zola" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 -repository = "https://github.com/waynee95/zola-theme-hikari" +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 +repository = "https://github.com/waynee95/zola-theme-hikari.git" homepage = "https://github.com/waynee95/zola-theme-hikari" minimum_version = "0.5.1" license = "MIT" diff --git a/docs/content/themes/zola-theme-terminimal/index.md b/docs/content/themes/zola-theme-terminimal/index.md new file mode 100644 index 0000000000..b50b0a5c87 --- /dev/null +++ b/docs/content/themes/zola-theme-terminimal/index.md @@ -0,0 +1,384 @@ + ++++ +title = "terminimal" +description = "A simple, minimal retro theme" +template = "theme.html" +date = 2022-06-03T14:22:50-07:00 + +[extra] +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 +repository = "https://github.com/pawroman/zola-theme-terminimal.git" +homepage = "https://github.com/pawroman/zola-theme-terminimal" +minimum_version = "0.11.0" +license = "MIT" +demo = "https://pawroman.github.io/zola-theme-terminimal/" + +[extra.author] +name = "Paweł Romanowski" +homepage = "https://github.com/pawroman" ++++ + +# Terminimal + +[![Build Status](https://github.com/pawroman/zola-theme-terminimal/actions/workflows/pages/pages-build-deployment/badge.svg)](https://github.com/pawroman/zola-theme-terminimal/actions/workflows/pages/pages-build-deployment) +![No JavaScript](https://img.shields.io/badge/JavaScript-none-brightgreen.svg) + +![Screenshot](../master/screenshot.png?raw=true) + +See the live demo (of the default configuration) here: +https://pawroman.github.io/zola-theme-terminimal/ + +Tested with Zola v0.15.3. + +#### Fork disclaimer + +This theme is a fork (not a port) of "Terminal" Hugo theme +by Radosław Kozieł (aka. panr): +https://github.com/panr/hugo-theme-terminal + +Many thanks for that outstanding original theme, Radek! + +## Changes compared to the original theme + +- 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](#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](#shortcodes)). +- Fully responsive. + +## How to start + +Option A: clone the theme directly into your Zola site folder: + +``` +$ git clone https://github.com/pawroman/zola-theme-terminimal.git themes/terminimal +``` + +Option B: include it as a git submodule (it's better if you plan to use CI builders): + +``` +$ git submodule add https://github.com/pawroman/zola-theme-terminimal.git themes/terminimal +``` + +Then in your `config.toml` set: + +```toml +theme = "terminimal" + +# Sass compilation is required +compile_sass = true +``` + +Also see the Zola documentation on using themes: +https://www.getzola.org/documentation/themes/installing-and-using-themes/ + +## Shortcodes + +The theme adds two custom shortcodes related to image handling. + +### `image` + +Used to show images. + +Required arguments: + +- **`src`** + +Optional arguments: + +- **`alt`** +- **`position`** (center \[default\] | left | right) +- **`style`** + +Example: + +``` +{{/* image(src="/img/hello.png", alt="Hello Friend", + position="left", style="border-radius: 8px;") */}} +``` + +### `figure` + +Same as `image`, but with a few extra optional arguments: + +- **`caption`** +- **`caption_position`** (center \[default\] | left | right) +- **`caption_style`** + +Example: + +``` +{{/* figure(src="http://rustacean.net/assets/rustacean-flat-gesture.png", + style="width: 25%;", + position="right" + caption_position="left", + caption="Ferris, the (unofficial) Rust mascot", + caption_style="font-weight: bold; font-style: italic;") */}} +``` + +## Configuration + +### Colors + +Both the accent colors and background colors are +configurable. + +By default, both accent and background are set +to `blue`. + +To configure menu, add this in `[extra]` section +of your `config.toml`: + +```toml +[extra] + +# One of: blue, green, orange, pink, red. +# Defaults to blue. +accent_color = "green" + +# One of: blue, dark, green, orange, pink, red. +# 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" +``` + +### Logo text and link + +You can set the "logo" text and what it links to, +by modifying `config.toml` like so: + +```toml +[extra] + +# The logo text - defaults to "Terminimal theme" +logo_text = "My blog" + +# The logo link - defaults to base_url. +logo_home_link = "/take/me/away!" +``` + +### Author and copyright + +You can set the footer's copyright author name like this: + +```toml +[extra] + +# Author name: when specified, modifies the default +# copyright text. Apart from author, it will +# contain current year and a link to the theme. +author = "My Name" +``` + +If you don't like the default copyright text, +you can set it to completely custom HTML: + +```toml +[extra] + +# Copyright text in HTML format. If specified, +# entirely replaces default copyright and author. +copyright_html = "My custom <b>copyright</b>" +``` + +### Menu + +The menu is optional, static (all items are always shown, +no matter what the screen size) and fully user-configurable. + +To configure menu, add this in `[extra]` section +of your `config.toml`: + +```toml +[extra] + +# menu is enabled by adding menu_items (optional) +menu_items = [ + # each of these is optional, name and url are required + # $BASE_URL is going to be substituted by base_url from configuration + {name = "blog", url = "$BASE_URL"}, + + # tags should only be enabled if you have "tags" taxonomy + # see documentation below for more details + {name = "tags", url = "$BASE_URL/tags"}, + {name = "archive", url = "$BASE_URL/archive"}, + {name = "about me", url = "$BASE_URL/about"}, + + # set newtab to true to make the link open in new tab + {name = "github", url = "url-to-your-github", newtab = true}, +] +``` + +### Tags + +The theme optionally supports tags. To enable them, create +a "tags" taxonomy in your `config.toml`: + +```toml +taxonomies = [ + {name = "tags"}, +] +``` + +Enabling tags will create a new `/tags` page, and +cause them to show up in `archive` section. Note +that you still need to create a menu link to the tags +page manually. + +### Pagination + +Pagination is fully supported for post list (main site) +and intra-post (you can navigate to earlier and later posts). + +To make sure pagination works properly, you must first configure +it in `content/_index.md`: + +``` ++++ +# number of pages to paginate by +paginate_by = 2 + +# sorting order for pagination +sort_by = "date" ++++ +``` + +Then, tweak the theme's pagination config in `config.toml`: + +```toml +[extra] + +# Whether to show links to earlier and later posts +# on each post page (defaults to true). +enable_post_view_navigation = true + +# The text shown at the bottom of a post, +# before earlier/later post links. +# Defaults to "Thanks for reading! Read other posts?" +post_view_navigation_prompt = "Read more" +``` + +### Language code + +Internationalization / translation is not supported +but you can set the HTML language code for your +site: + +```toml +default_language = "en" +``` + +### Hack font subset + +By default, the theme uses a mixed subset of the Hack font. +Normal weight font uses full character set +(for Unicode icons and special symbols), but all others +(bold, italic etc) use a limited subset. + +This results in much smaller transfer sizes, but the subset +might not contain all the Unicode characters you need. + +You can enable full unicode support in `config.toml`: + +```toml +[extra] + +# Use full Hack character set, not just a subset. +# Switch this to true if you need full unicode support. +# Defaults to false. +use_full_hack_font = true +``` + +Also see [Hack's docs](https://github.com/source-foundry/Hack/blob/master/docs/WEBFONT_USAGE.md). + +### Favicon + +The theme supports adding a global favicon (applies to +all pages) to the site: + +```toml +# Optional: Global favicon URL and mimetype. +# Mimetype defaults to "image/x-icon". +# The URL should point at a file located +# in your site's "static" directory. +favicon = "/favicon.png" +favicon_mimetype = "image/png" +``` + +All the configuration options are also described in +[`config.toml`](../master/config.toml). + +## Extending + +Each of the templates defines named blocks, so +it should be quite easy to customize the most common things. + +For example, if you want to add extra `<meta>` tags to the +base template, `index.html`, create file like this in `templates/index.html`: + +```html +{%/* extends "terminimal/templates/index.html" */%} + +{%/* block extra_head */%} + <meta name="description" content="My awesome website"/> + <meta name="keywords" content="Hacking,Programming,Ranting"/> +{%/* endblock */%} +``` + +## How to contribute + +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). + +## License + +Copyright © 2019 Paweł Romanowski (pawroman) + +Original theme: Copyright © 2019 Radosław Kozieł ([@panr](https://twitter.com/panr)) + +The theme is released under the MIT License. +Check the [license file](../master/LICENSE.md) +for more information. + +The license for Hack fonts used is included in +[LICENSE-Hack.md](../master/LICENSE-Hack.md). + + \ No newline at end of file diff --git a/docs/content/themes/zola-theme-terminimal/screenshot.png b/docs/content/themes/zola-theme-terminimal/screenshot.png new file mode 100644 index 0000000000..e0f8b56702 Binary files /dev/null and b/docs/content/themes/zola-theme-terminimal/screenshot.png differ diff --git a/docs/content/themes/zola.386/index.md b/docs/content/themes/zola.386/index.md index c71672a02b..b8ba9411de 100644 --- a/docs/content/themes/zola.386/index.md +++ b/docs/content/themes/zola.386/index.md @@ -3,12 +3,12 @@ title = "zola.386" description = "Zola port of the BOOTSTRA.386 theme." template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 -repository = "https://github.com/lopes/zola.386" +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 +repository = "https://github.com/lopes/zola.386.git" homepage = "https://github.com/lopes/zola.386" minimum_version = "0.10.1" license = "MIT" @@ -82,7 +82,7 @@ zola386_menu = [ ### Social ZOLA.386 is also prepared to deal with Google Analytics, Disqus, and Twitter --[Open Graph Protocol](https://ogp.me/) is welcome. This theme is prepared to use the output of [Favicon Generator](https://www.favicon-generator.org/), to do so, you'll just need to download the output of that site and extract in `static/images`. -As said, Disqus is supportted, but besides setting the username in `config.toml`, you also must to put a `comments = true` extra option on the pages where Disqus will be enabled --this gives you the freedom to enable or disable comments on certain posts. You can use the extra option `image` on each page, to represent that post. +As said, Disqus is supported, but besides setting the username in `config.toml`, you also must to put a `comments = true` extra option on the pages where Disqus will be enabled --this gives you the freedom to enable or disable comments on certain posts. You can use the extra option `image` on each page, to represent that post. ### Animations All JavaScript animations can be set at `static/js/zola386.js`. Basically you can disable all animations, use one or two scans, and change the scan speed. Personally, I prefer only one scan with a speed factor of 5. diff --git a/docs/content/themes/zola_easydocs_theme/index.md b/docs/content/themes/zola_easydocs_theme/index.md index 15162a0321..9e079dc390 100644 --- a/docs/content/themes/zola_easydocs_theme/index.md +++ b/docs/content/themes/zola_easydocs_theme/index.md @@ -3,11 +3,11 @@ title = "EasyDocs" description = "An easy way to create docs for your project" template = "theme.html" -date = 2022-02-09T00:41:54+05:30 +date = 2022-06-03T14:22:50-07:00 [extra] -created = 2022-02-09T00:41:54+05:30 -updated = 2022-02-09T00:41:54+05:30 +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 repository = "https://github.com/codeandmedia/zola_easydocs_theme.git" homepage = "https://github.com/codeandmedia/zola_easydocs_theme" minimum_version = "0.13.0" diff --git a/docs/content/themes/zolastrap/index.md b/docs/content/themes/zolastrap/index.md new file mode 100644 index 0000000000..45edf35a1e --- /dev/null +++ b/docs/content/themes/zolastrap/index.md @@ -0,0 +1,167 @@ + ++++ +title = "zolastrap" +description = "A bootstrap theme for zola" +template = "theme.html" +date = 2022-06-03T14:22:50-07:00 + +[extra] +created = 2022-06-03T14:22:50-07:00 +updated = 2022-06-03T14:22:50-07:00 +repository = "https://github.com/marcodpt/zolastrap.git" +homepage = "https://github.com/marcodpt/zolastrap" +minimum_version = "0.14.1" +license = "MIT" +demo = "https://marcodpt.github.io/zolastrap/" + +[extra.author] +name = "Marco Tomic" +homepage = "https://marcodpt.github.io" ++++ + +# zolastrap +A bootstrap theme for zola + +[Live Demo](https://marcodpt.github.io/zolastrap/) + +## `config.toml` [extra] variables +### banner + - type: string + - default: "" + +Path of a banner image, use empty string for no banner + +### date_format + - type: string + - default: "%d/%m/%Y" + +date format expression + +### theme + - type: string + - default: "default" + +one of the [Bootswatch](https://bootswatch.com) themes + +### bg + - type: string + - default: "dark" + +one of the available backgrounds in +[Bootstrap5](https://getbootstrap.com/docs/5.1/utilities/background/) +for `navbar` and `footer` + +### inverted + - type: boolean + - default: false + +Invert font for `navbar` and `footer` in case default choice is bad + +### themes + - type: string + - default: "Choose a Theme" + +Navbar label for themes dropdown. + +This dropdown will allow user to change +[Bootswatch](https://bootswatch.com) theme. + +Use empty string in case you do not want the user choose a theme. + +### schemes + - type: string + - default: "Choose a Color Scheme" + +Navbar label for schemes dropdown. + +This dropdown will allow user to change footer and navbar +[background](https://getbootstrap.com/docs/5.1/utilities/background/) +color. + +Use empty string in case you do not want the user choose a theme. + +### search + - type: string + - default: "Search" + +Placeholder for navbar search input. + +Remember that to enable and disable search you should set variable +[build_search_index](https://www.getzola.org/documentation/getting-started/configuration/). + +### tag + - type: string + - default: "Posts by Topic" + +Taxonomy `tag` single label. Useful for translations. + +### tags + - type: string + - default: "Posts by Topics" + +Taxonomy `tag` list label. Useful for translations. +You can have a nice tag list at the bottom of a page using `extra.tags` = true +in the `_index.md` + +### links + - type: array + - default: [] + +Navbar links. Use an empty array to ignore this. + +Items (object): + - title (String): label of the navbar link + - url (String): href of associate link + +### email + - type: string + - default: "" + +Footer email. Use an empty string to ignore this. + +### icons + - type: array + - default: [] + +Footer social icons. Use an empty array to ignore this. + +Items (object): + - title (string): Optional title string for icon + - icon (string): One of + - url (string): href of the icon + +### utterances + - type: string + - default: "" + +[utterances](https://github.com/utterance/utterances) repo url. + +Use an empty string to ignore utterances widget. + +### utterances_label + - type: string + - default: "Comments" + +[utterances](https://github.com/utterance/utterances) widget label. + +### utterances_theme + - type: string + - default: "github-light" + +[utterances](https://github.com/utterance/utterances) widget theme. + +### utterances_issue_term + - type: string + - default: "pathname" + +[utterances](https://github.com/utterance/utterances) widget pathname. + +## Contributing +Any help is greatly appreciated! + + - [Tera template engine](https://tera.netlify.app/docs) + - [Zola SSG templates](https://www.getzola.org/documentation/templates/overview/) + - [Bootstrap5 docs](https://getbootstrap.com/docs/5.1/getting-started/introduction/) + - [Bootswatch](https://bootswatch.com) + + \ No newline at end of file diff --git a/docs/content/themes/zolastrap/screenshot.png b/docs/content/themes/zolastrap/screenshot.png new file mode 100644 index 0000000000..00319c9632 Binary files /dev/null and b/docs/content/themes/zolastrap/screenshot.png differ diff --git a/src/cmd/serve.rs b/src/cmd/serve.rs index fc4612c82a..0242a9a075 100644 --- a/src/cmd/serve.rs +++ b/src/cmd/serve.rs @@ -432,7 +432,7 @@ pub fn serve( "Listening for changes in {}{}{{{}}}", root_dir.display(), MAIN_SEPARATOR, - watchers.join(", ") + watchers.join(",") ); println!("Press Ctrl+C to stop\n"); @@ -785,9 +785,9 @@ mod tests { #[cfg(windows)] fn windows_path_handling() { let expected = (ChangeKind::Templates, PathBuf::from("/templates/hello.html")); - let pwd = Path::new(r#"C:\\Users\johan\site"#); - let path = Path::new(r#"C:\\Users\johan\site\templates\hello.html"#); - let config_filename = Path::new(r#"C:\\Users\johan\site\config.toml"#); + let pwd = Path::new(r#"C:\Users\johan\site"#); + let path = Path::new(r#"C:\Users\johan\site\templates\hello.html"#); + let config_filename = Path::new(r#"C:\Users\johan\site\config.toml"#); assert_eq!(expected, detect_change_kind(pwd, path, config_filename)); }