Merge branch 'master' into next

This commit is contained in:
Vincent Prouillet 2021-07-18 13:53:27 +02:00 committed by GitHub
commit b89fc2c274
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
73 changed files with 1447 additions and 295 deletions

View file

@ -30,7 +30,7 @@ $ git submodule update --init
Zola only works with syntaxes in the `.sublime-syntax` format. If your syntax Zola only works with syntaxes in the `.sublime-syntax` format. If your syntax
is in `.tmLanguage` format, open it in Sublime Text and convert it to `sublime-syntax` by clicking on is in `.tmLanguage` format, open it in Sublime Text and convert it to `sublime-syntax` by clicking on
Tools > Developer > New Syntax from ... and put it at the root of `sublime_syntaxes`. Tools > Developer > New Syntax from ... and put it in the `sublime/syntaxes` directory.
You can also add a submodule to the repository of the wanted syntax: You can also add a submodule to the repository of the wanted syntax:
@ -56,7 +56,7 @@ $ cargo run --example generate_sublime synpack ../../sublime/syntaxes ../../subl
### Adding a theme ### Adding a theme
A gallery containing lots of themes is located at https://tmtheme-editor.herokuapp.com/#!/editor/theme/Agola%20Dark. A gallery containing lots of themes is located at https://tmtheme-editor.herokuapp.com/#!/editor/theme/Agola%20Dark.
More themes can be easily added to Zola, just make a PR with the wanted theme added in the `sublime_themes` directory. More themes can be easily added to Zola, just make a PR with the wanted theme added in the `sublime/themes` directory.
If you want to test Zola with a new theme, it needs to be built into the syntect file `all.themedump`. If you want to test Zola with a new theme, it needs to be built into the syntect file `all.themedump`.

View file

@ -3,6 +3,7 @@
| Site | Source Code | | Site | Source Code |
|:-------------------------------------------------------------------|:--------------------------------------------------------:| |:-------------------------------------------------------------------|:--------------------------------------------------------:|
| [vincentprouillet.com](https://www.vincentprouillet.com/) | https://github.com/Keats/vincentprouillet/ | | [vincentprouillet.com](https://www.vincentprouillet.com/) | https://github.com/Keats/vincentprouillet/ |
| [blog.williamdes.eu](http://blog.williamdes.eu/) | https://github.com/wdesportes/blog.williamdes.eu |
| [t-rex.tileserver.ch](https://t-rex.tileserver.ch) | https://github.com/t-rex-tileserver/t-rex-website/ | | [t-rex.tileserver.ch](https://t-rex.tileserver.ch) | https://github.com/t-rex-tileserver/t-rex-website/ |
| [Philipp Oppermann's blog](https://os.phil-opp.com/) | https://github.com/phil-opp/blog_os/tree/master/blog | | [Philipp Oppermann's blog](https://os.phil-opp.com/) | https://github.com/phil-opp/blog_os/tree/master/blog |
| [seventeencups](https://www.seventeencups.net) | https://github.com/17cupsofcoffee/seventeencups.net | | [seventeencups](https://www.seventeencups.net) | https://github.com/17cupsofcoffee/seventeencups.net |

View file

@ -33,6 +33,7 @@ in the `docs/content` folder of the repository and the community can use [its fo
| LiveReload | ![yes] | ![no] | ![yes] | ![yes] | | LiveReload | ![yes] | ![no] | ![yes] | ![yes] |
| Netlify support | ![yes] | ![no] | ![yes] | ![no] | | Netlify support | ![yes] | ![no] | ![yes] | ![no] |
| Vercel support | ![yes] | ![no] | ![yes] | ![yes] | | Vercel support | ![yes] | ![no] | ![yes] | ![yes] |
| Cloudflare Pages support | ![yes] | ![no] | ![yes] | ![yes] |
| Breadcrumbs | ![yes] | ![no] | ![no] | ![yes] | | Breadcrumbs | ![yes] | ![no] | ![no] | ![yes] |
| Custom output formats | ![no] | ![no] | ![yes] | ![no] | | Custom output formats | ![no] | ![no] | ![yes] | ![no] |

View file

@ -13,7 +13,7 @@ were named `_index.md`, then it would create a **section** at `[base_url]/about`
discussed in a previous part of this documentation. In contrast, naming the file `index.md` will discussed in a previous part of this documentation. In contrast, naming the file `index.md` will
create a **page** at `[base_url]/about`). create a **page** at `[base_url]/about`).
If the file is given any name *other* than `index.md` or `_index.md`, then it will If the file is given any name _other_ than `index.md` or `_index.md`, then it will
create a page with that name (without the `.md`). For example, naming a file in the root of your create a page with that name (without the `.md`). For example, naming a file in the root of your
content directory `about.md` would create a page at `[base_url]/about`. content directory `about.md` would create a page at `[base_url]/about`.
Another exception to this rule is that a filename starting with a datetime (YYYY-mm-dd or [an RFC3339 datetime](https://www.ietf.org/rfc/rfc3339.txt)) followed by Another exception to this rule is that a filename starting with a datetime (YYYY-mm-dd or [an RFC3339 datetime](https://www.ietf.org/rfc/rfc3339.txt)) followed by
@ -62,6 +62,7 @@ This frontmatter will output the article to `[base_url]/zines/femmes-libres-lib
### Path from filename ### Path from filename
When the article's output path is not specified in the frontmatter, it is extracted from the file's path in the content folder. Consider a file `content/foo/bar/thing.md`. The output path is constructed: When the article's output path is not specified in the frontmatter, it is extracted from the file's path in the content folder. Consider a file `content/foo/bar/thing.md`. The output path is constructed:
- if the filename is `index.md`, its parent folder name (`bar`) is used as output path - if the filename is `index.md`, its parent folder name (`bar`) is used as output path
- otherwise, the output path is extracted from `thing` (the filename without the `.md` extension) - otherwise, the output path is extracted from `thing` (the filename without the `.md` extension)
@ -109,7 +110,7 @@ weight = 0
# A draft page is only loaded if the `--drafts` flag is passed to `zola build`, `zola serve` or `zola check`. # A draft page is only loaded if the `--drafts` flag is passed to `zola build`, `zola serve` or `zola check`.
draft = false draft = false
# If set, this slug will be instead of the filename to make the URL. # If set, this slug will be used instead of the filename to make the URL.
# The section path will still be used. # The section path will still be used.
slug = "" slug = ""
@ -148,7 +149,7 @@ paragraph of the page content in a list.
To do so, add <code>&lt;!-- more --&gt;</code> in your content at the point To do so, add <code>&lt;!-- more --&gt;</code> in your content at the point
where you want the summary to end. The content up to that point will be where you want the summary to end. The content up to that point will be
available separately in the available separately in the
[template](@/documentation/templates/pages-sections.md#page-variables). [template](@/documentation/templates/pages-sections.md#page-variables) via `page.summary`.
A span element in this position with a `continue-reading` id is created, so you can link directly to it if needed. For example: A span element in this position with a `continue-reading` id is created, so you can link directly to it if needed. For example:
`<a href="{{ page.permalink }}#continue-reading">Continue Reading</a>`. `<a href="{{ page.permalink }}#continue-reading">Continue Reading</a>`.

View file

@ -8,7 +8,7 @@ maintenance of large sets of CSS rules. If you're curious about what Sass
is and why it might be useful for styling your static site, the following links is and why it might be useful for styling your static site, the following links
may be of interest: may be of interest:
* The [official Sass website](http://sass-lang.com/) * The [official Sass website](https://sass-lang.com/)
* [Why Sass?](https://alistapart.com/article/why-sass), by Dan Cederholm * [Why Sass?](https://alistapart.com/article/why-sass), by Dan Cederholm
## Using Sass in Zola ## Using Sass in Zola

View file

@ -22,5 +22,5 @@ the JavaScript/CSS code to do an actual search and display results. You can look
implements it to get an idea: [search.js](https://github.com/getzola/zola/tree/master/docs/static/search.js). implements it to get an idea: [search.js](https://github.com/getzola/zola/tree/master/docs/static/search.js).
## Configuring the search index ## Configuring the search index
In some cases, the default indexing strategy is not suitable. You can customise which fields to include and whether In some cases, the default indexing strategy is not suitable. You can customize which fields to include and whether
to truncate the content in the [search configuration](@/documentation/getting-started/configuration.md). to truncate the content in the [search configuration](@/documentation/getting-started/configuration.md).

View file

@ -7,7 +7,7 @@ A section is created whenever a directory (or subdirectory) in the `content` sec
`_index.md` file. If a directory does not contain an `_index.md` file, no section will be `_index.md` file. If a directory does not contain an `_index.md` file, no section will be
created, but Markdown files within that directory will still create pages (known as orphan pages). created, but Markdown files within that directory will still create pages (known as orphan pages).
The index page (i.e., the page displayed when a user browses to your `base_url`) is a section, The homepage (i.e., the page displayed when a user browses to your `base_url`) is a section,
which is created whether or not you add an `_index.md` file at the root of your `content` directory. which is created whether or not you add an `_index.md` file at the root of your `content` directory.
If you do not create an `_index.md` file in your content directory, this main content section will If you do not create an `_index.md` file in your content directory, this main content section will
not have any content or metadata. If you would like to add content or metadata, you can add an not have any content or metadata. If you would like to add content or metadata, you can add an
@ -73,6 +73,9 @@ paginate_by = 0
# The default is page/1. # The default is page/1.
paginate_path = "page" paginate_path = "page"
# If set, there will pagination will happen in a reversed order.
paginate_reversed = false
# This determines whether to insert a link for each header like the ones you can see on this site if you hover over # This determines whether to insert a link for each header like the ones you can see on this site if you hover over
# a header. # a header.
# The default template can be overridden by creating an `anchor-link.html` file in the `templates` directory. # The default template can be overridden by creating an `anchor-link.html` file in the `templates` directory.
@ -208,4 +211,4 @@ equally weighted sections. Thus, if the `weight` variable for your section is no
is set in a way that produces ties), then your sections will be sorted in is set in a way that produces ties), then your sections will be sorted in
**random** order. Moreover, that order is determined at build time and will **random** order. Moreover, that order is determined at build time and will
change with each site rebuild. Thus, if there is any chance that you will change with each site rebuild. Thus, if there is any chance that you will
iterate over your sections, you should always assign them a weight. iterate over your sections, you should always assign them distinct weights.

View file

@ -10,7 +10,7 @@ try [Tera macros](https://tera.netlify.com/docs#macros).
Broadly speaking, Zola's shortcodes cover two distinct use cases: Broadly speaking, Zola's shortcodes cover two distinct use cases:
* Inject more complex HTML: Markdown is good for writing, but it isn't great when you need add inline HTML or styling. * Inject more complex HTML: Markdown is good for writing, but it isn't great when you need to add inline HTML or styling.
* Ease repetitive data based tasks: when you have [external data](@/documentation/templates/overview.md#load-data) that you * Ease repetitive data based tasks: when you have [external data](@/documentation/templates/overview.md#load-data) that you
want to display in your page's body. want to display in your page's body.
@ -59,7 +59,7 @@ This will create a shortcode `books` with the argument `path` pointing to a `.to
titles and descriptions. They will flow with the rest of the document in which `books` is called. titles and descriptions. They will flow with the rest of the document in which `books` is called.
Shortcodes are rendered before the page's Markdown is parsed so they don't have access to the page's table of contents. Shortcodes are rendered before the page's Markdown is parsed so they don't have access to the page's table of contents.
Because of that, you also cannot use the `get_page`/`get_section`/`get_taxonomy` global functions. It might work while Because of that, you also cannot use the [`get_page`](@/documentation/templates/overview.md#get-page)/[`get_section`](@/documentation/templates/overview.md#get-section)/[`get_taxonomy`](@/documentation/templates/overview.md#get-taxonomy) global functions. It might work while
running `zola serve` because it has been loaded but it will fail during `zola build`. running `zola serve` because it has been loaded but it will fail during `zola build`.
## Using shortcodes ## Using shortcodes

View file

@ -12,6 +12,7 @@ documentation for information on its structure.
Here is an example of using that field to render a two-level table of contents: Here is an example of using that field to render a two-level table of contents:
```jinja2 ```jinja2
{% if page.toc %}
<ul> <ul>
{% for h1 in page.toc %} {% for h1 in page.toc %}
<li> <li>
@ -28,6 +29,7 @@ Here is an example of using that field to render a two-level table of contents:
</li> </li>
{% endfor %} {% endfor %}
</ul> </ul>
{% endif %}
``` ```
While headers are neatly ordered in this example, it will work just as well with disjoint headers. While headers are neatly ordered in this example, it will work just as well with disjoint headers.

View file

@ -0,0 +1,22 @@
+++
title = "Cloudflare Pages"
weight = 60
+++
Cloudflare is a cloud solutions provider with a huge proprietary content delivery network. Like Netlify or Vercel Cloudflare Pages makes deployment process flexible and easy. You can add GitHub repo to the service and build&host Zola-bases websites after each PR automatically.
## Step-by-step
1. Open or create the new one Cloudflare account and choice Pages on the right nav column
2. Press the button _"Create a project"_
3. Select the GitHub repo that contains your Zola website and connect it to Cloudflare Pages
4. Click _"Begin setup"_
5. Enter your project name and keep in mind, if you would like to use default Pages domain (pages.dev) it will be your website future URL, like `yourprojectname.pages.dev`. Also, select a production branch.
6. In _Build settings_ select Zola as a _Framework preset_. _Build command_ and _Build output directory_ will be filled automatically.
7. Toggle _Environment variables_ below and add `ZOLA_VERSION` as _a variable name_ and `0.13.0` or an actual Zola's version as a _value_.
8. Save and deploy.
Your website is now built and deployed to Pages. You may add custom domain or change some settings in the Pages dashboard.
Also, you may find well documented settings and howto [Getting started with Cloudflare Pages](https://developers.cloudflare.com/pages/getting-started) and
[Deloying Zola with Cloudflare Pages](https://developers.cloudflare.com/pages/how-to/deploy-a-zola-site#deploying-with-cloudflare-pages) in Developers portal.

View file

@ -6,13 +6,22 @@ weight = 30
By default, GitHub Pages uses Jekyll (a ruby based static site generator), By default, GitHub Pages uses Jekyll (a ruby based static site generator),
but you can also publish any generated files provided you have an `index.html` file in the root of a branch called but you can also publish any generated files provided you have an `index.html` file in the root of a branch called
`gh-pages` or `master`. In addition you can publish from a `docs` directory in your repository. That branch name can `gh-pages` or `master`. In addition you can publish from a `docs` directory in your repository. That branch name can
also be manually changed in the settings of a repository. also be manually changed in the settings of a repository. To serve a site at `<username>.github.io` or
`<organization>.github.io`, you must name the repository `<username>.github.io` or
`<organization>.github.io` (otherwise GitHub will append the repository name to the URL, e.g.:
`<username>.github.io/<repositoryname>`.
We can use any continuous integration (CI) server to build and deploy our site. For example: We can use any continuous integration (CI) server to build and deploy our site. For example:
* [Github Actions](#github-actions) * [Github Actions](#github-actions)
* [Travis CI](#travis-ci) * [Travis CI](#travis-ci)
In either case, it seems to work best if you use `git submodule` to include your theme, e.g.:
```shell
git submodule add https://github.com/getzola/after-dark.git themes/after-dark
```
## Github Actions ## Github Actions
Using *Github Actions* for the deployment of your Zola-Page on Github-Pages is pretty easy. You basically need three things: Using *Github Actions* for the deployment of your Zola-Page on Github-Pages is pretty easy. You basically need three things:
@ -33,14 +42,12 @@ on: push
name: Build and deploy GH Pages name: Build and deploy GH Pages
jobs: jobs:
build: build:
name: shalzz/zola-deploy-action
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
# Checkout - name: checkout
- uses: actions/checkout@master uses: actions/checkout@v2
# Build & deploy - name: build_and_deploy
- name: shalzz/zola-deploy-action uses: shalzz/zola-deploy-action@v0.13.0
uses: shalzz/zola-deploy-action@v0.12.0
env: env:
# Target branch # Target branch
PAGES_BRANCH: gh-pages PAGES_BRANCH: gh-pages
@ -50,15 +57,50 @@ jobs:
This script is pretty simple, because the [zola-deploy-action](https://github.com/shalzz/zola-deploy-action) is doing everything for you. You just need to provide some details. For more configuration options check out the [README](https://github.com/shalzz/zola-deploy-action/blob/master/README.md). This script is pretty simple, because the [zola-deploy-action](https://github.com/shalzz/zola-deploy-action) is doing everything for you. You just need to provide some details. For more configuration options check out the [README](https://github.com/shalzz/zola-deploy-action/blob/master/README.md).
By commiting the action your first build is triggered. Wait until it's finished, then you should see in your repository a new branch *gh-pages* with the compiled *Zola* page in it. By committing the action your first build is triggered. Wait until it's finished, then you should see in your repository a new branch *gh-pages* with the compiled *Zola* page in it.
Finally we need to check the *Github Pages* section of the repository settings. Click on the *Settings* tab and scroll down to the *Github Pages* section. Check if the source is set to *gh-pages* branch and the directory is */ (root)*. You should also see your *Github Pages* link. Finally we need to check the *Github Pages* section of the repository settings. Click on the *Settings* tab and scroll down to the *Github Pages* section. Check if the source is set to *gh-pages* branch and the directory is */ (root)*. You should also see your *Github Pages* link.
There you can also configure a *custom domain* and *Enforce HTTPS* mode. Before configuring a *custom domains*, please check out [this](https://github.com/shalzz/zola-deploy-action/blob/master/README.md#custom-domain). There you can also configure a *custom domain* and *Enforce HTTPS* mode. Before configuring a *custom domains*, please check out [this](https://github.com/shalzz/zola-deploy-action/blob/master/README.md#custom-domain).
If you want to keep the source of your site in a private repository (including, for example, draft
posts), adapt the following `.github/workflows/main.yml`:
```yaml
on: push
jobs:
build:
runs-on: ubuntu-latest
if: github.ref != 'refs/heads/main'
steps:
- name: 'checkout'
uses: actions/checkout@v2
- name: 'build'
uses: shalzz/zola-deploy-action@v0.13.0
env:
PAGES_BRANCH: gh-pages
BUILD_DIR: .
TOKEN: ${{ secrets.TOKEN }}
# BUILD_ONLY: true
build_and_deploy:
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/main'
steps:
- name: 'checkout'
uses: actions/checkout@v2
- name: 'build and deploy'
uses: shalzz/zola-deploy-action@v0.13.0
env:
PAGES_BRANCH: master
BUILD_DIR: .
TOKEN: ${{ secrets.PUBLIC_TOKEN }}
REPOSITORY: username/username.github.io
```
by substituting your username or organization.
## Travis CI ## Travis CI
We are going to use [Travis CI](https://travis-ci.org) to automatically publish the site. If you are not using Travis Alternatively, you can use [Travis CI](https://www.travis-ci.com/) to automatically publish the site. If you are not using Travis
already, you will need to login with the GitHub OAuth and activate Travis for the repository. already, you will need to login with the GitHub OAuth and activate Travis for the repository.
Don't forget to also check if your repository allows GitHub Pages in its settings. Don't forget to also check if your repository allows GitHub Pages in its settings.
@ -72,7 +114,7 @@ submodules. When doing this, ensure that you are using the `https` version of th
$ git submodule add {THEME_URL} themes/{THEME_NAME} $ git submodule add {THEME_URL} themes/{THEME_NAME}
``` ```
## Allowing Travis to push to GitHub ### Allowing Travis to push to GitHub
Before pushing anything, Travis needs a Github private access key to make changes to your repository. Before pushing anything, Travis needs a Github private access key to make changes to your repository.
If you're already logged in to your account, just click [here](https://github.com/settings/tokens) to go to If you're already logged in to your account, just click [here](https://github.com/settings/tokens) to go to
@ -86,7 +128,7 @@ Copy it into your clipboard and head back to Travis.
Once on Travis, click on your project, and navigate to "Settings". Scroll down to "Environment Variables" and input a name of `GH_TOKEN` with a value of your access token. Once on Travis, click on your project, and navigate to "Settings". Scroll down to "Environment Variables" and input a name of `GH_TOKEN` with a value of your access token.
Make sure that "Display value in build log" is off, and then click add. Now Travis has access to your repository. Make sure that "Display value in build log" is off, and then click add. Now Travis has access to your repository.
## Setting up Travis ### Setting up Travis
We're almost done. We just need some scripts in a .travis.yml file to tell Travis what to do. We're almost done. We just need some scripts in a .travis.yml file to tell Travis what to do.
@ -98,7 +140,7 @@ language: minimal
before_script: before_script:
# Download and unzip the zola executable # Download and unzip the zola executable
# Replace the version numbers in the URL by the version you want to use # Replace the version numbers in the URL by the version you want to use
- curl -s -L https://github.com/getzola/zola/releases/download/v0.9.0/zola-v0.9.0-x86_64-unknown-linux-gnu.tar.gz | sudo tar xvzf - -C /usr/local/bin - curl -s -L https://github.com/getzola/zola/releases/download/v0.13.0/zola-v0.13.0-x86_64-unknown-linux-gnu.tar.gz | sudo tar xvzf - -C /usr/local/bin
script: script:
- zola build - zola build
@ -117,4 +159,4 @@ after_success: |
If your site is using a custom domain, you will need to mention it in the `ghp-import` command: If your site is using a custom domain, you will need to mention it in the `ghp-import` command:
`ghp-import -c vaporsoft.net -n public` for example. `ghp-import -c vaporsoft.net -n public` for example.
Credits: this page is based on the article https://vaporsoft.net/publishing-gutenberg-to-github/ Credits: The Travis-CI section of this page is based on the article https://vaporsoft.net/publishing-gutenberg-to-github/

View file

@ -41,13 +41,11 @@ image: alpine:latest
variables: variables:
# This variable will ensure that the CI runner pulls in your theme from the submodule # This variable will ensure that the CI runner pulls in your theme from the submodule
GIT_SUBMODULE_STRATEGY: recursive GIT_SUBMODULE_STRATEGY: recursive
# Specify the zola version you want to use here
ZOLA_VERSION: "v0.12.0"
pages: pages:
script: script:
# Install the zola package from the alpine community repositories # Install the zola package from the alpine community repositories
- apk add --update-cache --repository http://dl-3.alpinelinux.org/alpine/edge/community/ zola - apk add --update-cache --repository http://dl-cdn.alpinelinux.org/alpine/edge/community/ zola
# Execute zola build # Execute zola build
- zola build - zola build

View file

@ -17,7 +17,7 @@ Once you are in the admin interface, you can add a site from a Git provider (Git
- build command: `zola build` (replace the version number in the variable by the version you want to use) - build command: `zola build` (replace the version number in the variable by the version you want to use)
- publish directory: the path to where the `public` directory is - publish directory: the path to where the `public` directory is
- image selection: `Ubuntu Xenial 16.04 (default)` - image selection: `Ubuntu Xenial 16.04 (default)`
- Environment variables: `ZOLA_VERSION` with for example `0.8.0` as value - Environment variables: `ZOLA_VERSION` with for example `0.13.0` as value
With this setup, your site should be automatically deployed on every commit on master. For `ZOLA_VERSION`, you may With this setup, your site should be automatically deployed on every commit on master. For `ZOLA_VERSION`, you may
use any of the tagged `release` versions in the GitHub repository. Netlify will automatically fetch the tagged version use any of the tagged `release` versions in the GitHub repository. Netlify will automatically fetch the tagged version
@ -38,7 +38,7 @@ command = "zola build"
[build.environment] [build.environment]
# Set the version name that you want to use and Netlify will automatically use it. # Set the version name that you want to use and Netlify will automatically use it.
ZOLA_VERSION = "0.9.0" ZOLA_VERSION = "0.13.0"
# The magic for deploying previews of branches. # The magic for deploying previews of branches.
# We need to override the base url with whatever url Netlify assigns to our # We need to override the base url with whatever url Netlify assigns to our

View file

@ -3,34 +3,23 @@ title = "Vercel"
weight = 50 weight = 50
+++ +++
Vercel (previously zeit) is similar to Netlify, making deployment of sites easy. Vercel (previously Zeit) is similar to Netlify, making the deployment of your site easy as pie.
The sites are hosted by Vercel and automatically deployed whenever we push a The sites are hosted by Vercel and automatically deployed whenever we push a commit to our
commit to our selected production branch (e.g, master). selected production branch (e.g, master).
If you don't have an account with Vercel, you can sign up [here](https://vercel.com/signup). If you don't have an account with Vercel, you can sign up [here](https://vercel.com/signup).
## Automatic deploys ## Automatic deploys
Once you sign up you can import your site from a Git provider (Github, GitLab or Bitbucket). Once you sign up you can import your site from a Git provider (Github, GitLab or Bitbucket).
After the import, you can set the settings for your project. When you import your repository, Vercel will try to find out what frmaework your site is using.
- Choose Framework Preset as **Other** If it doesn't default to Zola:
- Build command as `zola build` and make sure toggle on Override switch. - Set Framework Preset as **Zola**.
- By default Vercel chooses output directory as `public`, if you use a different directory then specify output directory.
- To add your own domain, go to domain setting in left and add it there.
By default, Vercel chooses output directory as `public`. If you use a different directory, then
specify output directory under the "Build and Output Settings" dropdown.
You can learn more about how to setup a custom domain and how to get the most out of Vercel
[via their documentation.](https://vercel.com/docs)
All we have to is include a `vercel.json` in our project's root directory by After you click the blue "Deploy" button, it's off to the races!
specifying the `ZOLA_VERSION` we want to use to deploy the site.
```
{
"build": {
"env": {
"ZOLA_VERSION": "0.12.0"
}
}
}
```
And your site should now be up and running.

View file

@ -31,7 +31,7 @@ $ zola init
## build ## build
This will build the whole site in the `public` directory (if this directory already exists, it is overwritten). This will build the whole site in the `public` directory (if this directory already exists, it is deleted).
```bash ```bash
$ zola build $ zola build
@ -46,7 +46,7 @@ $ zola build --base-url $DEPLOY_URL
This is useful for example when you want to deploy previews of a site to a dynamic URL, such as Netlify This is useful for example when you want to deploy previews of a site to a dynamic URL, such as Netlify
deploy previews. deploy previews.
You can override the default output directory `public` by passing another value to the `output-dir` flag. You can override the default output directory `public` by passing another value to the `output-dir` flag (if this directory already exists, it is deleted).
```bash ```bash
$ zola build --output-dir $DOCUMENT_ROOT $ zola build --output-dir $DOCUMENT_ROOT
@ -75,9 +75,7 @@ You can also specify different addresses for the interface and base_url using `-
Use the `--open` flag to automatically open the locally hosted instance in your Use the `--open` flag to automatically open the locally hosted instance in your
web browser. web browser.
In the event you don't want Zola to run a local web server, you can use the `--watch-only` flag. Before starting, Zola will delete the output directory (by default `public` in project root) to start from a clean slate.
Before starting, Zola will delete the `public` directory to start from a clean slate.
```bash ```bash
$ zola serve $ zola serve
@ -86,7 +84,6 @@ $ zola serve --interface 0.0.0.0
$ zola serve --interface 0.0.0.0 --port 2000 $ zola serve --interface 0.0.0.0 --port 2000
$ zola serve --interface 0.0.0.0 --base-url 127.0.0.1 $ zola serve --interface 0.0.0.0 --base-url 127.0.0.1
$ zola serve --interface 0.0.0.0 --port 2000 --output-dir www/public $ zola serve --interface 0.0.0.0 --port 2000 --output-dir www/public
$ zola serve --watch-only
$ zola serve --open $ zola serve --open
``` ```

View file

@ -37,13 +37,30 @@ default_language = "en"
# The site theme to use. # The site theme to use.
theme = "" theme = ""
# For overriding the default output directory `public`, set it to another value (e.g.: "docs")
output_dir = "public"
# When set to "true", the Sass files in the `sass` directory in the site root are compiled.
# Sass files in theme directories are always compiled.
compile_sass = false
# When set to "true", the generated HTML files are minified.
minify_html = false
# A list of glob patterns specifying asset files to ignore when the content
# directory is processed. Defaults to none, which means that all asset files are
# copied over to the `public` directory.
# Example:
# ignored_content = ["*.{graphml,xlsx}", "temp.*"]
ignored_content = []
# When set to "true", a feed is automatically generated. # When set to "true", a feed is automatically generated.
generate_feed = false generate_feed = false
# The filename to use for the feed. Used as the template filename, too. # The filename to use for the feed. Used as the template filename, too.
# Defaults to "atom.xml", which has a built-in template that renders an Atom 1.0 feed. # Defaults to "atom.xml", which has a built-in template that renders an Atom 1.0 feed.
# There is also a built-in template "rss.xml" that renders an RSS 2.0 feed. # There is also a built-in template "rss.xml" that renders an RSS 2.0 feed.
# feed_filename = "atom.xml" feed_filename = "atom.xml"
# The number of articles to include in the feed. All items are included if # The number of articles to include in the feed. All items are included if
# this limit is not set (the default). # this limit is not set (the default).
@ -53,7 +70,7 @@ generate_feed = false
# static files. Note that for this to work, both `static` and the # static files. Note that for this to work, both `static` and the
# output directory need to be on the same filesystem. Note that the theme's `static` # output directory need to be on the same filesystem. Note that the theme's `static`
# files are always copied, regardless of this setting. # files are always copied, regardless of this setting.
# hard_link_static = false hard_link_static = false
# The taxonomies to be rendered for the site and their configuration. # The taxonomies to be rendered for the site and their configuration.
# Example: # Example:
@ -76,25 +93,12 @@ taxonomies = []
# #
languages = [] languages = []
# When set to "true", the Sass files in the `sass` directory in the site root are compiled.
# Sass files in theme directories are always compiled.
compile_sass = false
# When set to "true", the generated HTML files are minified.
minify_html = false
# A list of glob patterns specifying asset files to ignore when the content
# directory is processed. Defaults to none, which means that all asset files are
# copied over to the `public` directory.
# Example:
# ignored_content = ["*.{graphml,xlsx}", "temp.*"]
ignored_content = []
# A list of directories used to search for additional `.sublime-syntax` files. # A list of directories used to search for additional `.sublime-syntax` files.
extra_syntaxes = [] extra_syntaxes = []
# You can override the default output directory `public` by setting an another value. # When set to "true", a search index is built from the pages and section
# output_dir = "docs" # content for `default_language`.
build_search_index = false
# Configuration of the Markdown rendering # Configuration of the Markdown rendering
[markdown] [markdown]
@ -142,10 +146,6 @@ paths = "on"
taxonomies = "on" taxonomies = "on"
anchors = "on" anchors = "on"
# When set to "true", a search index is built from the pages and section
# content for `default_language`.
build_search_index = false
[search] [search]
# Whether to include the title of the page/section in the index # Whether to include the title of the page/section in the index
include_title = true include_title = true
@ -207,6 +207,7 @@ Zola currently has the following highlight themes available:
- [dimmed-fluid](https://tmtheme-editor.herokuapp.com/#!/editor/theme/Dimmed%20Fluid) - [dimmed-fluid](https://tmtheme-editor.herokuapp.com/#!/editor/theme/Dimmed%20Fluid)
- [dracula](https://draculatheme.com/) - [dracula](https://draculatheme.com/)
- [gray-matter-dark](https://tmtheme-editor.herokuapp.com/#!/editor/theme/Gray%20Matter%20Dark) - [gray-matter-dark](https://tmtheme-editor.herokuapp.com/#!/editor/theme/Gray%20Matter%20Dark)
- [green](https://github.com/kristopherjohnson/MonochromeSublimeText)
- [gruvbox-dark](https://github.com/morhetz/gruvbox) - [gruvbox-dark](https://github.com/morhetz/gruvbox)
- [gruvbox-light](https://github.com/morhetz/gruvbox) - [gruvbox-light](https://github.com/morhetz/gruvbox)
- [idle](https://tmtheme-editor.herokuapp.com/#!/editor/theme/IDLE) - [idle](https://tmtheme-editor.herokuapp.com/#!/editor/theme/IDLE)
@ -219,13 +220,15 @@ Zola currently has the following highlight themes available:
- [nord](https://github.com/crabique/Nord-plist/tree/0d655b23d6b300e691676d9b90a68d92b267f7ec) - [nord](https://github.com/crabique/Nord-plist/tree/0d655b23d6b300e691676d9b90a68d92b267f7ec)
- [nyx-bold](https://github.com/GalAster/vscode-theme-nyx) - [nyx-bold](https://github.com/GalAster/vscode-theme-nyx)
- [one-dark](https://github.com/andresmichel/one-dark-theme) - [one-dark](https://github.com/andresmichel/one-dark-theme)
- [OneHalf](https://github.com/sonph/onehalf) - [OneHalfDark](https://github.com/sonph/onehalf)
- [OneHalfLight](https://github.com/sonph/onehalf)
- [railsbase16-green-screen-dark](https://github.com/tompave/rails_base_16)
- [solarized-dark](https://tmtheme-editor.herokuapp.com/#!/editor/theme/Solarized%20(dark)) - [solarized-dark](https://tmtheme-editor.herokuapp.com/#!/editor/theme/Solarized%20(dark))
- [solarized-light](https://tmtheme-editor.herokuapp.com/#!/editor/theme/Solarized%20(light)) - [solarized-light](https://tmtheme-editor.herokuapp.com/#!/editor/theme/Solarized%20(light))
- [subway-madrid](https://github.com/idleberg/Subway.tmTheme) - [subway-madrid](https://github.com/idleberg/Subway.tmTheme)
- [subway-moscow](https://github.com/idleberg/Subway.tmTheme) - [subway-moscow](https://github.com/idleberg/Subway.tmTheme)
- [Tomorrow](https://tmtheme-editor.herokuapp.com/#!/editor/theme/Tomorrow) - [Tomorrow](https://tmtheme-editor.herokuapp.com/#!/editor/theme/Tomorrow)
- [TwoDark](https://github.com/erremauro/TwoDark) - [two-dark](https://github.com/erremauro/TwoDark)
- [visual-studio-dark](https://tmtheme-editor.herokuapp.com/#!/editor/theme/Visual%20Studio%20Dark) - [visual-studio-dark](https://tmtheme-editor.herokuapp.com/#!/editor/theme/Visual%20Studio%20Dark)
- [zenburn](https://github.com/colinta/zenburn) - [zenburn](https://github.com/colinta/zenburn)

View file

@ -32,7 +32,7 @@ that contains [pages](@/documentation/content/page.md) (your `.md` files).
To learn more, read the [content overview page](@/documentation/content/overview.md). To learn more, read the [content overview page](@/documentation/content/overview.md).
## `sass` ## `sass`
Contains the [Sass](http://sass-lang.com) files to be compiled. Non-Sass files will be ignored. Contains the [Sass](https://sass-lang.com) files to be compiled. Non-Sass files will be ignored.
The directory structure of the `sass` folder will be preserved when copying over the compiled files; for example, a file at The directory structure of the `sass` folder will be preserved when copying over the compiled files; for example, a file at
`sass/something/site.scss` will be compiled to `public/something/site.css`. `sass/something/site.scss` will be compiled to `public/something/site.css`.

View file

@ -10,7 +10,7 @@ Zola provides pre-built binaries for MacOS, Linux and Windows on the
Zola is available on [Brew](https://brew.sh): Zola is available on [Brew](https://brew.sh):
```bash ```sh
$ brew install zola $ brew install zola
``` ```
@ -18,10 +18,27 @@ $ brew install zola
Zola is available in the official Arch Linux repositories. Zola is available in the official Arch Linux repositories.
```bash ```sh
$ pacman -S zola $ pacman -S zola
``` ```
### Alpine Linux
Zola is available in the official Alpine Linux repository, only on the `edge` version for now.
```sh
$ apk add zola --repository http://dl-cdn.alpinelinux.org/alpine/edge/community/
```
### Debian
Zola is available over at [barnumbirr/zola-debian](https://github.com/barnumbirr/zola-debian).
Grab the latest `.deb` for your Debian version then simply run:
```sh
$ sudo dpkg -i zola_<version>_amd64_debian_<debian_version>.deb
```
### Fedora ### Fedora
Zola has been available in the official repositories since Fedora 29. Zola has been available in the official repositories since Fedora 29.
@ -31,6 +48,7 @@ $ sudo dnf install zola
``` ```
### Void Linux ### Void Linux
Zola is available in the official Void Linux repositories. Zola is available in the official Void Linux repositories.
```sh ```sh
@ -46,6 +64,7 @@ $ pkg install zola
``` ```
### OpenBSD ### OpenBSD
Zola is available in the official package repository. Zola is available in the official package repository.
```sh ```sh
@ -56,21 +75,49 @@ $ doas pkg_add zola
Zola is available on snapcraft: Zola is available on snapcraft:
```bash ```sh
$ snap install --edge zola $ snap install --edge zola
``` ```
### Docker
Zola is available on [Docker Hub](https://hub.docker.com/r/balthek/zola).
It has no `latest` tag, you will need to specify a [specific version to pull](https://hub.docker.com/r/balthek/zola/tags).
```sh
$ docker pull balthek/zola:0.13.0
$ docker run balthek/zola:0.13.0 --version
```
#### Build
```sh
$ docker run -u "$(id -u):$(id -g)" -v $PWD:/app --workdir /app balthek/zola:0.13.0 build
```
#### Serve
```sh
$ docker run -u "$(id -u):$(id -g)" -v $PWD:/app --workdir /app -p 8080:8080 balthek/zola:0.13.0 serve --interface 0.0.0.0 --port 8080 --base-url localhost
```
You can now browse http://localhost:8080.
> To enable live browser reload, you may have to bind to port 1024. Zola searches for an open
> 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 balthek/zola:0.13.0 serve --interface 0.0.0.0 --port 8080 --base-url localhost`
## Windows ## Windows
Zola is available on [Scoop](http://scoop.sh): Zola is available on [Scoop](https://scoop.sh):
```bash ```sh
$ scoop install zola $ scoop install zola
``` ```
and [Chocolatey](https://chocolatey.org/): and [Chocolatey](https://chocolatey.org/):
```bash ```sh
$ choco install zola $ choco install zola
``` ```
@ -98,7 +145,7 @@ installed. You will also need to meet additional dependencies to compile [libsas
From a terminal, you can now run the following command: From a terminal, you can now run the following command:
```bash ```sh
$ cargo build --release $ cargo build --release
``` ```

View file

@ -5,7 +5,7 @@ weight = 5
## Zola at a Glance ## Zola at a Glance
Zola is a static site generator (SSG), similar to [Hugo](https://gohugo.io/), [Pelican](https://blog.getpelican.com/), and [Jekyll](https://jekyllrb.com/) (for a comprehensive list of SSGs, please see the [StaticGen](https://www.staticgen.com/) site). It is written in [Rust](https://www.rust-lang.org/) and uses the [Tera](https://tera.netlify.com/) template engine, which is similar to [Jinja2](https://jinja.palletsprojects.com/en/2.10.x/), [Django templates](https://docs.djangoproject.com/en/2.2/topics/templates/), [Liquid](https://shopify.github.io/liquid/), and [Twig](https://twig.symfony.com/). Content is written in [CommonMark](https://commonmark.org/), a strongly defined, highly compatible specification of [Markdown](https://www.markdownguide.org/). Zola is a static site generator (SSG), similar to [Hugo](https://gohugo.io/), [Pelican](https://blog.getpelican.com/), and [Jekyll](https://jekyllrb.com/) (for a comprehensive list of SSGs, please see [Jamstack](https://jamstack.org/generators)). It is written in [Rust](https://www.rust-lang.org/) and uses the [Tera](https://tera.netlify.com/) template engine, which is similar to [Jinja2](https://jinja.palletsprojects.com/en/2.10.x/), [Django templates](https://docs.djangoproject.com/en/2.2/topics/templates/), [Liquid](https://shopify.github.io/liquid/), and [Twig](https://twig.symfony.com/). Content is written in [CommonMark](https://commonmark.org/), a strongly defined, highly compatible specification of [Markdown](https://www.markdownguide.org/).
SSGs use dynamic templates to transform content into static HTML pages. Static sites are thus very fast and require no databases, making them easy to host. A comparison between static and dynamic sites, such as WordPress, Drupal, and Django, can be found [here](https://dev.to/ashenmaster/static-vs-dynamic-sites-61f). SSGs use dynamic templates to transform content into static HTML pages. Static sites are thus very fast and require no databases, making them easy to host. A comparison between static and dynamic sites, such as WordPress, Drupal, and Django, can be found [here](https://dev.to/ashenmaster/static-vs-dynamic-sites-61f).
@ -45,6 +45,25 @@ You will be asked a few questions.
└── themes └── themes
``` ```
For reference, by the **end** of this overview, our `myblog` directory will have the following structure:
```
├── config.toml
├── content/
│ └── blog/
│ ├── _index.md
│ ├── first.md
│ └── second.md
├── sass/
├── static/
├── templates/
│ ├── base.html
│ ├── blog-page.html
│ ├── blog.html
│ └── index.html
└── themes/
```
Let's start the Zola development server with: Let's start the Zola development server with:
```bash ```bash
@ -59,7 +78,7 @@ If you point your web browser to <http://127.0.0.1:1111>, you should see a "Welc
### Home Page ### Home Page
Let's make a home page. To do this, let's first create a `base.html` file inside the `templates` directory. This step will make more sense as we move through this overview. We'll be using the CSS framework [Bulma](https://bulma.io/). Let's make a home page. To do this, let's first create a `base.html` file inside the `templates` directory. This step will make more sense as we move through this overview.
```html ```html
<!DOCTYPE html> <!DOCTYPE html>
@ -68,7 +87,6 @@ Let's make a home page. To do this, let's first create a `base.html` file inside
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<title>MyBlog</title> <title>MyBlog</title>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bulma@0.8.0/css/bulma.min.css">
</head> </head>
<body> <body>

View file

@ -408,11 +408,12 @@ The format is also taken into account when caching, so a request will be sent tw
different formats. different formats.
### `trans` ### `trans`
Gets the translation of the given `key`, for the `default_language` or the `lang`uage given Gets the translation of the given `key`, for the `default_language`, the `lang`uage given or the active language:
```jinja2 ```jinja2
{{/* trans(key="title") */}} {{/* trans(key="title") */}}
{{/* trans(key="title", lang="fr") */}} {{/* trans(key="title", lang="fr") */}}
{{/* trans(key="title", lang=lang) */}}
``` ```
### `resize_image` ### `resize_image`

View file

@ -85,7 +85,7 @@ extra: HashMap<String, Any>;
// date and weight, respectively. // date and weight, respectively.
pages: Array<Page>; pages: Array<Page>;
// Direct subsections to this section, sorted by subsections weight // Direct subsections to this section, sorted by subsections weight
// This only contains the path to use in the `get_section` Tera function to get // This only contains the path to use in the `get_section` built-in function to get
// the actual section object if you need it // the actual section object if you need it
subsections: Array<String>; subsections: Array<String>;
toc: Array<Header>, toc: Array<Header>,

View file

@ -28,10 +28,12 @@ next: String?;
pages: Array<Page>; pages: Array<Page>;
// Which pager are we on // Which pager are we on
current_index: Number; current_index: Number;
// Total number of pages accross all the pagers // Total number of pages across all the pagers
total_pages: Number; total_pages: Number;
``` ```
**The variable will not be defined if `paginate_by` is not set to a positive number.**
A pager is a page of the pagination; if you have 100 pages and paginate_by is set to 10, you will have 10 pagers each A pager is a page of the pagination; if you have 100 pages and paginate_by is set to 10, you will have 10 pagers each
containing 10 pages. containing 10 pages.

View file

@ -23,7 +23,7 @@ min_version = "0.4.0"
# An optional live demo URL # An optional live demo URL
demo = "" demo = ""
# Any variable there can be overriden in the end user `config.toml` # Any variable there can be overridden in the end user `config.toml`
# You don't need to prefix variables by the theme name but as this will # You don't need to prefix variables by the theme name but as this will
# be merged with user data, some kind of prefix or nesting is preferable # be merged with user data, some kind of prefix or nesting is preferable
# Use snake_casing to be consistent with the rest of Zola # Use snake_casing to be consistent with the rest of Zola
@ -38,7 +38,7 @@ homepage = "https://vincent.is"
# the info of the original author here # the info of the original author here
[original] [original]
author = "mdo" author = "mdo"
homepage = "http://markdotto.com/" homepage = "https://markdotto.com/"
repo = "https://www.github.com/mdo/hyde" repo = "https://www.github.com/mdo/hyde"
``` ```

View file

@ -27,7 +27,8 @@ Zola to use it by setting the `theme` variable in the
[configuration file](@/documentation/getting-started/configuration.md). The theme [configuration file](@/documentation/getting-started/configuration.md). The theme
name has to be the name of the directory you cloned the theme in. name has to be the name of the directory you cloned the theme in.
For example, if you cloned a theme in `themes/simple-blog`, the theme name to use For example, if you cloned a theme in `themes/simple-blog`, the theme name to use
in the configuration file is `simple-blog`. in the configuration file is `simple-blog`. Also make sure to place the variable in the top level of the
`.toml` hierarchy and not after a dict like [extra] or [markdown].
## Customizing a theme ## Customizing a theme

View file

@ -3,16 +3,16 @@
title = "DeepThought" title = "DeepThought"
description = "A simple blog theme focused on writing powered by Bulma and Zola." description = "A simple blog theme focused on writing powered by Bulma and Zola."
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/RatanShreshtha/DeepThought.git" repository = "https://github.com/RatanShreshtha/DeepThought.git"
homepage = "https://github.com/RatanShreshtha/DeepThought" homepage = "https://github.com/RatanShreshtha/DeepThought"
minimum_version = "0.9.0" minimum_version = "0.9.0"
license = "MIT" license = "MIT"
demo = "https://zen-austin-0c80be.netlify.app/" demo = "https://deepthought-theme.netlify.app/"
[extra.author] [extra.author]
name = "Ratan Kulshreshtha" name = "Ratan Kulshreshtha"
@ -20,28 +20,40 @@ homepage = "https://ratanshreshtha.dev"
+++ +++
# DeepThought # DeepThought
> A simple blog theme focused on writing powered by Bulma and Zola. A simple blog theme focused on writing powered by Bulma and Zola.
![DeepThought](./screenshot.png) ![DeepThought](./screenshot.png)
# [Live Demo](https://zen-austin-0c80be.netlify.app/) ## Live Demo
Live version of the website is available at [here](https://deepthought-theme.netlify.app/)
## Installation ## Installation
Get [Zola](https://www.getzola.org/) and/or follow their guide on [installing a theme](https://www.getzola.org/documentation/themes/installing-and-using-themes/). Get [Zola](https://www.getzola.org/) and follow their guide on [installing a theme](https://www.getzola.org/documentation/themes/installing-and-using-themes/).
Make sure to add `theme = "DeepThought"` to your `config.toml` Make sure to add `theme = "DeepThought"` to your `config.toml`
#### Check zola version (only 0.9.0+) **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.9.0.
### how to serve ## How to serve?
go into your sites directory, and type `zola serve`. You should see your new site at `localhost:1111`. Go into your sites directory, and type `zola serve`. You should see your new site at `localhost:1111`.
### Deployment to Github Pages or Netlify **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. [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 ## Theme Options
```toml ```toml
# Add links to favicon
navbar_items = [
{ url = "$BASE_URL/", name = "Home" },
{ url = "$BASE_URL/posts", name = "Posts" },
{ url = "$BASE_URL/docs", name = "Docs" },
{ url = "$BASE_URL/tags", name = "Tags" },
{ url = "$BASE_URL/categories", name = "Categories" },
]
# Add links to favicon, you can use https://realfavicongenerator.net/ to generate favicon for your site
[extra.favicon] [extra.favicon]
favicon_16x16 = "/icons/favicon-16x16.png" favicon_16x16 = "/icons/favicon-16x16.png"
favicon_32x32 = "/icons/favicon-32x32.png" favicon_32x32 = "/icons/favicon-32x32.png"
@ -54,11 +66,12 @@ webmanifest = "/icons/site.webmanifest"
name = "DeepThought" name = "DeepThought"
avatar = "/images/avatar.png" avatar = "/images/avatar.png"
# Social link setup # Social links
[extra.social]
[extra.social] [extra.social]
email = "<email_id>"
facebook = "<facebook_username>" facebook = "<facebook_username>"
github = "<github_username>" github = "<github_username>"
gitlab = "<gitlab_username>"
keybase = "<keybase_username>" keybase = "<keybase_username>"
linkedin = "<linkedin_username>" linkedin = "<linkedin_username>"
stackoverflow = "<stackoverflow_userid>" stackoverflow = "<stackoverflow_userid>"
@ -70,7 +83,7 @@ google = "<your_gtag>"
# To add hyvor comments # To add hyvor comments
[extra.commenting] [extra.commenting]
hyvor = "<your_website_id>" hyvor = "<your_hyvor_website_id>"
# To enable mapbox maps # To enable mapbox maps
[extra.mapbox] [extra.mapbox]
@ -78,14 +91,17 @@ access_token = "<your_access_token>"
``` ```
## Features ## Features
- [x] Dark Mode
- [x] Pagination - [x] Pagination
- [x] Search - [x] Search
- [x] Charts - [x] Charts
- [x] Maps - [x] Maps
- [x] Diagrams - [x] Diagrams
- [x] Galleria
- [x] Analytics - [x] Analytics
- [x] Comments - [x] Comments
- [x] Categories - [x] Categories
- [ ] Social Links - [x] Social Links
- [x] Post Sharing

Binary file not shown.

Before

Width:  |  Height:  |  Size: 538 KiB

After

Width:  |  Height:  |  Size: 165 KiB

View file

@ -3,11 +3,11 @@
title = "Ergo" title = "Ergo"
description = "A simple blog Theme focused on writing, inspired by svbtle" description = "A simple blog Theme focused on writing, inspired by svbtle"
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/InsidiousMind/Ergo.git" repository = "https://github.com/InsidiousMind/Ergo.git"
homepage = "https://github.com/insipx/Ergo" homepage = "https://github.com/insipx/Ergo"
minimum_version = "0.4.1" minimum_version = "0.4.1"
@ -69,26 +69,53 @@ description = "Simple blog theme focused on writing, inspired by svbtle"
# Color themes used by the theme (theme will use ${color_theme}.css file, generated by SASS or SCSS file with the same name). Defaults to ["default"]. User can choose either of them, default theme is the first in list. # Color themes used by the theme (theme will use ${color_theme}.css file, generated by SASS or SCSS file with the same name). Defaults to ["default"]. User can choose either of them, default theme is the first in list.
color_themes = ["my-awesome-theme", "default"] color_themes = ["my-awesome-theme", "default"]
# website, should not be preceded with `http://` [[extra.socials]] # website
website = "code.liquidthink.net" icon = "globe"
icon_class = "fas"
display = "code.liquidthink.net"
uri = "https://code.liquidthink.net"
[[extra.socials]] # github
icon = "github"
display = "Insipx"
uri = "https://github.com/Insipx"
[[extra.socials]] # twitter
icon = "twitter"
display = "@liquid_think"
uri = "https://twitter.com/liquid_think"
[[extra.socials]] # email
icon = "envelope"
icon_class = "fas"
display = "say hello"
uri = "mailto:${MY_EMAIL}@cool_domain.com?subject=hi"
[[extra.socials]]
icon = "instagram"
display = "${your_insta}"
uri = "https://instagram.com/${your_insta}"
[[extra.socials]]
icon = "keybase"
display = "${your_keybase}"
uri = "https://keybase.io/${your_keybase}"
[[extra.socials]]
icon = "linkedin"
display = "${your_linkedin}"
uri = "https://www.linkedin.com/in/${your_linkedin}"
[[extra.socials]]
icon = "reddit"
display = "${your_reddit}"
uri = "https://www.reddit.com/u/${your_reddit}"
[[extra.socials]]
icon = "youtube"
display = "${your_youtube_channel_id}"
uri = "https://youtube.com/channel/${your_youtube_channel_id}"
# github
github = "Insipx" # case does not matter
# twitter
twitter = "liquid_think"
# email
email = "${MY_EMAIL}@cool_domain.com"
# instagram
instagram = "${your_insta}"
# keybase
keybase = "${your_keybase}"
# linkedin
linkedin = "${your_linkedin}"
# reddit
reddit = "${your_reddit}"
# youtube
youtube = "${your_youtube_channel_id}"
# if any social networks are missing from this list that you want added, open an issue. I will add it for you ASAP
# Whether to use country flags or language code # Whether to use country flags or language code
country_flags = true country_flags = true
``` ```

View file

@ -3,11 +3,11 @@
title = "Zulma" title = "Zulma"
description = "A zola theme based off bulma.css" description = "A zola theme based off bulma.css"
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/Worble/Zulma" repository = "https://github.com/Worble/Zulma"
homepage = "https://github.com/Worble/Zulma" homepage = "https://github.com/Worble/Zulma"
minimum_version = "0.6.0" minimum_version = "0.6.0"

View file

@ -0,0 +1,197 @@
+++
title = "adidoks"
description = "AdiDoks is a Zola theme helping you build modern documentation."
template = "theme.html"
date = 2021-05-06T18:30:07+02:00
[extra]
created = 2021-05-06T18:30:07+02:00
updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/aaranxu/adidoks.git"
homepage = "https://github.com/aaranxu/adidoks"
minimum_version = "0.13.0"
license = "MIT"
demo = "https://adidoks.netlify.app/"
[extra.author]
name = "Aaran Xu"
homepage = "https://github.com/aaranxu"
+++
# Zola Theme AdiDoks
AdiDoks is a mordern documentation theme, which is a port of the Hugo
theme [Doks](https://github.com/h-enk/doks) for Zola.
## Demo
[Live Preview](https://adidoks.netlify.app/).
## Requirements
Before using the theme, you need to install the [Zola](https://www.getzola.org/documentation/getting-started/installation/) ≥ 0.13.0.
## Quick Start
```bash
git clone git@github.com:aaranxu/adidoks.git
cd adidoks
zola serve
# open http://127.0.0.1:1111/
```
Read more from [the document of the AdiDoks](https://adidoks.org/docs/getting-started/introduction/).
## Installation
Just earlier we showed you how to run the theme directly. Now we start to
install the theme in an existing site step by step.
### Step 1: Create a new zola site
```bash
zola init mysite
```
### Step 2: Install AdiDoks
Download this theme to your themes directory:
```bash
cd mysite/themes
git clone git@github.com:aaranxu/adidoks.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 git@github.com:aaranxu/adidoks.git themes/adidoks
```
### Step 3: Configuration
Enable the theme in your `config.toml` in the site derectory:
```toml
theme = "adidoks"
```
Or copy the `config.toml.example` from the theme directory to your project's
root directory:
```bash
cp themes/adidoks/config.toml.example config.toml
```
### Step 4: Add new content
You can copy the content from the theme directory to your project:
```bash
cp -r themes/adidoks/content .
```
You can modify or add new posts in the `content/blog`, `content/docs` or other
content directories as needed.
### Step 5: Run the project
Just run `zola serve` in the root path of the project:
```bash
zola serve
```
AdiDoks will start the Zola development web server accessible by default at
`http://127.0.0.1:1111`. Saved changes will live reload in the browser.
## Customisation
You can customize your configurations, templates and content for yourself. Look at the `config.toml`, `theme.toml`, `content` files and templates files in this repo for an idea.
### 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
```
#### Configuration options under the `extra`
The following options should be under the `[extra]` in `config.toml`
- `alanguage_code` - set HTML file language (default to `en-US`)
- `theme_color` - your site's HTML color (default to `#fff`)
- `title_separator` - the separator to your site title, like `|` and `-` (defaults to `|`)
- `title_addition` - the additon content for the title of the homepage
- `timeformat` - the timeformat for the blog article published date
- `timezone` - the timezone for the blog article published date
- `edit_page` (and `docs_repo`, `repo_branch`) - whether to show the edit page in the github repo for your docs
- `math` (and `library`) - set KaTeX or MathJax library
- `[extra.open]` - Open Graph + Twitter Cards for the site
- `[extra.schema]` - set JSON-LD for the site
- `[[extra.menu.main]]` - the header navigations for the site
- `[[extra.menu.social]]` - the social links on the header of the page
- `[extra.footer]` - the footer content on the left
- `[[extra.footer.nav]]` - the footer navigations on the right
- `[extra.home]` - the main content of the homepage
- `[[extra.home.list]]` - the lists' content of the homepage
### Templates
All pages are extend to the `base.html`, and you can customize for as need.
### Content
#### Homepage
Go to the `config.toml` to set your own homepage content.
#### Sections
Each section includes a `_index.md`, and you can customize it.
#### Pages
There are three types of pages in the site.
- `blog` - blog article
- `docs` - documentation article
- `authors` - authors page if you need to add some information for a new author
## Reporting Issues
We use GitHub Issues as the official bug tracker for the **AdiDoks**. Please
search [existing issues](https://github.com/aaranxu/adidoks/issues). Its
possible someone has already reported the same problem.
If your problem or idea is not addressed yet, [open a new issue](https://github.com/aaranxu/adidoks/issues/new).
## Contributing
We'd love your help! Please see [CONTRIBUTING.md](./CONTRIBUTING.md) to learn
about the kinds of contributions we're looking for.
## License
**AdiDoks** is distributed under the terms of the
[MIT license](https://github.com/aaranxu/adidoks/blob/main/LICENSE).

Binary file not shown.

After

Width:  |  Height:  |  Size: 220 KiB

View file

@ -3,11 +3,11 @@
title = "after-dark" title = "after-dark"
description = "A robust, elegant dark theme" description = "A robust, elegant dark theme"
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/getzola/after-dark.git" repository = "https://github.com/getzola/after-dark.git"
homepage = "https://github.com/getzola/after-dark" homepage = "https://github.com/getzola/after-dark"
minimum_version = "0.11.0" minimum_version = "0.11.0"
@ -34,8 +34,8 @@ homepage = "https://www.vincentprouillet.com"
First download this theme to your `themes` directory: First download this theme to your `themes` directory:
```bash ```bash
$ cd themes cd themes
$ git clone https://github.com/getzola/after-dark.git git clone https://github.com/getzola/after-dark.git
``` ```
and then enable it in your `config.toml`: and then enable it in your `config.toml`:
@ -56,8 +56,8 @@ The theme requires tags and categories taxonomies to be enabled in your `config.
```toml ```toml
taxonomies = [ taxonomies = [
# You can enable/disable RSS # You can enable/disable RSS
{name = "categories", rss = true}, {name = "categories", feed = true},
{name = "tags", rss = true}, {name = "tags", feed = true},
] ]
``` ```
If you want to paginate taxonomies pages, you will need to overwrite the templates If you want to paginate taxonomies pages, you will need to overwrite the templates

View file

@ -0,0 +1,183 @@
+++
title = "anatole-zola"
description = "A port of farbox-theme-Anatole for zola"
template = "theme.html"
date = 2021-05-06T18:30:07+02:00
[extra]
created = 2021-05-06T18:30:07+02:00
updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/longfangsong/anatole-zola.git"
homepage = "https://github.com/longfangsong/anatole-zola"
minimum_version = "0.4.0"
license = "MIT"
demo = "https://longfangsong.github.io/blog-next"
[extra.author]
name = "longfangsong"
homepage = "https://github.com/longfangsong"
+++
# Anatole Theme for Zola
Port [Anatole theme for farbox](https://github.com/hi-caicai/farbox-theme-Anatole) to Zola.
![screenshot](./screenshot.png)
![screenshot-mobile](./screenshot-mobile.png)
You can view my blog for an example configuation, with customizations.
## Installation
First download this theme to your `themes` directory:
```bash
$ cd themes
$ git clone https://github.com/longfangsong/anatole-zola.git
```
and then enable it in your `config.toml`:
```toml
theme = "anatole-zola"
```
And copy the `content/about`, `content/archive`, `content/_index.md` in the theme folder to your own content folder. And edit the `_index.md` in `about` folder to edit the content of your `about` page.
## Options
### Basic
Add `title`, `description` and `base_url`:
```toml
title = "Anatole"
description = "A other zola theme"
base_url = "https://example.com"
```
### Language
Currently, we have English and Chinese translation, set the `default_language` if necessary:
```toml
# 如果你想要中文
default_language = "zh"
```
It's sad that transations in themes are not working, you can copy these to your `config.toml`:
```toml
[translations.en]
about = "About"
home = "Home"
tags = "Tags"
archive = "Archive"
links = "Links"
next_page = "Next Page"
last_page = "Last Page"
[translations.zh]
home = "首页"
about = "关于"
tags = "标签"
archive = "归档"
links = "友链"
next_page = "下一页"
last_page = "上一页"
```
Feel free to create a pull request if you want to translate the promotes into other languages!
### Sections
Tags and links sections are optional.
- If you want to enable the tags page, add
```toml
taxonomies = [
{name = "tags"},
]
[extra.show]
tags = true
```
To your `config.toml`
- If you want to enable the links page, add
```toml
[extra.show]
links = true
```
and copy `content/links` to your own `content` library. And edit the `_index.md` in it to edit its content.
### Sidebar menu
We support a bunch of social links, they are:
```toml
[extra.social]
github = ""
twitter = ""
facebook = ""
instagram = ""
dribbble = ""
weibo = ""
```
Fill in your username if you want! And the logo won't appear if you leave it empty.
### Comment system
We currently support [valine](https://valine.js.org/quickstart.html):
```toml
[extra.comment.valine]
appid = "Your appid goes here"
appkey = "Your appkey goes here"
notify = false # true/false: mail notify https://github.com/xCss/Valine/wiki/Valine-%E8%AF%84%E8%AE%BA%E7%B3%BB%E7%BB%9F%E4%B8%AD%E7%9A%84%E9%82%AE%E4%BB%B6%E6%8F%90%E9%86%92%E8%AE%BE%E7%BD%AE
verify = false # true/false: verify code
avatar = "mm" # avatar style https://github.com/xCss/Valine/wiki/avatar-setting-for-valine
placeholder = "Say something here"
```
And [disqus](https://disqus.com/admin/create/), note disqus does not work in Mainland China:
```toml
[extra.comment.disqus]
name = "longfangsong"
```
## Customize
There are several points I left in the origin templates for you to customize your site.
### More style
You can create a `blog.scss` or something similiar in the your `sass` folder, add a `templates.html` with following content:
```html
{%/* extends "anatole-zola/templates/basic.html" */%}
{%/* block extra_head */%}
<link rel="stylesheet" href="{{/* get_url(path="blog.css") */}}">
{%/* endblock */%}
```
### More social links
You can add more social links by adding a `templates.html` with some content added to `more_social_link` block:
```html
{%/* extends "anatole-zola/templates/basic.html" */%}
{%/* block more_social_link */%}
<div id="pirate" data-wordart-src="//cdn.wordart.com/json/685czi4rqil5" style="width: 100%;" data-wordart-show-attribution></div>
{%/* endblock */%}
```
If you want to use some awsome logos, [font awsome icons](https://fontawesome.com/icons?d=gallery) are already available.

Binary file not shown.

After

Width:  |  Height:  |  Size: 150 KiB

View file

@ -3,11 +3,11 @@
title = "Anpu" title = "Anpu"
description = "A port of the Hugo Anubis theme" description = "A port of the Hugo Anubis theme"
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/zbrox/anpu-zola-theme.git" repository = "https://github.com/zbrox/anpu-zola-theme.git"
homepage = "https://github.com/zbrox/anpu-zola-theme" homepage = "https://github.com/zbrox/anpu-zola-theme"
minimum_version = "0.11.0" minimum_version = "0.11.0"
@ -21,13 +21,19 @@ homepage = "https://zbrox.com"
# Anpu theme for Zola # Anpu theme for Zola
This is a port of the Hugo theme [Anubis](https://github.com/Mitrichius/hugo-theme-anubis/tree/master/layouts) for [Zola](https://getzola.com). This is a port of the Hugo theme [Anubis](https://github.com/Mitrichius/hugo-theme-anubis/tree/master/layouts) for [Zola](https://getzola.org).
![screenshot](screenshot.png) ![screenshot](screenshot.png)
## Usage ## Usage
In order to use the theme you need to clone this repository in your `themes` folder and set your theme setting in `config.toml` to `anpu`. Like this In order to use the theme you need to clone this repository in your `themes` folder:
```bash
git clone https://github.com/zbrox/anpu-zola-theme.git themes/anpu
```
Then set your theme setting in `config.toml` to `anpu`:
```toml ```toml
theme = "anpu" theme = "anpu"
@ -77,3 +83,4 @@ anpu_date_format = "%e %B %Y"
The formatting uses the standart `date` filter in Tera. The date format options you can use are listed in the [chrono crate documentation](https://tera.netlify.app/docs/#date). The formatting uses the standart `date` filter in Tera. The date format options you can use are listed in the [chrono crate documentation](https://tera.netlify.app/docs/#date).

View file

@ -3,11 +3,11 @@
title = "book" title = "book"
description = "A book theme inspired from GitBook/mdBook" description = "A book theme inspired from GitBook/mdBook"
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/getzola/book.git" repository = "https://github.com/getzola/book.git"
homepage = "https://github.com/getzola/book" homepage = "https://github.com/getzola/book"
minimum_version = "0.5.0" minimum_version = "0.5.0"

View file

@ -3,11 +3,11 @@
title = "Clean Blog" title = "Clean Blog"
description = "A port of Start Bootstrap Clean Blog for Zola" description = "A port of Start Bootstrap Clean Blog for Zola"
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/dave-tucker/zola-clean-blog" repository = "https://github.com/dave-tucker/zola-clean-blog"
homepage = "https://github.com/dave-tucker/zola-clean-blog" homepage = "https://github.com/dave-tucker/zola-clean-blog"
minimum_version = "0.4.0" minimum_version = "0.4.0"

View file

@ -3,16 +3,16 @@
title = "codinfox-zola" title = "codinfox-zola"
description = "Codinfox theme for Zola" description = "Codinfox theme for Zola"
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/svavs/codinfox-zola" repository = "https://github.com/svavs/codinfox-zola"
homepage = "https://github.com/svavs/codinfox-zola" homepage = "https://github.com/svavs/codinfox-zola"
minimum_version = "0.11.0" minimum_version = "0.11.0"
license = "MIT" license = "MIT"
demo = "https://svavs.github.io/" demo = "https://codinfox-zola.vercel.app/"
[extra.author] [extra.author]
name = "Silvano Sallese" name = "Silvano Sallese"
@ -21,12 +21,14 @@ homepage = "https://svavs.github.io/"
# Codinfox-Zola # Codinfox-Zola
![Zola Deploy to Github Pages on push](https://github.com/svavs/codinfox-zola/workflows/Zola%20Deploy%20to%20Pages%20on%20push/badge.svg?branch=master)
This is a [Zola](https://www.getzola.com) theme inspired to [Codinfox-Lanyon](https://codinfox.github.com/), a Lanyon based theme for [Jekyll](http://jekyllrb.com). See a live demo [here](https://codinfox-zola.vercel.app/). This is a [Zola](https://www.getzola.com) theme inspired to [Codinfox-Lanyon](https://codinfox.github.com/), a Lanyon based theme for [Jekyll](http://jekyllrb.com). See a live demo [here](https://codinfox-zola.vercel.app/).
This theme places content first by tucking away navigation in a hidden drawer. This theme places content first by tucking away navigation in a hidden drawer.
* Built for [Zola](https://www.getzola.com) * Built for [Zola](https://www.getzola.com)
* Developed on GitHub and hosted for free on [GitHub Pages](https://pages.github.com) * Developed on GitHub and hosted for free on [GitHub Pages](https://pages.github.com) and [Vercel](https://vercel.com)
* Coded with [Spacemacs](https://www.spacemacs.org) * Coded with [Spacemacs](https://www.spacemacs.org)
This theme supports: This theme supports:

View file

@ -3,11 +3,11 @@
title = "dinkleberg" title = "dinkleberg"
description = "The Rust BR theme for Gutenberg" description = "The Rust BR theme for Gutenberg"
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/rust-br/dinkleberg.git" repository = "https://github.com/rust-br/dinkleberg.git"
homepage = "https://github.com/rust-br/dinkleberg" homepage = "https://github.com/rust-br/dinkleberg"
minimum_version = "0.4.0" minimum_version = "0.4.0"

View file

@ -3,11 +3,11 @@
title = "Docsascode_theme" title = "Docsascode_theme"
description = "A modern simple Zola's theme related to docs as code methodology" description = "A modern simple Zola's theme related to docs as code methodology"
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/codeandmedia/zola_docsascode_theme.git" repository = "https://github.com/codeandmedia/zola_docsascode_theme.git"
homepage = "https://github.com/codeandmedia/zola_docsascode_theme" homepage = "https://github.com/codeandmedia/zola_docsascode_theme"
minimum_version = "0.10.0" minimum_version = "0.10.0"

View file

@ -0,0 +1,108 @@
+++
title = "dose"
description = "a small blog theme"
template = "theme.html"
date = 2021-05-06T18:30:07+02:00
[extra]
created = 2021-05-06T18:30:07+02:00
updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/oltd/dose.git"
homepage = "https://github.com/oltd/dose"
minimum_version = "0.13.0"
license = "MIT"
demo = "https://oltd.github.io/dose"
[extra.author]
name = "oltd"
homepage = "https://oltd.dev"
+++
# dose
![](screenshot.png?raw=true)
## Installation
First download this theme to your `themes` directory:
```bash
cd themes
git clone https://github.com/oltd/dose.git
```
and then enable it in your `config.toml`:
```toml
theme = "dose"
```
The following taxonomies are enabled:
```toml
taxonomies = [
{name = "tags"},
]
```
And the theme uses the following extras:
```toml
[extra]
social_media = [
{name = "GitHub", url = "https://github.com/oltd"},
{name = "Twitter", url = "https://twitter.com/@oltd_maker"},
]
```
The description of yourself with your image, you can modify by using a template. Just create a new
file `myblog/parts/me.html`:
```html
<img src="https://via.placeholder.com/50" height="50px" width="50px">
<p>Hi, this is me. I write about microcontrollers, programming and cloud software. ...</p>
```
If you want to have all pages sorted by their date, please create `myblog/content/_index.md`:
```
+++
sort_by = "date"
+++
```
### About
#### Inspired
I created this theme mainly for my personal website. You are free to use it or modify it. It is inspired by the [`no-style-please`](https://riggraz.dev/no-style-please/) jekyll theme.
#### Typography
This theme uses no special font, just the browsers default monospace font. Yes, this can mean that the website could be rendered differently, but users can freely choose their webfont.
#### Darkmode
This theme supports dark and light mode. Currently this will be only switched based on the users preffered system theme. But a manual switch will follow in the future in the footer (see the todo).
| light | dark |
|-|-|
| ![](screenshot-light.png) | ![](screenshot-dark.png) |
#### Size
We need about `2kB` extra stuff aside from images and raw html. This is divided up to `1.7kB CSS` and `~300B JS`.
#### Syntax Highlighting
As I didn't want to invest any time in creating an own syntax color schema for this theme, I suggest to use `visual-studio-dark`, which is the same one used in the demo page.
### TODO
- [ ] introduce sass variables for colors
- [ ] dark/light switch with javascript and store in browser session
## License
![GitHub](https://img.shields.io/github/license/oltd/dose)

Binary file not shown.

After

Width:  |  Height:  |  Size: 84 KiB

View file

@ -3,11 +3,11 @@
title = "even" title = "even"
description = "A robust, elegant dark theme" description = "A robust, elegant dark theme"
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/getzola/even.git" repository = "https://github.com/getzola/even.git"
homepage = "https://github.com/getzola/even" homepage = "https://github.com/getzola/even"
minimum_version = "0.11.0" minimum_version = "0.11.0"
@ -35,8 +35,8 @@ Even is a clean, responsive theme based on the Hugo theme with the same name fea
First download this theme to your `themes` directory: First download this theme to your `themes` directory:
```bash ```bash
$ cd themes cd themes
$ git clone https://github.com/getzola/even.git git clone https://github.com/getzola/even.git
``` ```
and then enable it in your `config.toml`: and then enable it in your `config.toml`:
@ -49,8 +49,8 @@ The theme requires tags and categories taxonomies to be enabled in your `config.
```toml ```toml
taxonomies = [ taxonomies = [
# You can enable/disable RSS # You can enable/disable RSS
{name = "categories", rss = true}, {name = "categories", feed = true},
{name = "tags", rss = true}, {name = "tags", feed = true},
] ]
``` ```
If you want to paginate taxonomies pages, you will need to overwrite the templates If you want to paginate taxonomies pages, you will need to overwrite the templates

View file

@ -3,11 +3,11 @@
title = "feather" title = "feather"
description = "A modern blog theme" description = "A modern blog theme"
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/piedoom/feather" repository = "https://github.com/piedoom/feather"
homepage = "https://github.com/piedoom/feather" homepage = "https://github.com/piedoom/feather"
minimum_version = "0.5.1" minimum_version = "0.5.1"

View file

@ -3,11 +3,11 @@
title = "Float" title = "Float"
description = "An elegant blog theme" description = "An elegant blog theme"
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://gitlab.com/float-theme/float.git" repository = "https://gitlab.com/float-theme/float.git"
homepage = "https://float-theme.netlify.app/" homepage = "https://float-theme.netlify.app/"
minimum_version = "0.11.0" minimum_version = "0.11.0"
@ -19,7 +19,7 @@ name = "Leon"
homepage = "https://exp2.uniuni.space/" homepage = "https://exp2.uniuni.space/"
+++ +++
![Float](content/blog/2020-06-14-Float theme for Zola/Float.png) ![Float](content/blog/2020/2020-06-14-Float theme for Zola/Float.png)
**[English](README.en.md)** **[English](README.en.md)**
@ -45,9 +45,9 @@ Float 是一款為 [Zola](https://www.getzola.org/) 設計的佈景主題。
在您的 Zola 專案資料夾內: 在您的 Zola 專案資料夾內:
把 Float 以 Git 子模組的方式加入專案內:
```shell ```shell
cd themes git submodule add https://gitlab.com/float-theme/float.git theme/float
git clone git@gitlab.com:float-theme/float.git
``` ```
編輯您的 config.toml指定 Float 作為佈景主題: 編輯您的 config.toml指定 Float 作為佈景主題:
@ -85,6 +85,7 @@ cp -r themes/float/content/* content/
``` ```
content/ content/
└── blog/ └── blog/
└── 2020/
└── 2020-06-21-Float theme for Zola/ └── 2020-06-21-Float theme for Zola/
├── index.md ├── index.md
├── pic1.png ├── pic1.png
@ -107,6 +108,7 @@ tags = ["Float", "Zola"]
[extra] [extra]
feature_image = "pic1.png" # 卡片圖片。 feature_image = "pic1.png" # 卡片圖片。
feature = true # 是否為重點文章,重點文章會以寬版卡片顯示。 feature = true # 是否為重點文章,重點文章會以寬版卡片顯示。
link = "" # 指定卡片連結,若有指定則卡片不會連結到文章頁。
``` ```
## 客製化 ## 客製化
@ -115,6 +117,8 @@ feature = true # 是否為重點文章,重點文章會以寬版卡片顯示。
```TOML ```TOML
[extra] [extra]
main_section = "blog"
copyright = "" copyright = ""
web_fonts = "<link rel='stylesheet' href='https://fonts.googleapis.com/css2?family=Noto+Serif+TC:wght@500;700&display=swap'>" web_fonts = "<link rel='stylesheet' href='https://fonts.googleapis.com/css2?family=Noto+Serif+TC:wght@500;700&display=swap'>"

View file

@ -3,11 +3,11 @@
title = "hallo" title = "hallo"
description = "A single-page theme to introduce yourself." description = "A single-page theme to introduce yourself."
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/flyingP0tat0/zola-hallo.git" repository = "https://github.com/flyingP0tat0/zola-hallo.git"
homepage = "https://github.com/janbaudisch/zola-hallo" homepage = "https://github.com/janbaudisch/zola-hallo"
minimum_version = "0.4.0" minimum_version = "0.4.0"

View file

@ -3,11 +3,11 @@
title = "hyde" title = "hyde"
description = "A classic blog theme" description = "A classic blog theme"
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/getzola/hyde.git" repository = "https://github.com/getzola/hyde.git"
homepage = "https://github.com/getzola/hyde" homepage = "https://github.com/getzola/hyde"
minimum_version = "0.11.0" minimum_version = "0.11.0"
@ -38,8 +38,8 @@ Hyde is a brazen two-column [Zola](https://github.com/getzola/zola) based on the
First download this theme to your `themes` directory: First download this theme to your `themes` directory:
```bash ```bash
$ cd themes cd themes
$ git clone https://github.com/getzola/hyde.git git clone https://github.com/getzola/hyde.git
``` ```
and then enable it in your `config.toml`: and then enable it in your `config.toml`:

View file

@ -1,13 +1,13 @@
+++ +++
title = "juice" title = "juice"
description = "An intuitive, elegant, and lightweight Zola theme for product sites." description = "An intuitive, elegant, and lightweight Zola theme for product sites."
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/huhu/juice" repository = "https://github.com/huhu/juice"
homepage = "https://github.com/huhu/juice" homepage = "https://github.com/huhu/juice"
minimum_version = "0.11.0" minimum_version = "0.11.0"
@ -21,9 +21,9 @@ homepage = "https://huhu.io"
# Juice # Juice
<img align="right" width="150" height="150" src="/static/juice.svg"> <img align="right" width="150" height="150" src="/content/juice.svg">
**Juice** is an intuitive, elegant, and responsive Zola theme for product sites. **Juice** is an intuitive, elegant, and responsive Zola theme for product sites.
- Build for product sites - Build for product sites
- Simple and intuitive structure - Simple and intuitive structure
@ -61,6 +61,7 @@ theme = "juice"
You can customize your **hero** by using `hero` block in the `index.html`. You can customize your **hero** by using `hero` block in the `index.html`.
```html ```html
{%/* extends "juice/templates/index.html" */%}
{%/* block hero */%} {%/* block hero */%}
<div> <div>
Your cool hero html... Your cool hero html...
@ -78,7 +79,7 @@ You can change the frontmatter's `weight` value to sort the order (ascending ord
+++ +++
title = "Changelog" title = "Changelog"
description = "Changelog" description = "Changelog"
weight = 3 weight = 2
+++ +++
``` ```
@ -116,8 +117,21 @@ juice_logo_path = "juice.svg"
juice_extra_menu = [ juice_extra_menu = [
{ title = "Github", link = "https://github.com/huhu/juice"} { title = "Github", link = "https://github.com/huhu/juice"}
] ]
repository_url = "https://github.com/huhu/juice"
``` ```
# Shortcodes
**Juice** have some builtin shortcodes available in `templates/shortcodes` directory.
- `issue(id)` - A shortcode to render issue url, e.g. `issue(id=1)` would render to the link `https://github.com/huhu/juice/issue/1`.
> The `repository_url` is required.
# Showcases
Please see the [showcases page](https://juice.huhu.io/showcases).
# Contributing # Contributing
Thank you very much for considering contributing to this project! Thank you very much for considering contributing to this project!
@ -127,3 +141,4 @@ We appreciate any form of contribution:
- New issues (feature requests, bug reports, questions, ideas, ...) - New issues (feature requests, bug reports, questions, ideas, ...)
- Pull requests (documentation improvements, code improvements, new features, ...) - Pull requests (documentation improvements, code improvements, new features, ...)

View file

@ -3,11 +3,11 @@
title = "lightspeed" title = "lightspeed"
description = "Zola theme with a perfect Lighthouse score" description = "Zola theme with a perfect Lighthouse score"
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/carpetscheme/lightspeed" repository = "https://github.com/carpetscheme/lightspeed"
homepage = "https://github.com/carpetscheme/lightspeed" homepage = "https://github.com/carpetscheme/lightspeed"
minimum_version = "0.10.0" minimum_version = "0.10.0"

View file

@ -0,0 +1,78 @@
+++
title = "ntun-zola-theme"
description = "A classic resume theme"
template = "theme.html"
date = 2021-05-06T18:30:07+02:00
[extra]
created = 2021-05-06T18:30:07+02:00
updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/Netoun/ntun"
homepage = "https://github.com/netoun/ntun"
minimum_version = "0.1.0"
license = "MIT"
demo = "https://netoun.github.io/ntun/"
[extra.author]
name = "Nicolas Coulonnier"
homepage = "https://netoun.com"
+++
# **Ntun**
![alt text](screenshot.png "Screenshoot")
**Live demo** : https://netoun.github.io/ntun/
## Contents
- [Installation](#installation)
- [Options](#options)
## Installation
First download this theme to your `themes` directory:
```bash
cd themes
git clone https://github.com/netoun/ntun.git
```
and then enable it in your `config.toml`:
```toml
theme = "ntun"
```
This theme requires index section in `about` (`content/about/_index.md`)
The posts should therefore be in directly under the `content about` folder.
## Options
Set a field in `extra` with a key of `after_dark_menu`:
```toml
[extra]
author = "Jon Snow"
author_image="me.jpg"
city="Winterfell"
years="281"
job = "King of the north"
description = "Dragons & Aunt ❤️"
links = [
{ url = "", title="", icon = "fab fa-github"},
{ url = "", title="", icon = "fab fa-twitter"},
{ url = "", title="", icon = "fab fa-linkedin"},
{ url = "mailto:"title="", icon = "fas fa-envelope"}
]
# if you add languages, put your emoji flag on array
languages_flags = [
"🇬🇧"
]
```
If you put `$BASE_URL` in a url, it will automatically be replaced by the actual
site URL.

Binary file not shown.

After

Width:  |  Height:  |  Size: 606 KiB

View file

@ -3,16 +3,16 @@
title = "Oceanic Zen" title = "Oceanic Zen"
description = "Minimalistic blog theme" description = "Minimalistic blog theme"
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/barlog-m/oceanic-zen.git" repository = "https://github.com/barlog-m/oceanic-zen.git"
homepage = "https://github.com/barlog-m/oceanic-zen" homepage = "https://github.com/barlog-m/oceanic-zen"
minimum_version = "0.9.0" minimum_version = "0.12.0"
license = "MIT" license = "MIT"
demo = "" demo = "https://oceanic-zen.netlify.app"
[extra.author] [extra.author]
name = "Barlog M." name = "Barlog M."

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

View file

@ -3,11 +3,11 @@
title = "sam" title = "sam"
description = "A Simple and Minimalist theme with a focus on typography and content." description = "A Simple and Minimalist theme with a focus on typography and content."
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/janbaudisch/zola-sam.git" repository = "https://github.com/janbaudisch/zola-sam.git"
homepage = "https://github.com/janbaudisch/zola-sam" homepage = "https://github.com/janbaudisch/zola-sam"
minimum_version = "0.4.0" minimum_version = "0.4.0"
@ -56,6 +56,29 @@ Either way, you will have to enable the theme in your `config.toml`.
theme = "sam" theme = "sam"
``` ```
## Taxonomies
Sam supports the `tags` and `authors` taxonomies.
To use them, declare them in your `config.toml`:
```toml
taxonomies = [
{ name = "tags", rss = true },
{ name = "authors", rss = true }
]
```
Set them in your page's frontmatter:
```toml
[taxonomies]
tags = ["some", "tag"]
authors = ["Alice", "Sam"]
```
See [Zola's documentation][taxonomies-docs] for more details.
## Options ## Options
See [`config.toml`][config] for an example configuration. See [`config.toml`][config] for an example configuration.
@ -162,6 +185,7 @@ text = "Some footer text."
[hugo-sam]: https://github.com/victoriadotdev/hugo-theme-sam [hugo-sam]: https://github.com/victoriadotdev/hugo-theme-sam
[upstream]: https://github.com/janbaudisch/zola-sam/blob/master/upstream [upstream]: https://github.com/janbaudisch/zola-sam/blob/master/upstream
[upstream-license]: https://github.com/janbaudisch/zola-sam/blob/master/upstream/LICENSE [upstream-license]: https://github.com/janbaudisch/zola-sam/blob/master/upstream/LICENSE
[taxonomies-docs]: https://www.getzola.org/documentation/content/taxonomies
[config]: https://github.com/janbaudisch/zola-sam/blob/master/config.toml [config]: https://github.com/janbaudisch/zola-sam/blob/master/config.toml
[date-format-docs]: https://docs.rs/chrono/latest/chrono/format/strftime/index.html [date-format-docs]: https://docs.rs/chrono/latest/chrono/format/strftime/index.html

View file

@ -3,11 +3,11 @@
title = "simple-dev-blog" title = "simple-dev-blog"
description = "A simple dev blog theme with no javascript, prerendered linked pages and SEO tags." description = "A simple dev blog theme with no javascript, prerendered linked pages and SEO tags."
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/bennetthardwick/simple-dev-blog-zola-starter" repository = "https://github.com/bennetthardwick/simple-dev-blog-zola-starter"
homepage = "https://github.com/bennetthardwick/simple-dev-blog-zola-starter" homepage = "https://github.com/bennetthardwick/simple-dev-blog-zola-starter"
minimum_version = "0.4.0" minimum_version = "0.4.0"

View file

@ -3,11 +3,11 @@
title = "Slim" title = "Slim"
description = "Slim is a minimal, clean and beautiful theme for Zola." description = "Slim is a minimal, clean and beautiful theme for Zola."
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/jameshclrk/zola-slim" repository = "https://github.com/jameshclrk/zola-slim"
homepage = "https://github.com/jameshclrk/zola-slim" homepage = "https://github.com/jameshclrk/zola-slim"
minimum_version = "0.8.0" minimum_version = "0.8.0"

View file

@ -3,11 +3,11 @@
title = "solar-theme-zola" title = "solar-theme-zola"
description = "A port of solar-theme-hugo for zola" description = "A port of solar-theme-hugo for zola"
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/hulufei/solar-theme-zola.git" repository = "https://github.com/hulufei/solar-theme-zola.git"
homepage = "https://github.com/hulufei/solar-theme-zola" homepage = "https://github.com/hulufei/solar-theme-zola"
minimum_version = "0.4.0" minimum_version = "0.4.0"
@ -16,7 +16,7 @@ demo = ""
[extra.author] [extra.author]
name = "hulufei" name = "hulufei"
homepage = "https://github/hulufei" homepage = "https://github.com/hulufei"
+++ +++
# Solar Theme for Zola # Solar Theme for Zola
@ -62,7 +62,7 @@ Set a field in `extra` with a key of `site_menus`:
```toml ```toml
site_menus = [ site_menus = [
{ url = "https://github/hulufei/solar-theme-zola", name = "Repository" }, { url = "https://github/hulufei.com/solar-theme-zola", name = "Repository" },
{ url = "rss.xml", name = "RSS" }, { url = "rss.xml", name = "RSS" },
] ]
``` ```

View file

@ -0,0 +1,285 @@
+++
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 = 2021-05-06T18:30:07+02:00
[extra]
created = 2021-05-06T18:30:07+02:00
updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/aaranxu/tale-zola.git"
homepage = "https://github.com/aaranxu/tale-zola"
minimum_version = "0.13.0"
license = "MIT"
demo = "https://tale-zola.netlify.app/"
[extra.author]
name = "Aaran Xu"
homepage = "https://github.com/aaranxu"
+++
# Tale-Zola Theme
Tala-Zola is a minimal [Zola](https://www.getzola.org) theme helping you to
build a light and seo-ready blog, and you can customise any information of the
blog without having to modify the codes of the template. Tala-Zola is a port of
the Jekyll theme [Tale](https://github.com/chesterhow/tale).
## Demo
[Live Preview](https://tale-zola.netlify.app/).
## Requirements
Before using the theme, you need to install the [Zola](https://www.getzola.org/documentation/getting-started/installation/) ≥ 0.13.0.
## Quick Start
```bash
git clone git@github.com:aaranxu/tale-zola.git
cd tale-zola
zola serve
# open http://127.0.0.1:1111/ in the browser
```
## Installation
Just earlier we showed you how to run the theme directly. Now we start to
install the theme in an existing site step by step.
### Step 1: Create a new zola site
```bash
zola init blog
```
### Step 2: Install Tale-Zola
Download this theme to your themes directory:
```bash
cd blog/themes
git clone git@github.com:aaranxu/tale-zola.git
```
Or install as a submodule:
```bash
cd blog
git init # if your project is a git repository already, ignore this command
git submodule add git@github.com:aaranxu/tale-zola.git themes/tale-zola
```
### Step 3: Configuration
Enable the theme in your `config.toml` in the site derectory:
```toml
theme = "tale-zola"
```
Or copy the `config.toml.example` from the theme directory to your project's
root directory:
```bash
cp themes/tale-zola/config.toml.example config.toml
```
### Step 4: Add new content
Add an `_index.md` file to your `content` directory with some lines as bellows.
```text
+++
sort_by = "date"
paginate_by = 5
+++
```
Add a blog article file with a filename `first-post.md` (or other filenames) and
input some content in it.
```text
+++
title = "First Post"
date = 2021-05-01T18:18:18+00:00
[taxonomies]
tags = ["Post"]
[extra]
author = "Your Name"
+++
This is my first post.
```
Or you can just copy the content from the theme directory to your project:
```bash
cp -r themes/tale-zola/content .
```
### Step 5: Run the project
Just run `zola serve` in the root path of the project:
```bash
zola serve
```
Tale-Zola will start the Zola development web server accessible by default at
`http://127.0.0.1:1111`. Saved changes will live reload in the browser.
## Customisation
You can customize your configurations, templates and content for yourself. Look
at the `config.toml`, `theme.toml` and templates files in this repo for an idea.
In most cases you only need to modify the content in the `config.toml` file to
custom your blog, including different expressions in your speaking language.
### Necessary Configurations
Add some information for your blog.
```toml
title = "You Blog Title"
description = "The description of your blog."
```
Set the tags for the site.
```toml
taxonomies = [
{name = "tags"},
]
```
Add menus and footer information for your blog.
```
# Menu items
[[extra.menu]]
name = "Posts"
url = "/"
[[extra.menu]]
name = "Tags"
url = "tags"
[[extra.menu]]
name = "About"
url = "about"
[extra.footer]
start_year = "2020" # start year of the site
end_year = "2021" # end year of the site
info = "The information on the footer."
```
#### Option Configurations
Add your name as the author name for the blog globally.
```toml
[extra]
author = "Your Name"
```
Use Google Analytics. Add your own Google Analytics ID.
```toml
[extra]
google_analytics = "UA—XXXXXXXX-X"
```
Code syntax highlighting. See also [syntax hightlighting](https://www.getzola.org/documentation/getting-started/configuration/#syntax-highlighting).
```toml
[markdown]
highlight_code = true
highlight_theme = "base16-ocean-light"
```
Use KaTeX to support the math notation
```toml
[extra]
katex = true
```
> Note: You can also add the `katex` option on per mardown file of the page or section.
Set date format in the site
```toml
[extra]
timeformat = "%B %e, %Y" # e.g. June 14, 2021, and this is the default format
```
SEO settings, like Open Graph + Twitter Cards
```toml
[extra.seo]
# this image will be used as fallback if a page has no image of its own
image = "tale.png"
image_height = 50
image_width = 50
og_locale = "en_US"
[extra.seo.twitter]
site = "twitter_accout"
creator = "twitter_accout"
[extra.seo.facebook]
admins = "facebook_accout"
publisher = "facebook_accout"
```
Change the words in your speaking language.
```toml
[extra.expressions]
home = "Home" # The homepage's name
pinned = "Pinned" # On the header of the post list
written_by = "Written by" # Like: Written by Aaran Xu
on = "on" # Like: on May 3, 2021
top = "Top" # Go to the top of the page in the post
tags = "Tags" # In the page of Tags
# The contents of the 404 page
p404 = "404: Page not found"
p404_info = "Oops! We can't seem to find the page you are looking for."
p404_back_home_start = "Let's"
p404_back_home_with_link = "head back home"
p404_back_home_end = "."
```
### Custom CSS styles
Just add your own styles to `sass/_custom.scss` file.
## Reporting Issues
We use GitHub Issues as the official bug tracker for the **Tale-Zola**. Please
search [existing issues](https://github.com/aaranxu/tale-zola/issues). Its
possible someone has already reported the same problem.
If your problem or idea is not addressed yet, [open a new issue](https://github.com/aaranxu/tale-zola/issues/new).
## Contributing
We'd love your help! Please see [CONTRIBUTING.md](./CONTRIBUTING.md) to learn
about the kinds of contributions we're looking for.
## License
Tale-Zola is distributed under the terms of the
[MIT license](LICENSE).

Binary file not shown.

After

Width:  |  Height:  |  Size: 182 KiB

View file

@ -3,11 +3,11 @@
title = "Toucan" title = "Toucan"
description = "Inspired from Pelican default theme" description = "Inspired from Pelican default theme"
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://git.42l.fr/HugoTrentesaux/toucan.git" repository = "https://git.42l.fr/HugoTrentesaux/toucan.git"
homepage = "https://git.42l.fr/HugoTrentesaux/toucan" homepage = "https://git.42l.fr/HugoTrentesaux/toucan"
minimum_version = "0.8.0" minimum_version = "0.8.0"

View file

@ -3,11 +3,11 @@
title = "zerm" title = "zerm"
description = "A minimalistic and dark theme based on Radek Kozieł's theme for Hugo" description = "A minimalistic and dark theme based on Radek Kozieł's theme for Hugo"
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/ejmg/zerm.git" repository = "https://github.com/ejmg/zerm.git"
homepage = "https://github.com/ejmg/zerm" homepage = "https://github.com/ejmg/zerm"
minimum_version = "0.8.0" minimum_version = "0.8.0"

View file

@ -3,11 +3,11 @@
title = "henry" title = "henry"
description = "A timeless blog theme" description = "A timeless blog theme"
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/sirodoht/zola-henry" repository = "https://github.com/sirodoht/zola-henry"
homepage = "https://github.com/sirodoht/zola-henry" homepage = "https://github.com/sirodoht/zola-henry"
minimum_version = "0.4.0" minimum_version = "0.4.0"

View file

@ -3,11 +3,11 @@
title = "zola-paper" title = "zola-paper"
description = "A clean theme inspired from hugo-paper." description = "A clean theme inspired from hugo-paper."
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/schoenenberg/zola-paper.git" repository = "https://github.com/schoenenberg/zola-paper.git"
homepage = "https://github.com/schoenenberg/zola-paper" homepage = "https://github.com/schoenenberg/zola-paper"
minimum_version = "0.11.0" minimum_version = "0.11.0"
@ -16,7 +16,7 @@ demo = "https://schoenenberg.github.io/zola-paper"
[extra.author] [extra.author]
name = "Maximilian Schoenenberg" name = "Maximilian Schoenenberg"
homepage = "https://www.schoenenberg.dev" homepage = "https://schoenenberg.dev"
+++ +++
# Zola-Paper # Zola-Paper
@ -27,6 +27,7 @@ A clean theme inspired from hugo-paper.
**Demo:** [https://schoenenberg.github.com/zola-paper](https://schoenenberg.github.com/zola-paper) **Demo:** [https://schoenenberg.github.com/zola-paper](https://schoenenberg.github.com/zola-paper)
![Screenshot](screenshot.png) ![Screenshot](screenshot.png)
![Dark Mode Screenshot](screenshot_dark.png)
## Installation ## Installation
@ -48,4 +49,29 @@ Either way, you will have to enable the theme in your `config.toml`.
theme = "zola-paper" theme = "zola-paper"
``` ```
## Open Graph Integration
This theme has an integration of Open Graph *meta* tags. These are set based on context and available information. See the following example:
```markdown
+++
title = "Lorem ipsum!"
[extra]
author = "Max Mustermann"
author_url = "https://www.facebook.com/example.profile.3"
banner_path = "default-banner"
[taxonomies]
tags = ["rust", "zola", "blog"]
+++
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc eu feugiat sapien. Aenean ligula nunc, laoreet id sem in, interdum bibendum felis. Donec vel dui neque.
<!-- more -->
Ut luctus dolor ut tortor hendrerit, sed hendrerit augue scelerisque. Suspendisse quis sodales dui, at tempus ante. Nulla at tempor metus. Aliquam vitae rutrum diam. Curabitur iaculis massa dui, quis varius nulla finibus a. Praesent eu blandit justo. Suspendisse pharetra, arcu in rhoncus rutrum, magna magna viverra erat, ...
```
Required attributes of the `extra` section is `author`. All other attributes are optional. The path for the `banner_path` attribute has to be relative to the content directory.

View file

@ -3,14 +3,14 @@
title = "pickles" title = "pickles"
description = "A modern, simple, clean blog theme for Zola." description = "A modern, simple, clean blog theme for Zola."
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/lukehsiao/zola-pickles.git" repository = "https://github.com/lukehsiao/zola-pickles.git"
homepage = "https://github.com/lukehsiao/zola-pickles" homepage = "https://github.com/lukehsiao/zola-pickles"
minimum_version = "0.11.0" minimum_version = "0.13.0"
license = "MIT OR Apache-2.0" license = "MIT OR Apache-2.0"
demo = "" demo = ""

View file

@ -3,11 +3,11 @@
title = "Hikari" title = "Hikari"
description = "Fluid, responsive blog theme for Zola" description = "Fluid, responsive blog theme for Zola"
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/waynee95/zola-theme-hikari" repository = "https://github.com/waynee95/zola-theme-hikari"
homepage = "https://github.com/waynee95/zola-theme-hikari" homepage = "https://github.com/waynee95/zola-theme-hikari"
minimum_version = "0.5.1" minimum_version = "0.5.1"

View file

@ -3,16 +3,16 @@
title = "zola.386" title = "zola.386"
description = "Zola port of the BOOTSTRA.386 theme." description = "Zola port of the BOOTSTRA.386 theme."
template = "theme.html" template = "theme.html"
date = 2021-01-09T22:53:10+09:00 date = 2021-05-06T18:30:07+02:00
[extra] [extra]
created = 2021-01-09T22:53:10+09:00 created = 2021-05-06T18:30:07+02:00
updated = 2021-01-09T22:53:10+09:00 updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/lopes/zola.386" repository = "https://github.com/lopes/zola.386"
homepage = "https://github.com/lopes/zola.386" homepage = "https://github.com/lopes/zola.386"
minimum_version = "0.10.1" minimum_version = "0.10.1"
license = "MIT" license = "MIT"
demo = "https://zola-386.netlify.com" demo = "https://zola386.netlify.com"
[extra.author] [extra.author]
name = "José Lopes" name = "José Lopes"

View file

@ -0,0 +1,41 @@
+++
title = "EasyDocs"
description = "An easy way to create docs for your project"
template = "theme.html"
date = 2021-05-06T18:30:07+02:00
[extra]
created = 2021-05-06T18:30:07+02:00
updated = 2021-05-06T18:30:07+02:00
repository = "https://github.com/codeandmedia/zola_easydocs_theme.git"
homepage = "https://github.com/codeandmedia/zola_easydocs_theme"
minimum_version = "0.13.0"
license = "MIT"
demo = "https://easydocs.codeandmedia.com"
[extra.author]
name = "Roman Soldatenkov"
homepage = "https://codeandmedia.com"
+++
## An easy way to create a document library for your project
Demo: [https://easydocs.codeandmedia.com/](https://easydocs.codeandmedia.com/)
This theme for [Zola](https://getzola.org) (static site engine) helps you build and publish your project docs easily and fast. Zola is just one binary that outputs html-pages and additional static assets after building your docs written in Markdown. Thus, you can take the theme, your md-files, Zola and gain flexible and simple website for documentation.
### Step-by-step
As you may have heard Zola is quite flexible :) So, the scenario below is one of hundreds possible ways to make things done, feel free to find your best. Also, Zola provides their own mechanism to install and use themes, see [the docs](https://www.getzola.org/documentation/themes/installing-and-using-themes/).
1. Fork the repo and replace demo-content inside content folder with yours. But take a look to _index.md files. It contains `title` and when you want to have anchor right of your headers add `insert_anchor_links = "right"` to each index. `theme.toml`, screenshot and readme may be deleted too.
2. Inside `config.toml` change URL and title on your own. In extra section you can specify path to your GitHub API for version below the logo on nav, favicon and logo itself. Or just remove the lines if you don't need it. Also, you can configure or turn on some additional settings related to Zola. [Specification is here](https://www.getzola.org/documentation/getting-started/configuration/).
3. In sass/_variables.scss you may change font, color or backgound if you want.
4. Almost done. Now, you should decide how you want to build and where will be hosted your website. You can build it locally and upload to somewhere. Or build in GitHub Actions and host on GitHub Pages / Netlify / CloudFlare Pages / AnyS3CloudStorage. [Howto for GitHub Pages](https://www.getzola.org/documentation/deployment/github-pages/). [My example](https://github.com/o365hq/o365hq.com/blob/main/.github/workflows/main.yml) of GitHub workflow with 2-steps build (the first checks for links and spelling errors, the second uploads to Azure). [Dockerfile](https://github.com/codeandmedia/zola_docsascode_theme/blob/master/Dockerfile) to make Docker image.
Enjoy your docs!
* _Icons: [Office UI Fabric Icons](https://uifabricicons.azurewebsites.net/)_
* _Copy-code-button: [Aaron Luna](https://aaronluna.dev/blog/add-copy-button-to-code-blocks-hugo-chroma/)_

Binary file not shown.

After

Width:  |  Height:  |  Size: 147 KiB

View file

@ -18,6 +18,11 @@ body {
min-height: 100vh; min-height: 100vh;
} }
img {
max-width: 100%;
height: auto;
}
a { a {
color: $link-color; color: $link-color;
text-decoration: none; text-decoration: none;

View file

@ -168,6 +168,12 @@ function initSearch() {
$searchResultsItems.appendChild(item); $searchResultsItems.appendChild(item);
} }
}, 150)); }, 150));
window.addEventListener('click', function(e) {
if ($searchResults.style.display == "block" && !$searchResults.contains(e.target)) {
$searchResults.style.display = "none";
}
});
} }

View file

@ -72,7 +72,7 @@
<h2>Easy to use</h2> <h2>Easy to use</h2>
<p> <p>
From the CLI to the template engine, everything is designed to be intuitive. From the CLI to the template engine, everything is designed to be intuitive.
Don't take my words for it though, look at the Don't take my word for it though, look at the
<a href="{{ get_url(path="@/documentation/_index.md") }}">documentation</a> and see for yourself. <a href="{{ get_url(path="@/documentation/_index.md") }}">documentation</a> and see for yourself.
</p> </p>
</div> </div>

View file

@ -1,4 +1,4 @@
{% extends 'index.html' %} {% extends 'index.html' %}
{% block content %} {% block content %}
I'm overriden in all cases so seeing me is a bug I'm overridden in all cases so seeing me is a bug
{% endblock %} {% endblock %}

View file

@ -1 +1 @@
SHOULDNOTAPPEAR: overriden by site shortcode SHOULDNOTAPPEAR: overridden by site shortcode