Here are some frequently asked questions. If you have a different question, please check if it was not already answered in the Q&A section of the GitHub Discussions. If not, feel free to ask a new question there.
Yes, if you are using release v0.3.5 or later, the website will automatically and correctly re-deploy right after your first commit. Please make some changes (e.g., change your website info in _config.yml), commit, and push. Make sure to follow deployment instructions. (Relevant issue: 209.)
foo.com). My custom domain becomes blank in the repository settings after each deployment. How do I fix that?You need to add CNAME file to the main or source branch of your repository. The file should contain your custom domain name. (Relevant issue: 130.)
Unknown tag 'toc'. How do I fix that?Make sure you followed through the deployment instructions in the previous section. You should have set the deployment branch to gh-pages. (Related issue: 1438.)
If the website does not load the theme, the layout looks weird, and all links are broken, being the main page displayed this way:

make sure to correctly specify the url and baseurl paths in _config.yml. Set url to https://<your-github-username>.github.io or to https://<your.custom.domain> if you are using a custom domain. If you are deploying a personal or organization website, leave baseurl empty (do NOT delete it). If you are deploying a project page, set baseurl: /<your-project-name>/. If all previous steps were done correctly, all is missing is for your browser to fetch again the site stylesheet. For this, you can:
Make sure to correctly specify the url and baseurl paths in _config.yml. RSS Feed plugin works with these correctly set up fields: title, url, description and author. Make sure to fill them in an appropriate way and try again.
related_blog_posts. Why?This is probably due to the classifier reborn plugin, which is used to calculate related posts. If the error states Liquid Exception: Zero vectors can not be normalized... or sqrt': Numerical argument is out of domain - "sqrt", it means that it could not calculate related posts for a specific post. This is usually caused by empty or minimal blog posts without meaningful words (i.e. only stop words) or even specific characters you used in your posts. Also, the calculus for similar posts are made for every post, which means every page that uses layout: post, including the announcements. To change this behavior, simply add related_posts: false to the front matter of the page you don’t want to display related posts on. Another solution is to disable the lsi (latent semantic indexing) entirely by setting the lsi flag to false in _config.yml. Related issue: #1828.
Open .git/config file using your preferred editor. Change the https portion of the url variable to ssh. Try deploying again.
Error: Input required and not supplied: token. How do I fix that?You need to create a personal access token and add it as a secret named LIGHTHOUSE_BADGER_TOKEN to your repository. For more information, check lighthouse-badger documentation on how to do this.
prettier code formatter workflow run failed for main branch. How do I fix that?We implemented support for Prettier code formatting in #2048. It basically ensures that your code is well formatted. If you want to ensure your code is compliant with Prettier, you have a few options:
Docker and using development containers, Prettier is already includedDocker, it is simple to integrate it with your preferred IDE using an extensionInstalling node version manager (nvm) and Installing Node (latest version)), then, install it using npm install prettier inside the project directory, or install it globally on your computer using npm install -g prettier. To run Prettier on your current directory use npx prettier . --write.You can also disable it for your repo. For this, just delete the file .github/workflows/prettier.yml.
Probably your GitHub workflow is throwing an error like this:
/opt/hostedtoolcache/Ruby/3.0.2/x64/lib/ruby/gems/3.0.0/gems/bundler-2.5.5/lib/bundler/runtime.rb:304:in `check_for_activated_spec!': You have already activated uri 0.10.1, but your Gemfile requires uri 0.13.0. Since uri is a default gem, you can either remove your dependency on it or try updating to a newer version of bundler that supports uri as a default gem. (Gem::LoadError)
or maybe displaying a warning like one of these:
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v3. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
Node.js 16 actions are deprecated. Please update the following actions to use Node.js 20: actions/checkout@v2, actions/cache@v2. For more information see: https://github.blog/changelog/2023-09-22-github-actions-transitioning-from-node-16-to-node-20/.
The following actions uses node12 which is deprecated and will be forced to run on node16: actions/checkout@v2, actions/cache@v2. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
If that’s the case, you are using deprecated libraries/commands. This happens because you are using a very old version of al-folio. To fix this it is recommended upgrading your code to the latest version of the template. You will probably need to do some manual merging. If you find it easier, you could create a copy of your repository, do a fresh installation from the template and reapply all your changes. For this I would recommend a tool like meld or winmerge to check the differences between directories/files.
Note that libraries tend to be deprecated and support for them dropped as they are no longer maintained, and keep using them involves security breaches. Also, some of these deprecations are enforced, for example, by GitHub itself, so there’s so much we can do. We have also added tons of new functionality, as well as tidying things up and improving the overall speed and structure, so you could also benefit from these improvements.
Could not find gem 'jekyll-diagrams' in locally installed gems. How do I fix that?jekyll-diagrams support was dropped in #1992 in favor of using mermaid.js directly. Simply update your code to get the latest changes.
To update the Academicons version, you need to download the latest release from the Academicons website. After downloading, extract the zip file and copy the files academicons.ttf and academicons.woff from the fonts/ directory to assets/fonts/ and the file academicons.min.css from the css/ directory to assets/css/.
To update the Font Awesome version, you need to download the latest release “for the web” from the Font Awesome website. After downloading, extract the zip file and copy the scss/ directory content to _sass/font-awesome/ and the webfonts/ content to assets/webfonts/.
To update the Tabler Icons version, you need to download the latest release from the Tabler Icons website. After downloading, extract the zip file and copy the files tabler-icons-filled.scss, tabler-icons-outline.scss, and tabler-icons.scss from the webfont/ directory to _sass/tabler-icons/, and all the files from webfont/fonts/ to assets/fonts/.
GitHub actions are a way to automate tasks in the repository. They are defined in .github/workflows/ directory. Each file in this directory is a workflow. Workflows are made up of one or more jobs, and each job runs on a virtual machine hosted by GitHub. You can see the status of the workflows in the Actions tab of your repository. For more information, check the GitHub Actions documentation.
Currently we have the following workflows:
axe.yml: does some accessibility testing in your site. It uses the axe cli tool with a chrome driver to render the webpage and allow the analysis. Must be run manually, since fixing some of the issues is not straightforwardbroken-links-site.yml: checks for broken links in your built website with the lychee-actionbroken-links.yml: checks for broken links in your repository with the lychee-actiondeploy-docker-tag.yml: adds some metadata to the docker image and pushes it to Docker Hubdeploy-image.yml: deploys a new docker image with the latest changes to Docker Hubdeploy.yml: deploys the website to GitHub Pagesdocker-slim.yml: deploys a smaller version of the docker image to Docker Hub with the docker-slim-actionlighthouse-badger.yml: runs a lighthouse test for your site with the lighthouse-badger-action, saving the results in the repository for easy inspecting, as can be seen here. For more information on how to enable this workflow, check our FAQ question about itprettier-comment-on-pr.yml: not working. For now, this action is disabled. It was supposed to run prettier on the PRs and comment on them with the changes needed. For more information, check issue 2115prettier.yml: runs prettier on the code to ensure it is well formatted. For more information, check our FAQ question about itIn the configuration file _config.yml the tag google-site-verification should be updated to use this functionality. Here is how you can proceed,
<meta name="google-site-verification" content="GoogleSearchConsoleID" />.content is the Google Search Console ID that can be used in the template. e.g. google-site-verification: GoogleSearchConsoleID. Now set the property enable_google_verification: true.It looks like the Domain type property in the Google Search Console to verify the ownership of all URLs across all subdomains with GitHub Pages does not work.