Godot Website is the open-source Jekyll static site generator project behind the official Godot Engine website, converting Markdown collections and YAML data into a static HTML site. This repository contains all source files, templates, and build scripts used to publish godotengine.org, and it is maintained by the Godot community alongside the engine itself.
What is the Godot Website?
The Godot Website is the source code for the official Godot Engine website, a static site generated offline with Jekyll. It takes Markdown files from collections such as _article, _download, and _showcase — each with a YAML metadata header — plus YAML data files like authors.yml and _versions.yml, and produces a complete static site with HTML, CSS, and JavaScript. The project runs on the Jekyll framework with Liquid templating and is built either locally (Ruby 3.2+, Jekyll, Minify) or inside a Docker container using the official jekyll/jekyll image.
Key Features
- Jekyll static generation — The whole site is built by
bundle exec jekyll build(or./build.sh); an optional_config.development.ymloverrides defaults for local use. - Markdown content collections — Blog articles live in
collections/_articlewith required metadata fields:title,excerpt,categories,author,image, anddate; download instructions and showcase entries follow the same pattern in their own folders. - Data-driven downloads — Godot release versions are recorded in
data/_versions.ymlwith fields for name, flavor (stableor preview), release date, release notes link, and an optionalfeaturedmajor version;_data/download_configs.ymland_data/download_platforms.ymldefine platform download links. - Localization infrastructure — The
_i18nfolder holds YAML translation files (default English), processed by a Jekyll plugin with Liquid tags for translation and localized links; localization is currently disabled and a work in progress. - Docker build support — On Linux or Windows you can build the site with
docker run --rm --volume="$PWD:/srv/jekyll" -it jekyll/jekyll:stable ./build.sh; add-p 4000:4000to serve it locally. - Multi-method local serving — After building, the
_sitefolder can be served withpython -m http.server 4000 -d ./_siteor Jekyll's built-in server. - Automated deployment — GitHub Actions builds the site on commits to
masterand publishes the output to thepublishedbranch. - Evergreen browser support — The site targets the latest versions of Chrome, Edge, Firefox, Opera, and Safari (plus Firefox ESR); Internet Explorer is not supported.
Who is it for?
- Godot website contributors — People who write blog posts, update download pages, or add showcase entries edit Markdown and YAML files and submit them via the repo; substantial changes are discussed in issues or the Godot Contributors Chat.
- Jekyll developers — Anyone looking for a real-world Jekyll project structure using collections, data files, and custom plugins can study how
_layouts,_includes, and_pluginsare organized. - Open-source community members — Users who want to help maintain a popular open-source project can contribute translations (once enabled), mirrorlists, or new platform download instructions.
What can you do with the Godot Website?
- Version managers: Add a new Godot release by inserting a record into
data/_versions.ymlwith the version name, flavor, release date, and release notes URL; mark the latest stable with thefeaturedfield for its major version. - Localization contributors: Create a new language file in
_i18n(for examplefr.ymlfor French) and register its label in thelanguageMapin/assets/js/localize.js. - Mirrorlist maintainers: Extend download host coverage by adding a record to
_data/mirrorlist_configs.ymland updating the_plugins/make_download.rbscript to handle the new host.
How does the website build work?
The build pipeline is straightforward: install Ruby 3.2+ and Jekyll, clone the repository, run bundle install, and then either bundle exec jekyll build or ./build.sh. Alternatively, use the Jekyll Docker image with ./build.sh for a one-shot build. The generated static files are written to _site/, which can be served by any web server or with bundle exec jekyll serve for local development.
Pros and cons
- Pros: fully open source, structured around data-driven Markdown collections, container-friendly with Docker, and has a clear deployment flow via GitHub Actions.
- Cons: localization is not yet enabled and remains a work in progress; only evergreen browsers are supported, which may exclude older environments.
FAQ
Is the Godot website open source?
Yes, the website source is open source just like the Godot Engine itself. Contributions are welcome, but substantial changes should be discussed ahead of time through issues or the Godot Contributors Chat.
What Ruby version and tools do I need to build it?
You need Ruby 3.2 or later, Jekyll, and the Minify tool. The README warns that using the latest Ruby versions can cause build issues, so it recommends the specified version.
How can I serve the site locally?
After building, run bundle exec jekyll serve from the repo root, or serve the _site directory with Python using python -m http.server 4000 -d ./_site. With Docker, add -p 4000:4000 to the run command.
Does the website work in Internet Explorer?
No. The website only supports evergreen browsers — the latest version and N-1 of Chrome, Edge, Firefox, Opera, and Safari, plus the latest Firefox ESR. Internet Explorer is explicitly not supported.





