{"id":35749406,"url":"https://github.com/giantswarm/docs","last_synced_at":"2026-04-01T18:34:10.375Z","repository":{"id":26726758,"uuid":"30184278","full_name":"giantswarm/docs","owner":"giantswarm","description":"The Giant Swarm documentation site","archived":false,"fork":false,"pushed_at":"2026-03-25T08:40:42.000Z","size":52372,"stargazers_count":6,"open_issues_count":3,"forks_count":8,"subscribers_count":10,"default_branch":"main","last_synced_at":"2026-03-25T08:50:53.429Z","etag":null,"topics":["cluster-api","documentation","helm","kubernetes","platform-engineering"],"latest_commit_sha":null,"homepage":"http://docs.giantswarm.io","language":"HTML","has_issues":true,"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/giantswarm.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"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":"AGENTS.md","dco":"DCO","cla":null}},"created_at":"2015-02-02T11:36:15.000Z","updated_at":"2026-03-25T08:40:38.000Z","dependencies_parsed_at":"2025-11-29T13:05:02.823Z","dependency_job_id":"856448bc-6088-47a9-97f3-7a0fd36c0117","html_url":"https://github.com/giantswarm/docs","commit_stats":null,"previous_names":[],"tags_count":2290,"template":false,"template_full_name":null,"purl":"pkg:github/giantswarm/docs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/giantswarm%2Fdocs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/giantswarm%2Fdocs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/giantswarm%2Fdocs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/giantswarm%2Fdocs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/giantswarm","download_url":"https://codeload.github.com/giantswarm/docs/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/giantswarm%2Fdocs/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31290895,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-01T13:12:26.723Z","status":"ssl_error","status_checked_at":"2026-04-01T13:12:25.102Z","response_time":53,"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":["cluster-api","documentation","helm","kubernetes","platform-engineering"],"created_at":"2026-01-06T19:10:36.222Z","updated_at":"2026-04-01T18:34:10.345Z","avatar_url":"https://github.com/giantswarm.png","language":"HTML","readme":"# Giant Swarm user documentation\n\nThis is the main documentation repository for the documentation available at https://docs.giantswarm.io.\n\n## Repository overview\n\nIt holds the main **content** of our documentation. The documentation site is created using the static site generator [HUGO](http://gohugo.io/) based on markdown files in the `src/content/` directory of the `docs` repository.\n\nAdditional content is tied in through the scripts\n\n- `scripts/aggregate-changelogs`: Aggregates changelog entries into the `src/content/changes` destination.\n- `scripts/collect-changelog-entries`: Collects changelog entries from all apps defined in `giantswarm/github` repository to create a weekly update.\n- `scripts/update-crd-reference`: Generates reference pages for our custom resource definitions in the `src/content/reference/platform-api` destination.\n- `scripts/update-external-repos`: Tutorials that need their own code repository. They must have a `docs` subfolder with the Markdown content and optionally some images. Configuration is found in `scripts/update-external-repos/repositories.txt`.\n- `scripts/update-helm-chart-reference`: Creates the cluster apps pages in the `src/content/reference/platform-api` destination.\n\nTo update these external content types, the `Makefile` provides specific targets:\n\n- `make changes`\n- `make update-external-repos`\n- `make collect-changelog-entries`\n- `make update-cluster-app-reference`\n- `make update-crd-reference`\n\nAll pull requests to this repository will trigger a build of the documentation site. The site is hosted in a Cluster API environment (`gazelle`) and it's deployed to https://docs.giantswarm.io automatically thanks to GitOps setup.\n\n## Contributing\n\n**We welcome any contributions on content to this repository in the form of pull requests!**\n\nPlease review the [style guidelines](https://handbook.giantswarm.io/docs/content/docs-guide) before contributing.\n\nWhile making changes, please use\n\n```sh\nmake dev\n```\n\nto render the results. This serves the web content on http://localhost:1313/ by default. Please check if your changes display correctly before opening a pull request.\n\n### Dev container (experimental)\n\nThis repository provides a [dev container](https://containers.dev/) configuration. When making changes to documentation content, we encourage you to use the container and give feedback to SIG docs. Prerequisites:\n\n- IDE with dev container support (e.g. Visual Studio Code with the \"Dev Containers\" (`ms-vscode-remote.remote-containers`) extension.\n- Docker\n- at least 4 GiB of memory dedicated to Docker\n\n### Front matter\n\nEach documentation page consists of a markdown file that starts with some metadata called [front matter](https://gohugo.io/content-management/front-matter/). Some hints:\n\n- Please look at the other pages to get an idea of what the front matter is good for.\n- When your page's `title` is too long for the navigation menu, add a `linkTitle` field with a short title.\n- Please double-check whether the `description` is still up-to-date or could be improved. It will often show up Google search results.\n\nSpecial front matter fields we use:\n\n- `last_review_date`: Date of the last time somebody checked the entire page for validity.\n- `menu`: The menu entry under which the page should appear. Currently it's `principal` for the main menu,  vintage documentation is under `main`.\n- `owner`: List of GitHub team URLs for the team(s) or SIG(s) owning the page. The owning team/SIG is the one responsible for keeping the content up-to-date and useful.\n- `user_questions`: List of questions this article answers. Written from a user's perspective. E. g. _How do I ..._.\n\n## Shortcodes\n\nShortcodes allow the use of a string in any number of places in the docs, while maintaining it only in one place. We use these to place, for example, configuration details. The goal here is to give users accurate, complete and up-to-date information.\n\nShortcodes exist as one file each in the folder [src/layouts/shortcodes](https://github.com/giantswarm/docs/tree/master/src/layouts/shortcodes).\n\nA shortcode is used in a markdown file like this:\n\n```markdown\n## Using mixed instance types (only {{% impl_title \"capa_ec2\" %}})\n```\n\n### Content linting\n\nWhen writing docs content, the linters can help you a great deal to keep the content consistent and clean. Ideally run the linters as pre-commit hooks.\n\nTo install: `pre-commit install --install-hooks`.\n\nLinters will then be executed automatically before committing.\n\nThe `vale` linter will check spelling. If vale complaints about a word that is spelled correctly, add it to the [dictionary](.vale/styles/config/vocabularies/docs/accept.txt). If the term is a technical identifier like `CAPMOXDatastoreAlloc`, don't add it to the dictionary, and wrap it in backticks instead.\n\nWhen editing content in Microsoft Visual Studio Code, you can also use the [vale-vscode](https://marketplace.visualstudio.com/items?itemName=ChrisChinchilla.vale-vscode) extension to see errors and editing suggestions while you write.\n\nTo keep third party style rules up-to-date, please run `make lint-prose-update` and commit the resulting changes.\n\n## Search\n\nThe search functionality works since last Nov 2023 using a third-party system called [`Inkeep`](https://inkeep.com/) which makes use of Artificial Intelligence to index all the content of our docs and serve good results. Also, it allows to have a conversational interface to get a faster response in our wide documentation hub.\n\nIn [the internal portal](https://portal.inkeep.com/) we've defined our docs as main source of content for the Large Language Model(LLM) instance which will be scrapped weekly to digest new content. Access is granted via OIDC and Google.\n\nSince we use `Inkeep` for more uses cases the project for docs is called \"Giant Swarm customer facing\". There in the integration you can see our docs and the configuration keys needed to bootstrap the widget. The code that triggers the render the widget is in `/src/assets/scripts/base.js` and the styles are part of `/static/css/inkeep.css`. Most of the options for the widget are defaulted and only style has be customized to fit our documentation's layout.\n\n## Diagrams\n\nWe use [mermaid](https://mermaid.js.org/) for diagrams. You need to annotate the page previously in the front matter to load the mermaid code (`mermaid: true`). Then you can use the shortcode `{{\u003c mermaid \u003e}}` to add the diagram code.\n\n## About the Header and Footer\n\nThe header and footer are to be kept in sync with `www.giantswarm.io`. In order to do this we copy the HTML and CSS specific to those parts of the page.\n\nFiles starting with `gs_` are involved in making the header and footer appear and behave correctly.\n\n`partials/gs_header.html` - The unedited html of the header at www.giantswarm.io\n\n`partials/gs_mobile_menu.html` - The unedited html of the mobile navigation menu at www.giantswarm.io\n\n`partials/gs_footer.html` - The unedited html of the footer at www.giantswarm.io\n\n`partials/gs_styles.html` - Automatically extracted styles which apply to\n                            elements found in the header and footer, as well\n                            as hand written override styles to make it play nicely\n                            with CSS already present in docs.\n\n`scripts/gs_menu.js`      - Hand written javascript that recreates the interactive\n                            functionality of the navigation menus.\n\n## License\n\nThe content in this repository is licensed under the [Creative Commons Attribution ShareAlike](http://creativecommons.org/licenses/by-sa/4.0/) license.\n\nFor attribution, please use either:\n\n- Giant Swarm\n- giantswarm.io\n\nand link, if possible, to https://www.giantswarm.io/\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgiantswarm%2Fdocs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgiantswarm%2Fdocs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgiantswarm%2Fdocs/lists"}