base_url = "https://welpo.github.io/tabi"
title = "~/tabi"
description = "tabi is a fast, lightweight, and modern Zola theme with multi-language support, optional JavaScript, and a perfect Lighthouse score."
author = "welpo"
generate_feed = true
compile_sass = true
minify_html = true
taxonomies = [
{ name = "tags" , feed = true } ,
]
[ markdown ]
external_links_target_blank = true
highlight_code = true
highlight_theme = "css"
default_language = "en"
[ languages . es ]
title = "~/tabi"
description = "tabi es un tema de Zola rápido, liviano y moderno con JavaScript opcional y una puntuación perfecta en Lighthouse."
generate_feed = true
compile_sass = true
minify_html = true
taxonomies = [
{ name = "tags" , feed = true } ,
]
[ languages . ca ]
title = "~/tabi"
description = "tabi és un tema de Zola ràpid, lleuger i modern amb JavaScript opcional i una puntuació perfecta a Lighthouse."
generate_feed = true
compile_sass = true
minify_html = true
taxonomies = [
{ name = "tags" , feed = true } ,
]
[ languages . es . translations ]
language_name = "Español"
date_locale = "es_ES"
# Menu items.
blog = "blog"
archive = "archivo"
tags = "etiquetas"
words = "palabras"
projects = "proyectos"
# Other text.
tags_title = "Todas las etiquetas"
404 _error = "La página que has solicitado parece no existir o aún no se ha traducido a tu idioma. Revisa la URL en busca de errores o"
go_home = "regresa a la página de inicio"
read_more = "Leer más"
all_posts = "Todas las entradas"
all_tags = "Todas las etiquetas"
min_read = "min de lectura"
powered_by = "Impulsado por"
and = "y"
post = "entrada"
posts = "entradas"
prev = "Anterior"
next = "Siguiente"
of = "de"
draft = "BORRADOR"
table_of_contents = "Tabla de contenido"
last_updated_on = "Última actualización el"
show_original_quote = "Mostrar cita original"
show_translation = "Mostrar traducción"
# Quotation marks for multilingual quote shortcode.
open_quotation_mark = "«"
close_quotation_mark = "»"
[ languages . ca . translations ]
language_name = "Català"
date_locale = "ca_ES"
# Menu items.
blog = "blog"
archive = "arxiu"
tags = "etiquetes"
words = "paraules"
projects = "projectes"
# Other text.
tags_title = "Totes les etiquetes"
404 _error = "La pàgina que has sol·licitat sembla que no existeix o encara no s'ha traduït al teu idioma. Comprova l'URL per detectar errors o"
go_home = "torna a la pàgina d'inici"
read_more = "Llegir més"
all_posts = "Totes les entrades"
all_tags = "Totes les etiquetes"
min_read = "min de lectura"
powered_by = "Propulsat per"
and = "i"
post = "entrada"
posts = "entrades"
prev = "Anterior"
next = "Següent"
of = "de"
draft = "ESBORRANY"
table_of_contents = "Taula de contingut"
last_updated_on = "Última actualizació el"
show_original_quote = "Mostra la cita original"
show_translation = "Mostra la traducció"
# Quotation marks for multilingual quote shortcode.
open_quotation_mark = "«"
close_quotation_mark = "»"
[ extra ]
language_name . ca = "Català"
language_name . en = "English"
language_name . es = "Español"
# Enable JavaScript theme toggler for dark/light mode (and automatic switching).
# The default setting is the light theme.
theme_switcher = true
# Add a "copy" button to codeblocks (loads ~700 bytes of JavaScript).
copy_button = true
# Date format used when listing posts (main page, /blog section, tag posts list…)
# Default is "6th July 2049" in English and "%d %B %Y" in other languages.
long_date_format = "%d %B %Y"
# Date format used for blog posts.
# Default is "31st Dec 2011".
short_date_format = ""
# Custom separator used in title tag and posts metadata (between date, time to read, and tags).
separator = "•"
# Full path after the base URL required. So if you were to place it in "static" it would be "/favicon.ico"
favicon = ""
# Add an emoji here to use it as favicon.
# Compatibility: https://caniuse.com/link-icon-svg
favicon_emoji = "🌱"
# This header image is used for SEO. For example if you were to share an image via Messenger/Instagram/Twitter a preview picture is also presented
headerImage = ""
menu = [
{ name = "blog" , url = "blog/" } ,
{ name = "archive" , url = "archive/" } ,
{ name = "tags" , url = "tags/" } ,
{ name = "projects" , url = "projects/" } ,
]
# The RSS icon will be shown if (1) it's enabled and (2) the following variable is set to true.
feed_icon = true
# The icons available can be found in "social_icons" in the "static" folder.
socials = [
{ name = "github" , url = "https://github.com/welpo/" , icon = "github" } ,
{ name = "soundcloud" , url = "https://soundcloud.com/oskerwyld" , icon = "soundcloud" } ,
{ name = "instagram" , url = "https://instagram.com/oskerwyld" , icon = "instagram" } ,
{ name = "youtube" , url = "https://youtube.com/@oskerwyld" , icon = "youtube" } ,
{ name = "spotify" , url = "https://open.spotify.com/artist/5Hv2bYBhMp1lUHFri06xkE" , icon = "spotify" } ,
]
# Custom security headers. What urls should your website be able to connect to?
# You need to specify the CSP and the URLs associated with the directive.
# Useful if you want to load remote content safely (embed YouTube videos, which needs frame-src, for example).
# Default directive is self.
# Default config, allows for https remote images and embedding YouTube and Vimeo content.
# This configuration (along with the right webserver settings) gets an A+ in Mozilla's Observatory: https://observatory.mozilla.org
allowed_domains = [
{ directive = "font-src" , domains = [ "'self'" , "data:" ] } ,
{ directive = "img-src" , domains = [ "'self'" , "https://*" , "data:" ] } ,
{ directive = "script-src" , domains = [ "'self'" ] } ,
{ directive = "style-src" , domains = [ "'self'" ] } ,
{ directive = "frame-src" , domains = [ "player.vimeo.com" , "https://www.youtube-nocookie.com" ] } ,
]
# Custom subset of characters for the header.
# If set to true, the `static/custom_subset.css` file will be loaded first.
# This avoids a flashing text issue in Firefox.
# Please see https://welpo.github.io/tabi/blog/custom-font-subset/ to learn how to create this file.
custom_subset = true
# giscus support for comments. https://giscus.app
# TODO: make sure giscus / utterances are added to the Custom security headers when enabled
# TODO: Mention this fact in the docs
[ extra . giscus ]
enabled_for_all_posts = false # Enables utterances on all posts. You can also do it on a post-per-post basis by setting `utterances = true` in the [extra] section of the post's front matter.
repo = "yourname/yourrepository"
enable_reactions = true
comment_box_above_comments = true
lazy_loading = true
light_theme = "noborder_light"
dark_theme = "noborder_dark"
# TODO: Set data-lang to page's language
# <script src="https://giscus.app/client.js"
# data-repo-id="[REPOSITORI ID]"
# data-category="[NOM CATEGORIA]"
# data-category-id="[ID CATEGORIA]"
# data-mapping="pathname"
# data-strict="0"
# data-lang="ca"
# crossorigin="anonymous"
# async>
# </script>
# Utterances support for comments. https://utteranc.es
[ extra . utterances ]
enabled_for_all_posts = false # Enables utterances on all posts. You can also do it on a post-per-post basis by setting `utterances = true` in the [extra] section of the post's front matter.
repo = "welpo/test-utterances" # https://utteranc.es/#heading-repository
issue_term = "pathname" # Available: pathname; url; title. More info: https://utteranc.es/#heading-mapping
label = "💬" # https://utteranc.es/#heading-issue-label
theme = "preferred-color-scheme" # https://utteranc.es/#heading-theme. If you use the theme switcher, it's probably best to use "preferred-color-scheme"
lazy_loading = true