# do NOT include a trailing slash on the base URL base_url="https://abridge.netlify.app" # Usable site directly from disk, Including Search: "/home/jieiku/.dev/abridge/public" # Also set index_format = "elasticlunr_javascript", and in [extra] uglyurls = true, integrity = false # If you use the npm/node script then all you have to do is set offline = true, and everything else is automatic. title = "Abridge" description = "Abridge is a fast and lightweight Zola theme using semantic html, abridge.css class-light CSS, and No Mandatory JS." #theme = "abridge" default_language = "en" compile_sass = true minify_html = false build_search_index = true generate_feed = true taxonomies = [ # {name = "categories", feed = true}, {name = "tags", feed = true}, ] #feed_filename = "atom.xml" #output_dir = "public" #ignored_content = ["*.{graphml,xlsx}", "temp.*"] #hard_link_static = false # set to true to hard link instead of copying, useful for very large files. [search] # Options specific to elasticlunr search. index_format = "elasticlunr_json" # elasticlunr_json, elasticlunr_javascript include_title = true # include title of page/section in index include_description = true # include description of page/section in index include_content = true # include rendered content of page/section in index # truncate_content_length = 100 # Truncate at nth character. May be useful if index is getting too large. [markdown] highlight_code = true highlight_theme = "css" render_emoji = false external_links_target_blank = true # rel="noopener" external_links_no_follow = false # rel="nofollow" external_links_no_referrer = false # rel="noreferrer" smart_punctuation = false # `...` to `…`, `"quote"` to `“curly”` etc # Any Extra language you do not use, delete or comment out the extra language sections: [languages.fr] title = "Abridge" description = "Abridge est un thème Zola rapide et léger utilisant le html sémantique, le CSS abridge.css class-light et aucun JS obligatoire." generate_feed = true build_search_index = true search.include_description = true # include description of page/section in index taxonomies = [ # {name = "categories", feed = true}, {name = "tags", feed = true}, ] [languages.fr.translations] flag = "🇫🇷" date_locale = "fr_FR" Search = "Recherche" Recent_Posts = "Articles Récents" Updated = "Modifié" Index = "Indice" Powered_by = "Propulsé" and = "et" About = "Sur" Posts = "Articles" Categories = "Catégories" Tags = "Mots-clés" Contact = "Contact" Privacy = "Confidentialité" Sitemap = "Plan du site" ### Page not found, maybe moved or not in this language 404_not_found = "Page introuvable, peut-être déplacée ou non dans cette langue" ### Try searching or 404_try_search = "Essayez de rechercher ou" ### go to homepage 404_go_home = "allez à la page d'accueil" copyright_override = '© $CURRENT_YEAR $SITE_TITLE • Le contenu du site Web est sous licence CC BY 4.0.' #[languages.es.translations] #flag = "🇪🇸" [extra] ############################################################################### ### Language ### https://www.w3schools.com/tags/ref_country_codes.asp ### https://tera.netlify.app/docs#date ############################################################################### date_locale = "en_US" language_code = "en-US" flag.en = "🇬🇧" flag.fr = "🇫🇷" #flag.es = "🇪🇸" ############################################################################### ### Layout & Format ### position: top, bottom, both, false(hidden) ### size: s95, s90, s85, s80, s75, s70, false(full size) ### divider: " " "·" "•" ############################################################################### menu = [ {url = "about", name = "About", slash = true, blank = false}, {url = "archive", name = "Posts", slash = true, blank = false}, # {url = "categories", name = "Categories", slash = true, blank = false}, {url = "tags", name = "Tags", slash = true, blank = false}, ] menu_footer = [ {url = "about", name = "About", slash = true, blank = false}, {url = "contact", name = "Contact", slash = true, blank = false}, {url = "privacy", name = "Privacy", slash = true, blank = false}, {url = "sitemap.xml", name = "Sitemap", slash = false, blank = true}, ] recent = true # TOC / index recent_items = 15 meta_index = { position="bottom", size="s90", author=false, readtime=false, readstring="min", date=true, updated=false, categories_tags=true, divider=" " } meta_post = { position="top", size="s95", author=true, readtime=false, readstring="min read", date=true, updated=true, categories_tags=true, divider=" " } hide_section_dates = false # hides the date for sections that use posts.html as their template. hide_page_nextprev_titles = false # hides the next/previous titles for pages that use page.html as their template. title_size_index = "s85" # size: s95, s90, s85, s80, s75, s70, false(full size) footer_size = "s90" # size: s95, s90, s85, s80, s75, s70, false(full size) footer_credit = true #footer_credit_override = '
' #archive_reverse = true # Set to True to sort posts chronologically per year instead of newest first on the archive page: example.com/archive/ ### Uncomment one of the below lines, or neither, depending on which type of logo you want to use: #logo = { file="logo.svg", width="32", height="32", alt="Abridge", text="bridge" } #textlogo = 'Abridge' textlogo = 'bridge' sitedesc = false # enables or disables the display of the site description below the logo. headhr = false # show or hide horizontal rule below header foothr = true # show or hide horizontal rule above footer ### $CURRENT_YEAR and $SITE_TITLE can be used anywhere within the copyright, you can change their position or you can also delete them and type whatever you want instead. #copyright = false # set to false to disable the copyright. #copyright_override = '© 2019-$CURRENT_YEAR $SITE_TITLE' #copyright_override = '© $CURRENT_YEAR $SITE_TITLE • Website content is licensed CC BY 4.0.' ############################################################################### ### meta/seo/analytic tags ### To disable title_addition but keep built in page additions eg, Posts page: "Posts | Abridge" set title_addition to an empty string ### To always set the page title exactly eg "Abridge" then comment out title_addition or set to false (not recommend, bad for SEO) ############################################################################### title_separator = "|" # Separator between title and title_addition, set as |, -, _, etc title_addition = "Fast & Lightweight Zola Theme" # a default value for title addition author = "Jake G" # Put Your Name here keywords = "Abridge, Abridge.css, Zola, Theme, Zola Theme, getzola, Semantic Html, Fast, lightweight" # used for the primary site index banner = "banner.png" # Used as default image for OpenGraph/Twitter if page specific image is undefined. twitter_meta = "your-user-name" # for SEO: twitter:site and twitter:creator google = "Your Google Site verification code." bing = "Your Bing Site verification code." seo = true # enable or disable seo-related meta tags: opengraph, facebook, twitter #dev = false # development mode, if true then robots.txt should prevent search indexing. ############################################################################### ### Footer social links; these are used in macros/social.html ### https://github.com/Jieiku/abridge/blob/master/templates/macros/social.html ############################################################################### feed = true # this adds the RSS feed icon in the footer. mail = "name@example.com" mastodon = "@your-user-name" element = "matrix.example.com" buymeacoffee = "your-user-name" kofi = "your-user-name" discord = "your-discord" # Everything after https://discord.com/ eg: invite/my-server *or* servers/my-server-id twitter = "your-user-name" facebook = "your-user-name" linkedin = "your-user-name" gitlab = "your-user-name" github = "your-user-name" codeberg = "your-user-name" # Everything after https://codeberg.org/ eg: username *or* username/repository github_sponsor = "your-user-name" bitbucket = "your-user-name" python = "your-user-name" docker = "your-user-name" stack = "your-user-name" instagram = "your-user-name" pinterest = "your-user-name" twitch = "your-user-name" youtube = "channel/your-channel-id" researchgate = "your-profile-id" ############################################################################### ### Commenting System for visitors to leave comments on pages. ### hyvor talk ############################################################################### #comments.hyvor = "9366" # hyvor website id, comment out to disable. #comments.hyvorcolor = "os" # set the color property for hyvor ############################################################################### ### Resource Files ### You can load extra css files if you need to, just separate by comma: ### stylesheets = [ "abridge.css", "extra.css" ] ### search_library, library to use. valid values: ### false, "elasticlunr", "tinysearch", "stork" ### offline: implies uglyurls=true and integrity=false, when true NPM/node will ### automatically set the path for the base_url, it will build the site, ### then set the base_url back to what it was. This is a way to build a completely ### offline site, a feature not possible with Zola alone. ### The PWA feature is another way to build an offline site, so there are now two ### different ways to build an offline site with Abridge. ### ### For most people the value of online_url will be the same as base_url. ### online_url is used to restore the base_url after generating an Offline site. ### When you set offline = true and run the npm script, the base_url is set to the absolute path on disk. ### Once you set offline = false, the base_url will be set back to the value of online_url when you run the npm script again. ############################################################################### # do NOT include a trailing slash on the online URL online_url="https://abridge.netlify.app" offline = false # implies uglyurls=true and integrity=false, when true NPM/node will automatically set the path for the base_url, it will build the site, then set the base_url back to what it was. uglyurls = false # if set to true then links are generated with the full path. eg https://abridge.netlify.app/index.html integrity = true # increases site security, should normally be true. (setting to false is useful during js development) js_bundle = true # multiple javascript files combined into a single file (setting to false is useful during js development) js_copycode = true # The copy button on code blocks that allows you to copy them to the clipboard. js_email_encode = true # obfuscates email address in footer js_prestyle = true # used to preload: FontAwesome, Katex, external Google Fonts js_switcher = true # The button that allows manually changing between light/dark mode. js_switcher_default = "dark" # default nojs switcher mode: dark, light (make sure to also set $switcherDefault in abridge.scss) search_library = 'elasticlunr' stylesheets = ["abridge.css"] pwa = true # true to load the service worker webmanifest = "manifest.min.json" # Required for PWAs ############################################################################### ### Favicons, comment out a line to disable loading some or all of these if needed. ############################################################################### favicon_theme_color = "#333333" favicon_ms_color = "#333333" favicon_mask = "safari-pinned-tab.svg" # safari-pinned-tab.svg favicon_mask_color = "#ff9900" favicon_svg = "favicon.svg" # favicon.svg favicon180 = "apple-touch-icon.png" # apple-touch-icon.png favicon32 = "favicon-32x32.png" # favicon-32x32.png favicon16 = "favicon-16x16.png" # favicon-16x16.png ############################################################################### ### Icons ### Loading the entire fontawesome icon collection will negatively impact your sites performance. ### For a lightweight solution consider adding only the icons that you need to the following file: ### https://github.com/Jieiku/abridge/blob/master/sass/include/_icons.scss ############################################################################### ### To disable any of these icons set them to "false" (will default to unicode icons instead) #icon_search = "svgs search" # Search button in search box. #icon_adjust = "svgs adjust" # Theme Switcher button in top menu. (add class svgh to change colors on hover) #icon_first = "svgs svgh angll" # Pagination First Page. #icon_prev = "svgs svgh angl" # Pagination Previous Page. #icon_next = "svgs svgh angr" # Pagination Next Page. #icon_last = "svgs svgh angrr" # Pagination Last Page. #icon_top = "svgs svgh angu" # Back to Top Button. #icon_read = "svgs fa-solid fa-glasses" # displayed in metadata on index and below title on page. #icon_date = "svgs fa-solid fa-calendar" # displayed in metadata on index and below title on page. #icon_info = "svgs fa-solid fa-circle-info" # displayed in metadata on index and below title on page for categories/tags #icon_author = "svgs fa-solid fa-pen-fancy" # displayed in metadata on index and below title on page. ### Uncomment below line to load fontawesome, eg: #fontawesome = "https://cdn.jsdelivr.net/npm/@fortawesome/fontawesome-free@6.1.1/css/all.min.css" #icon_read = "svgs fa-solid fa-glasses" # displayed in metadata on index and below title on page. #icon_date = "svgs fa-solid fa-calendar" # displayed in metadata on index and below title on page. #icon_info = "svgs fa-solid fa-circle-info" # displayed in metadata on index and below title on page for categories/tags #icon_author = "svgs fa-solid fa-pen-fancy" # displayed in metadata on index and below title on page. ############################################################################### ### Security Settings ### Security Headers should preferably be set by your webserver (Nginx, Apache) ### https://observatory.mozilla.org https://csp-evaluator.withgoogle.com/ ### If you are unable to load your security headers with your webserver, this will load a couple of them as meta tags. ### There are many other security related headers most of which can only be set by the webserver method. ### If you happen to use Netlify, you can define all the headers in your netlify.toml file: ### https://github.com/Jieiku/abridge/blob/master/netlify.toml ### UnComment any of these lines to enable their meta tags. ############################################################################### #security_header_referrer = "strict-origin-when-cross-origin" #security_header_csp = "default-src 'none'; object-src 'none'; base-uri 'self'; manifest-src 'self'; connect-src 'self'; form-action 'self'; script-src 'self'; img-src 'self' data: cdn.cloudflare.com; frame-src 'self' www.youtube-nocookie.com player.vimeo.com; media-src 'self' data: cdn.cloudflare.com www.youtube-nocookie.com player.vimeo.com; font-src 'self' cdn.cloudflare.com cdn.jsdelivr.net fonts.gstatic.com; style-src 'self' cdn.cloudflare.com cdn.jsdelivr.net fonts.googleapis.com;" ############################################################################### ### FONTS - Abridge by default uses the System Font Stack ### https://css-tricks.com/snippets/css/system-font-stack/ ### However if you need you can load a specific font below, ### make sure to have the relevant woff2 fonts in your static/fonts folder ### I measured the least Cumulative Layout Shift with: Roboto, Lato, Arimo ############################################################################### ### For externally loaded Fonts, make sure to include the FULL url including the https prefix: #fonts = [ {url = "https://fonts.googleapis.com/css?family=Roboto:400,700,italic|Roboto+Mono:400,italic"} ] ### Local fonts are defined in the css, https://github.com/Jieiku/abridge/tree/master/COPY-TO-ROOT-SASS/fonts/_Arimo.scss ### To load a local font resource, look at the bottom of this file: https://github.com/Jieiku/abridge/blob/master/COPY-TO-ROOT-SASS/abridge.scss ### After loading them in the CSS, You can also define them below and it will add the preload tag to the head. ### preloading fonts will eliminate Content Layout Shift, but will hurt with page load time. (not recommended) #fonts = [ # {url = "fonts/Roboto-Mono.woff2"}, # {url = "fonts/Roboto-Mono-Italic.woff2"}, # {url = "fonts/Roboto.woff2"}, # {url = "fonts/Roboto-Italic.woff2"}, # {url = "fonts/Roboto-Bold.woff2"}, #] ############################################################################### ### Katex - math js library, used to to render mathematical notations ### It's best to enable katex on a per page bases as I did here: ### https://abridge.netlify.app/overview-math/ ### https://github.com/Jieiku/abridge/blob/master/content/overview-math.md?plain=1#L11-L13 ### Otherwise you will load the katex related javascript on every page! ############################################################################### #katex_options = "js/katexoptions.js" #katex_bundle = "js/katexbundle.min.js" ### Load Katex Local Resources #katex_css = "katex.min.css" # Fonts - load the css/fonts locally #katex_js = "js/katex.min.js" # use local js, so that we dont have to whitelist cdn.jsdelivr.net for script src in CSP #mathtex_js = "js/mathtex-script-type.min.js" # use local js, so that we dont have to whitelist cdn.jsdelivr.net for script src in CSP #katex_autorender_js = "js/katex-auto-render.min.js" ### Load Katex External Resources #katex_css = "https://cdn.jsdelivr.net/npm/katex@0.15.6/dist/katex.min.css" # Fonts - use remote fonts #katex_css_integrity = "sha384-ZPe7yZ91iWxYumsBEOn7ieg8q/o+qh/hQpSaPow8T6BwALcXSCS6C6fSRPIAnTQs" #katex_js = "https://cdn.jsdelivr.net/npm/katex@0.15.6/dist/katex.min.js" #katex_js_integrity = "sha384-ljao5I1l+8KYFXG7LNEA7DyaFvuvSCmedUf6Y6JI7LJqiu8q5dEivP2nDdFH31V4" #katex_autorender_js = "https://cdn.jsdelivr.net/npm/katex@0.15.6/dist/contrib/auto-render.min.js" #katex_autorender_js_integrity = "sha384-+XBljXPPiv+OzfbB3cVmLHf4hdUFHlWNZN5spNQ7rmHTXpd7WvJum6fIACpNNfIR" #mathtex_js = "https://cdn.jsdelivr.net/npm/katex@0.15.6/dist/contrib/mathtex-script-type.min.js" #mathtex_js_integrity = "sha384-jiBVvJ8NGGj5n7kJaiWwWp9AjC+Yh8rhZY3GtAX8yU28azcLgoRo4oukO87g7zDT" #math = false # Recommended setting false, and enable on per page bases instead. #math_auto_render = false # Recommended setting false, and enable on per page bases instead.