{"id":47762200,"url":"https://github.com/flatcar/flatcar-website","last_synced_at":"2026-04-03T05:42:04.428Z","repository":{"id":88159009,"uuid":"123763563","full_name":"flatcar/flatcar-website","owner":"flatcar","description":null,"archived":false,"fork":false,"pushed_at":"2026-04-01T16:35:08.000Z","size":171795,"stargazers_count":8,"open_issues_count":18,"forks_count":54,"subscribers_count":15,"default_branch":"main","last_synced_at":"2026-04-02T01:16:31.501Z","etag":null,"topics":["flatcar","kinvolk"],"latest_commit_sha":null,"homepage":"","language":"HTML","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/flatcar.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"code-of-conduct.md","threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2018-03-04T06:33:40.000Z","updated_at":"2026-04-01T16:35:12.000Z","dependencies_parsed_at":null,"dependency_job_id":"97f8b2f3-b8de-41bf-a119-db2ef7678756","html_url":"https://github.com/flatcar/flatcar-website","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/flatcar/flatcar-website","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flatcar%2Fflatcar-website","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flatcar%2Fflatcar-website/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flatcar%2Fflatcar-website/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flatcar%2Fflatcar-website/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/flatcar","download_url":"https://codeload.github.com/flatcar/flatcar-website/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/flatcar%2Fflatcar-website/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31337046,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-03T04:42:29.251Z","status":"ssl_error","status_checked_at":"2026-04-03T04:42:12.667Z","response_time":107,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["flatcar","kinvolk"],"created_at":"2026-04-03T05:42:03.757Z","updated_at":"2026-04-03T05:42:04.415Z","avatar_url":"https://github.com/flatcar.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv style=\"text-align: center\"\u003e\n\n[![Flatcar OS](https://img.shields.io/badge/Flatcar-Website-blue?logo=data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAyNi4wLjMsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjxzdmcgdmVyc2lvbj0iMS4wIiBpZD0ia2F0bWFuXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB2aWV3Qm94PSIwIDAgODAwIDYwMCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgODAwIDYwMDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPg0KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4NCgkuc3Qwe2ZpbGw6IzA5QkFDODt9DQo8L3N0eWxlPg0KPHBhdGggY2xhc3M9InN0MCIgZD0iTTQ0MCwxODIuOGgtMTUuOXYxNS45SDQ0MFYxODIuOHoiLz4NCjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik00MDAuNSwzMTcuOWgtMzEuOXYxNS45aDMxLjlWMzE3Ljl6Ii8+DQo8cGF0aCBjbGFzcz0ic3QwIiBkPSJNNTQzLjgsMzE3LjlINTEydjE1LjloMzEuOVYzMTcuOXoiLz4NCjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik02NTUuMiw0MjAuOXYtOTUuNGgtMTUuOXY5NS40aC0xNS45VjI2MmgtMzEuOVYxMzQuOEgyMDkuNFYyNjJoLTMxLjl2MTU5aC0xNS45di05NS40aC0xNnY5NS40aC0xNS45djMxLjINCgloMzEuOXYxNS44aDQ3Ljh2LTE1LjhoMTUuOXYxNS44SDI3M3YtMTUuOGgyNTQuOHYxNS44aDQ3Ljh2LTE1LjhoMTUuOXYxNS44aDQ3Ljh2LTE1LjhoMzEuOXYtMzEuMkg2NTUuMnogTTQ4Ny44LDE1MWg3OS42djMxLjgNCgloLTIzLjZ2NjMuNkg1MTJ2LTYzLjZoLTI0LjJMNDg3LjgsMTUxTDQ4Ny44LDE1MXogTTIzMywyMTQuNlYxNTFoNjMuN3YyMy41aC0zMS45djE1LjhoMzEuOXYyNC4yaC0zMS45djMxLjhIMjMzVjIxNC42eiBNMzA1LDMxNy45DQoJdjE1LjhoLTQ3Ljh2MzEuOEgzMDV2NDcuN2gtOTUuNVYyODYuMUgzMDVMMzA1LDMxNy45eiBNMzEyLjYsMjQ2LjRWMTUxaDMxLjl2NjMuNmgzMS45djMxLjhMMzEyLjYsMjQ2LjRMMzEyLjYsMjQ2LjRMMzEyLjYsMjQ2LjR6DQoJIE00NDguMywzMTcuOXY5NS40aC00Ny44di00Ny43aC0zMS45djQ3LjdoLTQ3LjhWMzAyaDE1Ljl2LTE1LjhoOTUuNVYzMDJoMTUuOUw0NDguMywzMTcuOXogTTQ0MCwyNDYuNHYtMzEuOGgtMTUuOXYzMS44aC0zMS45DQoJdi03OS41aDE1Ljl2LTE1LjhoNDcuOHYxNS44aDE1Ljl2NzkuNUg0NDB6IE01OTEuNiwzMTcuOXY0Ny43aC0xNS45djE1LjhoMTUuOXYzMS44aC00Ny44di0zMS43SDUyOHYtMTUuOGgtMTUuOXY0Ny43aC00Ny44VjI4Ni4xDQoJaDEyNy4zVjMxNy45eiIvPg0KPC9zdmc+DQo=)](https://www.flatcar.org/)\n[![Matrix](https://img.shields.io/badge/Matrix-Chat%20with%20us!-green?logo=matrix)](https://app.element.io/#/room/#flatcar:matrix.org)\n[![Slack](https://img.shields.io/badge/Slack-Chat%20with%20us!-4A154B?logo=slack)](https://kubernetes.slack.com/archives/C03GQ8B5XNJ)\n[![Twitter Follow](https://img.shields.io/twitter/follow/flatcar?style=social)](https://x.com/flatcar)\n[![Mastodon Follow](https://img.shields.io/badge/Mastodon-Follow-6364FF?logo=mastodon)](https://hachyderm.io/@flatcar)\n[![Bluesky](https://img.shields.io/badge/Bluesky-Follow-0285FF?logo=bluesky)](https://bsky.app/profile/flatcar.org)\n\n\u003c/div\u003e\n\n# Flatcar Website\n\nFlatcar's website is built with [Hugo](https://gohugo.io/).\n\n## Installing Hugo\n\nYou should install Hugo Extended instead of the regular Hugo version (**check what Hugo version we are using in the [`.env`](./.env) file**).\n\nSo download [Hugo Extended](https://github.com/gohugoio/hugo/releases)\nfrom the releases page, and/or follow\n[these instructions](https://gohugo.io/getting-started/installing/)\nin order to install it.\n\n## Prerequisites\n\n- Hugo Extended (see version in [`.env`](./.env) file)\n- Python 3 with PyYAML (required for docs generation - installed via `make getdeps`)\n- Docker (required for building presentations with Marp) (a `docker` symlink to `podman` works too)\n\n## Adding content\n\nCurrently, you'll need to edit the text files under `content` in this repo to modify the site.\n\n### Blog content\n\nIn order to add content for the blog you can use the `hugo new` command. The format is as follow.\n\n`hugo new blog/YEAR-MONTH-DAY-example-content/index.md`\n\nThe following command will create a new blog post with the [front matter](https://gohugo.io/content-management/front-matter/) defined in the default [archetype](https://gohugo.io/content-management/archetypes/) from the `./archetype` directory.\n\nThe default front matter almost always needs to be modified to a category and tags. Here's an example.\n\n```\n---\ntitle: \"Example Content\"\ndate: 2018-10-26T03:51:27+02:00\ndraft: true\ntags:\n- tag1\n- tag1\ncategories:\n- Announcement\n---\n```\n\n*TODO: Add more content sections (events, job postings, etc.)*\n\n### Presentations\n\nCreate HTML presentations from screenshots using Marp (requires Docker):\n\n1. Create directory: `static/presentations/your-topic/`\n2. Add screenshots (16:9 aspect ratio recommended) and `main.md` in the same directory\n3. Use `theme: screenshot-guide` in your `main.md` for screenshot tutorials\n\n#### Theme Classes\n- **Slide themes** (affects pagination, header/footer defaults):\n  - `\u003c!-- _class: light-theme --\u003e` - For light background slides (default)\n  - `\u003c!-- _class: dark-theme --\u003e` - For dark background slides\n  \n- **Use Marp's built-in directives**:\n  - `\u003c!-- _header: \"Your text\" --\u003e` - Adds header\n  - `\u003c!-- _footer: \"Your text\" --\u003e` - Adds footer\n  \n- **Optional modifiers**:\n  - `invert-header` or `invert-footer` - Swap colors\n  - `solid-header` or `solid-footer` - Less transparent backgrounds\n\nExample:\n```markdown\n\u003c!-- _class: dark-theme --\u003e\n\u003c!-- _footer: \"Step 1: Instructions appear in a light strip at bottom\" --\u003e\n![bg](./dark-screenshot.png)\n```\n4. Run `make presentations` to generate `index.html` in each presentation directory\n5. Embed in docs with: `{{\u003c presentation \"your-topic\" \u003e}}`\n\nNote: The custom theme is located at `static/presentations/screenshot-guide-theme.css`\n\n## Testing\n\nYou should always test your changes locally before creating a pull request. Once you do createi a branch or a pull request, we use Azure Static Web Apps to create previews of the changes so that reviewers and yourself can easily review the changes.\n\n### Testing locally\n\nTo test locally run the following command.\n\n`make run`\n\nThe above command will run a server with the the site available at `http://localhost:1313`. It will also watch for any changes made to the site and regenerate and reload the site when changes are detected. In addition, it disables some caching that can sometimes have confusing results.\n\n### Testing Pull requests\n\nEach pull request will run some checks and create a new preview of the changes that can be access by clicking on the Github pull request status section.\n\n### Testing documentation locally\n\nIf you are working on documentation and would like to see the changes\nbe reflected in a local run of the website, then you need to generate a\nmodule to import the docs and run the website locally with it.\n\nYou can use the `tools/preview_docs.sh` script for conveniently generating\nan import module, e.g.:\n\n`./tools/preview_docs.sh ../flatcar-docs/docs new_latest`\n\n(this creates a `tmp_modules.yaml`)\n\nand then start the local server again with `make run`.\n\n## Changing the published documentation\n\nThe documentation is set under `params.docs` in [config.yaml](./config.yaml) and\nshould look similar to:\n\n```\ngithub_edit_url: https://github.com/flatcar/flatcar-docs/edit/main/docs/\nissues_url: https://github.com/kinvolk/flatcar/issues/new?labels=kind/docs\nexternal_docs:\n- repo: https://github.com/flatcar/flatcar-docs.git\n    name: \"latest\"\n    branch: \"main\"\n    dir: \"docs\"\n```\n\nIf you want to add a new version of the documentation, this can be done by adding a new entry to external_docs:\n```\nexternal_docs:\n- repo: https://github.com/flatcar/flatcar-docs.git\n    name: \"latest\"\n    branch: \"main\"\n    dir: \"docs\"\n- repo: https://github.com/flatcar/flatcar-docs.git\n    name: \"old\"\n    branch: \"tag-1.2.3\"\n    dir: \"docs\"\n```\n\nThis will pull the docs that were versioned by the `tag-1.2.3` and place them under a version called `old`.\n\nBy default, the first version in the list of `external_docs` is considered to be\nthe latest version and so it is the one linked to automatically in the site.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflatcar%2Fflatcar-website","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fflatcar%2Fflatcar-website","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fflatcar%2Fflatcar-website/lists"}