-
Notifications
You must be signed in to change notification settings - Fork 3
Repository Structure
You do not need to understand every folder before making a small change. Use this page to find the right file.
Some names begin with an underscore, such as _data. That is normal in Jekyll and tells Jekyll that the folder has a special purpose.
| Path | Purpose |
|---|---|
index.html |
Homepage source. |
pages/ |
Public pages. Each page declares an explicit permalink. |
_articles/ |
News posts grouped into language folders. See Publishing News. |
_layouts/ |
Reusable page frames that place content inside the shared website design. |
_includes/ |
Smaller reusable pieces such as the navigation, footer, and cards. |
_data/ |
Shared and localized information about games, departments, staff, interface text, languages, and links. |
assets/css/style.css |
Main production stylesheet. |
assets/css/news.css |
Article-specific styles. |
assets/js/main.js |
Site-wide interaction behavior. |
assets/img/ |
Game and general image assets. |
assets/staffpfp/ |
Public staff profile images. |
assets/mojang/ |
Retained font and visual asset library. Only selected font files are published. |
assets/extra/ |
Extra assets that are not currently in use. |
tools/verify-site.rb |
Project-specific checks that catch missing pages, information, and images. |
.github/workflows/site-checks.yml |
Instructions GitHub follows to check a pull request automatically. |
_config.yml |
Main Jekyll settings, including the site address and files that must not be published. |
sitemap.xml |
The single multilingual search-engine sitemap generated at the site root. |
_site/ |
Generated production output; never edit or commit it. |
A page starts with a small settings block called front matter. It sits between two --- lines and tells Jekyll the page title, public address, and layout.
A layout is a reusable page frame. For example, the page layout adds the main heading and content area. It then uses the default layout, which adds the navigation, footer, styles, and scripts.
Department pages use the department layout and select a department record by key. News articles use the news layout and resolve their author through _data/staff.yml.
-
_data/games.yml: game names, descriptions, images, public addresses, and footer links. -
_data/departments.yml: department listings, detail content, staff grouping, and footer department links. -
_data/staff.yml: public profiles and stable article author identifiers. -
_data/translations.yml: shared interface text for every language. -
_data/languages.yml: visible language names used by the switcher. -
_data/site.yml: localized server addresses and shared external links.
These are the single official copies of shared information. If a link or person's name appears in several places, change its data record instead of editing every page separately. See Managing Site Data.
The verifier currently protects these routes:
/
/404.html
/about
/articles
/contact
/departments/
/departments/minecraft
/departments/roblox
/departments/unity
/feedback
/games
/games/obby-of-dominance
/games/sacred-cubes
/rules
/sitemap
/staff
Existing news addresses are also protected. Renaming an article file changes its public address, which can break bookmarks and shared links.
English is the default language, so these routes are served without /en-us/.
Chinese versions use /zh-cn/. See Localization for the complete routing
and translation rules.
_config.yml excludes repository-only material and unused font formats. In particular, the public build must not contain AGENTS.md, README.md, tools/, vendor/, or font specimen HTML pages.