├── .github ├── ISSUE_TEMPLATE │ ├── bug.md │ ├── content.md │ ├── new_release.md │ └── website.md ├── PULL_REQUEST_TEMPLATE.md └── workflows │ ├── link-checker.yml │ ├── vale.yml │ └── weekly-link-checker.yml ├── .gitignore ├── LICENSE.md ├── OWNERS.md ├── README.md ├── config.yaml ├── content ├── contribute │ ├── _index.md │ ├── code-style-guide.md │ ├── contribute.md │ ├── features.md │ ├── infrastructure.md │ ├── vale.md │ └── writing-style-guide.md ├── master │ ├── _index.md │ ├── api │ │ ├── _index.md │ │ └── crds │ │ │ ├── apiextensions.crossplane.io_compositeresourcedefinitions.yaml │ │ │ ├── apiextensions.crossplane.io_compositionrevisions.yaml │ │ │ ├── apiextensions.crossplane.io_compositions.yaml │ │ │ ├── apiextensions.crossplane.io_environmentconfigs.yaml │ │ │ ├── apiextensions.crossplane.io_usages.yaml │ │ │ ├── pkg.crossplane.io_configurationrevisions.yaml │ │ │ ├── pkg.crossplane.io_configurations.yaml │ │ │ ├── pkg.crossplane.io_controllerconfigs.yaml │ │ │ ├── pkg.crossplane.io_deploymentruntimeconfigs.yaml │ │ │ ├── pkg.crossplane.io_functionrevisions.yaml │ │ │ ├── pkg.crossplane.io_functions.yaml │ │ │ ├── pkg.crossplane.io_imageconfigs.yaml │ │ │ ├── pkg.crossplane.io_locks.yaml │ │ │ ├── pkg.crossplane.io_providerrevisions.yaml │ │ │ ├── pkg.crossplane.io_providers.yaml │ │ │ └── secrets.crossplane.io_storeconfigs.yaml │ ├── cli │ │ ├── _index.md │ │ └── command-reference.md │ ├── concepts │ │ ├── _index.md │ │ ├── claims.md │ │ ├── composite-resource-definitions.md │ │ ├── composite-resources.md │ │ ├── composition-revisions.md │ │ ├── compositions.md │ │ ├── connection-details.md │ │ ├── environment-configs.md │ │ ├── image-configs.md │ │ ├── managed-resources.md │ │ ├── packages.md │ │ ├── pods.md │ │ ├── providers.md │ │ ├── server-side-apply.md │ │ └── usages.md │ ├── getting-started │ │ ├── _index.md │ │ ├── install-crossplane-include.md │ │ ├── introduction.md │ │ ├── provider-aws-part-2.md │ │ ├── provider-aws.md │ │ ├── provider-azure-part-2.md │ │ ├── provider-azure.md │ │ ├── provider-gcp-part-2.md │ │ └── provider-gcp.md │ ├── guides │ │ ├── _index.md │ │ ├── change-logs.md │ │ ├── crossplane-with-argo-cd.md │ │ ├── disaster-recovery.md │ │ ├── function-patch-and-transform.md │ │ ├── import-existing-resources.md │ │ ├── metrics.md │ │ ├── multi-tenant.md │ │ ├── self-signed-ca-certs.md │ │ ├── troubleshoot-crossplane.md │ │ ├── vault-as-secret-store.md │ │ ├── vault-injection.md │ │ ├── write-a-composition-function-in-go.md │ │ └── write-a-composition-function-in-python.md │ ├── learn │ │ ├── _index.md │ │ ├── feature-lifecycle.md │ │ └── release-cycle.md │ └── software │ │ ├── _index.md │ │ ├── install.md │ │ ├── uninstall.md │ │ └── upgrade.md ├── media │ ├── README.md │ ├── banner.png │ ├── composition-claims-and-xrs.svg │ ├── composition-functions-xfn-runner.png │ ├── composition-how-it-works.svg │ ├── composition-xrs-and-mrs.svg │ ├── crossplane-intro-diagram copy.png │ ├── crossplane-intro-diagram.png │ └── logo.svg ├── v1.18 │ ├── _index.md │ ├── api │ │ ├── _index.md │ │ └── crds │ │ │ ├── apiextensions.crossplane.io_compositeresourcedefinitions.yaml │ │ │ ├── apiextensions.crossplane.io_compositionrevisions.yaml │ │ │ ├── apiextensions.crossplane.io_compositions.yaml │ │ │ ├── apiextensions.crossplane.io_environmentconfigs.yaml │ │ │ ├── apiextensions.crossplane.io_usages.yaml │ │ │ ├── pkg.crossplane.io_configurationrevisions.yaml │ │ │ ├── pkg.crossplane.io_configurations.yaml │ │ │ ├── pkg.crossplane.io_controllerconfigs.yaml │ │ │ ├── pkg.crossplane.io_deploymentruntimeconfigs.yaml │ │ │ ├── pkg.crossplane.io_functionrevisions.yaml │ │ │ ├── pkg.crossplane.io_functions.yaml │ │ │ ├── pkg.crossplane.io_imageconfigs.yaml │ │ │ ├── pkg.crossplane.io_locks.yaml │ │ │ ├── pkg.crossplane.io_providerrevisions.yaml │ │ │ ├── pkg.crossplane.io_providers.yaml │ │ │ └── secrets.crossplane.io_storeconfigs.yaml │ ├── cli │ │ ├── _index.md │ │ └── command-reference.md │ ├── concepts │ │ ├── _index.md │ │ ├── claims.md │ │ ├── composite-resource-definitions.md │ │ ├── composite-resources.md │ │ ├── composition-revisions.md │ │ ├── compositions.md │ │ ├── connection-details.md │ │ ├── environment-configs.md │ │ ├── image-configs.md │ │ ├── managed-resources.md │ │ ├── packages.md │ │ ├── pods.md │ │ ├── providers.md │ │ ├── server-side-apply.md │ │ └── usages.md │ ├── getting-started │ │ ├── _index.md │ │ ├── install-crossplane-include.md │ │ ├── introduction.md │ │ ├── provider-aws-part-2.md │ │ ├── provider-aws.md │ │ ├── provider-azure-part-2.md │ │ ├── provider-azure.md │ │ ├── provider-gcp-part-2.md │ │ └── provider-gcp.md │ ├── guides │ │ ├── _index.md │ │ ├── crossplane-with-argo-cd.md │ │ ├── disaster-recovery.md │ │ ├── function-patch-and-transform.md │ │ ├── import-existing-resources.md │ │ ├── metrics.md │ │ ├── multi-tenant.md │ │ ├── self-signed-ca-certs.md │ │ ├── troubleshoot-crossplane.md │ │ ├── vault-as-secret-store.md │ │ ├── vault-injection.md │ │ ├── write-a-composition-function-in-go.md │ │ └── write-a-composition-function-in-python.md │ ├── learn │ │ ├── _index.md │ │ ├── feature-lifecycle.md │ │ └── release-cycle.md │ └── software │ │ ├── _index.md │ │ ├── install.md │ │ ├── uninstall.md │ │ └── upgrade.md ├── v1.19 │ ├── _index.md │ ├── api │ │ ├── _index.md │ │ └── crds │ │ │ ├── apiextensions.crossplane.io_compositeresourcedefinitions.yaml │ │ │ ├── apiextensions.crossplane.io_compositionrevisions.yaml │ │ │ ├── apiextensions.crossplane.io_compositions.yaml │ │ │ ├── apiextensions.crossplane.io_environmentconfigs.yaml │ │ │ ├── apiextensions.crossplane.io_usages.yaml │ │ │ ├── pkg.crossplane.io_configurationrevisions.yaml │ │ │ ├── pkg.crossplane.io_configurations.yaml │ │ │ ├── pkg.crossplane.io_controllerconfigs.yaml │ │ │ ├── pkg.crossplane.io_deploymentruntimeconfigs.yaml │ │ │ ├── pkg.crossplane.io_functionrevisions.yaml │ │ │ ├── pkg.crossplane.io_functions.yaml │ │ │ ├── pkg.crossplane.io_imageconfigs.yaml │ │ │ ├── pkg.crossplane.io_locks.yaml │ │ │ ├── pkg.crossplane.io_providerrevisions.yaml │ │ │ ├── pkg.crossplane.io_providers.yaml │ │ │ └── secrets.crossplane.io_storeconfigs.yaml │ ├── cli │ │ ├── _index.md │ │ └── command-reference.md │ ├── concepts │ │ ├── _index.md │ │ ├── claims.md │ │ ├── composite-resource-definitions.md │ │ ├── composite-resources.md │ │ ├── composition-revisions.md │ │ ├── compositions.md │ │ ├── connection-details.md │ │ ├── environment-configs.md │ │ ├── image-configs.md │ │ ├── managed-resources.md │ │ ├── packages.md │ │ ├── pods.md │ │ ├── providers.md │ │ ├── server-side-apply.md │ │ └── usages.md │ ├── getting-started │ │ ├── _index.md │ │ ├── install-crossplane-include.md │ │ ├── introduction.md │ │ ├── provider-aws-part-2.md │ │ ├── provider-aws.md │ │ ├── provider-azure-part-2.md │ │ ├── provider-azure.md │ │ ├── provider-gcp-part-2.md │ │ └── provider-gcp.md │ ├── guides │ │ ├── _index.md │ │ ├── crossplane-with-argo-cd.md │ │ ├── disaster-recovery.md │ │ ├── function-patch-and-transform.md │ │ ├── import-existing-resources.md │ │ ├── metrics.md │ │ ├── multi-tenant.md │ │ ├── self-signed-ca-certs.md │ │ ├── troubleshoot-crossplane.md │ │ ├── vault-as-secret-store.md │ │ ├── vault-injection.md │ │ ├── write-a-composition-function-in-go.md │ │ └── write-a-composition-function-in-python.md │ ├── learn │ │ ├── _index.md │ │ ├── feature-lifecycle.md │ │ └── release-cycle.md │ └── software │ │ ├── _index.md │ │ ├── install.md │ │ ├── uninstall.md │ │ └── upgrade.md ├── v1.20 │ ├── _index.md │ ├── api │ │ ├── _index.md │ │ └── crds │ │ │ ├── apiextensions.crossplane.io_compositeresourcedefinitions.yaml │ │ │ ├── apiextensions.crossplane.io_compositionrevisions.yaml │ │ │ ├── apiextensions.crossplane.io_compositions.yaml │ │ │ ├── apiextensions.crossplane.io_environmentconfigs.yaml │ │ │ ├── apiextensions.crossplane.io_usages.yaml │ │ │ ├── pkg.crossplane.io_configurationrevisions.yaml │ │ │ ├── pkg.crossplane.io_configurations.yaml │ │ │ ├── pkg.crossplane.io_controllerconfigs.yaml │ │ │ ├── pkg.crossplane.io_deploymentruntimeconfigs.yaml │ │ │ ├── pkg.crossplane.io_functionrevisions.yaml │ │ │ ├── pkg.crossplane.io_functions.yaml │ │ │ ├── pkg.crossplane.io_imageconfigs.yaml │ │ │ ├── pkg.crossplane.io_locks.yaml │ │ │ ├── pkg.crossplane.io_providerrevisions.yaml │ │ │ ├── pkg.crossplane.io_providers.yaml │ │ │ └── secrets.crossplane.io_storeconfigs.yaml │ ├── cli │ │ ├── _index.md │ │ └── command-reference.md │ ├── concepts │ │ ├── _index.md │ │ ├── claims.md │ │ ├── composite-resource-definitions.md │ │ ├── composite-resources.md │ │ ├── composition-revisions.md │ │ ├── compositions.md │ │ ├── connection-details.md │ │ ├── environment-configs.md │ │ ├── image-configs.md │ │ ├── managed-resources.md │ │ ├── packages.md │ │ ├── pods.md │ │ ├── providers.md │ │ ├── server-side-apply.md │ │ └── usages.md │ ├── getting-started │ │ ├── _index.md │ │ ├── install-crossplane-include.md │ │ ├── introduction.md │ │ ├── provider-aws-part-2.md │ │ ├── provider-aws.md │ │ ├── provider-azure-part-2.md │ │ ├── provider-azure.md │ │ ├── provider-gcp-part-2.md │ │ └── provider-gcp.md │ ├── guides │ │ ├── _index.md │ │ ├── change-logs.md │ │ ├── crossplane-with-argo-cd.md │ │ ├── disaster-recovery.md │ │ ├── function-patch-and-transform.md │ │ ├── import-existing-resources.md │ │ ├── metrics.md │ │ ├── multi-tenant.md │ │ ├── self-signed-ca-certs.md │ │ ├── troubleshoot-crossplane.md │ │ ├── vault-as-secret-store.md │ │ ├── vault-injection.md │ │ ├── write-a-composition-function-in-go.md │ │ └── write-a-composition-function-in-python.md │ ├── learn │ │ ├── _index.md │ │ ├── feature-lifecycle.md │ │ └── release-cycle.md │ └── software │ │ ├── _index.md │ │ ├── install.md │ │ ├── uninstall.md │ │ └── upgrade.md └── v2.0-preview │ ├── _index.md │ ├── api │ ├── _index.md │ └── crds │ │ ├── apiextensions.crossplane.io_compositeresourcedefinitions.yaml │ │ ├── apiextensions.crossplane.io_compositionrevisions.yaml │ │ ├── apiextensions.crossplane.io_compositions.yaml │ │ ├── apiextensions.crossplane.io_environmentconfigs.yaml │ │ ├── apiextensions.crossplane.io_usages.yaml │ │ ├── pkg.crossplane.io_configurationrevisions.yaml │ │ ├── pkg.crossplane.io_configurations.yaml │ │ ├── pkg.crossplane.io_deploymentruntimeconfigs.yaml │ │ ├── pkg.crossplane.io_functionrevisions.yaml │ │ ├── pkg.crossplane.io_functions.yaml │ │ ├── pkg.crossplane.io_imageconfigs.yaml │ │ ├── pkg.crossplane.io_locks.yaml │ │ ├── pkg.crossplane.io_providerrevisions.yaml │ │ ├── pkg.crossplane.io_providers.yaml │ │ ├── protection.crossplane.io_clusterusages.yaml │ │ └── protection.crossplane.io_usages.yaml │ ├── cli │ ├── _index.md │ └── command-reference.md │ ├── composition │ ├── _index.md │ ├── composite-resource-definitions.md │ ├── composite-resources.md │ ├── composition-revisions.md │ ├── compositions.md │ └── environment-configs.md │ ├── get-started │ ├── _index.md │ ├── get-started-with-composition.md │ ├── get-started-with-managed-resources.md │ └── install.md │ ├── guides │ ├── _index.md │ ├── crossplane-with-argo-cd.md │ ├── function-patch-and-transform.md │ ├── metrics.md │ ├── pods.md │ ├── self-signed-ca-certs.md │ ├── troubleshoot-crossplane.md │ ├── uninstall-crossplane.md │ ├── upgrade-crossplane.md │ ├── write-a-composition-function-in-go.md │ └── write-a-composition-function-in-python.md │ ├── learn │ ├── _index.md │ ├── feature-lifecycle.md │ └── release-cycle.md │ ├── managed-resources │ ├── _index.md │ ├── managed-resources.md │ └── usages.md │ ├── packages │ ├── _index.md │ ├── configurations.md │ ├── functions.md │ ├── image-configs.md │ └── providers.md │ ├── whats-crossplane │ └── _index.md │ └── whats-new │ └── _index.md ├── netlify.toml ├── netlify_build.sh ├── package.json ├── postcss.config.js ├── static └── og │ ├── agenda.svg │ ├── alibaba-cloud.svg │ ├── alibaba.svg │ ├── arrow-down.svg │ ├── aws.svg │ ├── blueprint.webp │ ├── border.svg │ ├── cncf-large.webp │ ├── cncf-large@2x.webp │ ├── cncf-large@3x.webp │ ├── cncf.webp │ ├── cncf@2x.webp │ ├── cncf@3x.webp │ ├── cockroachlabs.svg │ ├── coming-soon.png │ ├── coming-soon@2x.png │ ├── coming-soon@3x.png │ ├── comingsoon-pivotal.svg │ ├── compute.svg │ ├── connectivity.svg │ ├── created-by.png │ ├── created-by@2x.png │ ├── created-by@3x.png │ ├── crossplane-truck.svg │ ├── cycle.svg │ ├── database.svg │ ├── declarative.svg │ ├── digital-ocean.svg │ ├── extensibility.svg │ ├── favicon_16x16.png │ ├── favicon_192x192.png │ ├── favicon_32x32.png │ ├── favicon_48x48.png │ ├── feature-1.webp │ ├── feature-1@2x.webp │ ├── feature-1@3x.webp │ ├── feature-2.webp │ ├── feature-2@2x.webp │ ├── feature-2@3x.webp │ ├── feature-3.webp │ ├── feature-3@2x.webp │ ├── feature-3@3x.webp │ ├── feature-4.webp │ ├── feature-4@2x.webp │ ├── feature-4@3x.webp │ ├── flavors.svg │ ├── forum.svg │ ├── github-teal.svg │ ├── github.svg │ ├── gitlab.svg │ ├── google-cloud.svg │ ├── hero.webp │ ├── hero@2x.webp │ ├── hero@3x.webp │ ├── logo.svg │ ├── microsoft-azure.svg │ ├── microsoft.svg │ ├── pink.svg │ ├── podcast.svg │ ├── portability.svg │ ├── quad-red-medium.svg │ ├── quad-teal-medium.svg │ ├── quad-teal-small.svg │ ├── quad-white-medium.svg │ ├── red-squares.svg │ ├── redhat-horizontal.svg │ ├── redhat.svg │ ├── security.svg │ ├── separation.svg │ ├── slack-logo.svg │ ├── slack-white.svg │ ├── slack.svg │ ├── source.svg │ ├── stacks.webp │ ├── stacks@2x.webp │ ├── stacks@3x.webp │ ├── storage.svg │ ├── teal.svg │ ├── tri-red-small.svg │ ├── twitter-card_400x400.jpg │ ├── unify.svg │ ├── upbound-logo.svg │ ├── upbound.svg │ └── youtube.svg ├── themes └── geekboot │ ├── LICENSE-bootstrap │ ├── LICENSE-geekdoc │ ├── assets │ ├── js │ │ ├── main-727bf178.bundle.min.js │ │ ├── main-727bf178.bundle.min.js.LICENSE.txt │ │ └── main-727bf178.bundle.min.js.map │ └── scss │ │ ├── _accordion.scss │ │ ├── _anchor.scss │ │ ├── _buttons.scss │ │ ├── _callouts.scss │ │ ├── _code-theme-base.scss │ │ ├── _code-theme-dark.scss │ │ ├── _code-theme-light.scss │ │ ├── _content.scss │ │ ├── _crds.scss │ │ ├── _dropdown.scss │ │ ├── _fonts.scss │ │ ├── _footer.scss │ │ ├── _hints.scss │ │ ├── _home.scss │ │ ├── _layout.scss │ │ ├── _mermaid.scss │ │ ├── _nav-tabs.scss │ │ ├── _navbar.scss │ │ ├── _search-button.scss │ │ ├── _search-results.scss │ │ ├── _sidebar.scss │ │ ├── _skippy.scss │ │ ├── _syntax.scss │ │ ├── _toc.scss │ │ ├── _variables.scss │ │ ├── bootstrap │ │ ├── _accordion.scss │ │ ├── _alert.scss │ │ ├── _badge.scss │ │ ├── _breadcrumb.scss │ │ ├── _button-group.scss │ │ ├── _buttons.scss │ │ ├── _card.scss │ │ ├── _carousel.scss │ │ ├── _close.scss │ │ ├── _containers.scss │ │ ├── _dropdown.scss │ │ ├── _forms.scss │ │ ├── _functions.scss │ │ ├── _grid.scss │ │ ├── _helpers.scss │ │ ├── _images.scss │ │ ├── _list-group.scss │ │ ├── _maps.scss │ │ ├── _mixins.scss │ │ ├── _modal.scss │ │ ├── _nav.scss │ │ ├── _navbar.scss │ │ ├── _offcanvas.scss │ │ ├── _pagination.scss │ │ ├── _placeholders.scss │ │ ├── _popover.scss │ │ ├── _progress.scss │ │ ├── _reboot.scss │ │ ├── _root.scss │ │ ├── _spinners.scss │ │ ├── _tables.scss │ │ ├── _toasts.scss │ │ ├── _tooltip.scss │ │ ├── _transitions.scss │ │ ├── _type.scss │ │ ├── _utilities.scss │ │ ├── _variables-dark.scss │ │ ├── _variables.scss │ │ ├── bootstrap-grid.scss │ │ ├── bootstrap-reboot.scss │ │ ├── bootstrap-utilities.scss │ │ ├── bootstrap.scss │ │ ├── forms │ │ │ ├── _floating-labels.scss │ │ │ ├── _form-check.scss │ │ │ ├── _form-control.scss │ │ │ ├── _form-range.scss │ │ │ ├── _form-select.scss │ │ │ ├── _form-text.scss │ │ │ ├── _input-group.scss │ │ │ ├── _labels.scss │ │ │ └── _validation.scss │ │ ├── helpers │ │ │ ├── _clearfix.scss │ │ │ ├── _color-bg.scss │ │ │ ├── _colored-links.scss │ │ │ ├── _focus-ring.scss │ │ │ ├── _icon-link.scss │ │ │ ├── _position.scss │ │ │ ├── _ratio.scss │ │ │ ├── _stacks.scss │ │ │ ├── _stretched-link.scss │ │ │ ├── _text-truncation.scss │ │ │ ├── _visually-hidden.scss │ │ │ └── _vr.scss │ │ ├── mixins │ │ │ ├── _alert.scss │ │ │ ├── _backdrop.scss │ │ │ ├── _banner.scss │ │ │ ├── _border-radius.scss │ │ │ ├── _box-shadow.scss │ │ │ ├── _breakpoints.scss │ │ │ ├── _buttons.scss │ │ │ ├── _caret.scss │ │ │ ├── _clearfix.scss │ │ │ ├── _color-mode.scss │ │ │ ├── _color-scheme.scss │ │ │ ├── _container.scss │ │ │ ├── _deprecate.scss │ │ │ ├── _forms.scss │ │ │ ├── _gradients.scss │ │ │ ├── _grid.scss │ │ │ ├── _image.scss │ │ │ ├── _list-group.scss │ │ │ ├── _lists.scss │ │ │ ├── _pagination.scss │ │ │ ├── _reset-text.scss │ │ │ ├── _resize.scss │ │ │ ├── _table-variants.scss │ │ │ ├── _text-truncate.scss │ │ │ ├── _transition.scss │ │ │ ├── _utilities.scss │ │ │ └── _visually-hidden.scss │ │ ├── tests │ │ │ ├── jasmine.js │ │ │ ├── mixins │ │ │ │ ├── _color-modes.test.scss │ │ │ │ ├── _media-query-color-mode-full.test.scss │ │ │ │ └── _utilities.test.scss │ │ │ ├── sass-true │ │ │ │ ├── register.js │ │ │ │ └── runner.js │ │ │ └── utilities │ │ │ │ └── _api.test.scss │ │ ├── utilities │ │ │ └── _api.scss │ │ └── vendor │ │ │ └── _rfs.scss │ │ ├── color-modes.scss │ │ ├── dark-mode.scss │ │ ├── docs.scss │ │ └── light-mode.scss │ ├── data │ └── assets.json │ ├── layouts │ ├── 404.html │ ├── _default │ │ ├── _markup │ │ │ ├── render-codeblock-mermaid.html │ │ │ └── render-heading.html │ │ ├── baseof.html │ │ ├── home.html │ │ ├── list.html │ │ ├── redirect.html │ │ ├── section.rss.xml │ │ ├── single.html │ │ └── sitemap.xml │ ├── partials │ │ ├── analytics.html │ │ ├── apiBuilder │ │ │ ├── GKVHeader.html │ │ │ ├── backToTopButton.html │ │ │ ├── checkBigName.html │ │ │ ├── downloadLink.html │ │ │ ├── enumHandler.html │ │ │ ├── getSpecFields.html │ │ │ ├── getVersionAndSchema.html │ │ │ ├── isEnum.html │ │ │ ├── parentDescription.html │ │ │ ├── printGKVExpander.html │ │ │ ├── processSpec.html │ │ │ ├── specCollapseButtonEnd.html │ │ │ └── specCollapseButtonStart.html │ │ ├── crds.html │ │ ├── docs-navbar.html │ │ ├── docs-sidebar.html │ │ ├── favicons.html │ │ ├── feature-state-alert.html │ │ ├── footer.html │ │ ├── ga-tag.html │ │ ├── google-analytics.html │ │ ├── header.html │ │ ├── icons.html │ │ ├── icons │ │ │ ├── bootstrap-logo-solid.svg │ │ │ ├── bootstrap-white-fill.svg │ │ │ ├── bootstrap.svg │ │ │ ├── circle-square.svg │ │ │ ├── cloud-fill.svg │ │ │ ├── code.svg │ │ │ ├── collapse.svg │ │ │ ├── droplet-fill.svg │ │ │ ├── expand.svg │ │ │ ├── github.svg │ │ │ ├── hamburger.svg │ │ │ ├── homepage-hero.svg │ │ │ ├── list.svg │ │ │ ├── menu.svg │ │ │ ├── opencollective.svg │ │ │ ├── pencil-square.svg │ │ │ ├── popsicle-icon.svg │ │ │ ├── slack.svg │ │ │ └── twitter.svg │ │ ├── left-nav.html │ │ ├── master-version-alert.html │ │ ├── mermaid.html │ │ ├── meta-common.html │ │ ├── ms-clarity.html │ │ ├── old-version-alert.html │ │ ├── preview-version-alert.html │ │ ├── redirect.html │ │ ├── release-notes.html │ │ ├── rollworks.html │ │ ├── scripts.html │ │ ├── search-button.html │ │ ├── sidebar │ │ │ ├── contributing-guide.html │ │ │ ├── roadmap.html │ │ │ └── user-docs.html │ │ ├── single-list.html │ │ ├── skippy.html │ │ ├── social.html │ │ ├── stylesheet-cached.html │ │ ├── stylesheet-dynamic.html │ │ ├── toc.html │ │ ├── utils │ │ │ ├── content.html │ │ │ ├── description.html │ │ │ ├── featured.html │ │ │ └── title.html │ │ └── version-dropdown-menu.html │ └── shortcodes │ │ ├── check.html │ │ ├── editCode.html │ │ ├── expand.html │ │ ├── hint.html │ │ ├── hover.html │ │ ├── img.html │ │ ├── include.html │ │ ├── markdown.html │ │ ├── param.html │ │ ├── partial.html │ │ ├── placeholder.html │ │ ├── propertylist.html │ │ ├── tab.html │ │ ├── table.html │ │ ├── tabs.html │ │ ├── url.html │ │ └── year.html │ └── static │ ├── android-chrome-192x192.png │ ├── android-chrome-256x256.png │ ├── apple-touch-icon-114x114-precomposed.png │ ├── apple-touch-icon-114x114.png │ ├── apple-touch-icon-120x120-precomposed.png │ ├── apple-touch-icon-120x120.png │ ├── apple-touch-icon-144x144-precomposed.png │ ├── apple-touch-icon-144x144.png │ ├── apple-touch-icon-152x152-precomposed.png │ ├── apple-touch-icon-152x152.png │ ├── apple-touch-icon-180x180-precomposed.png │ ├── apple-touch-icon-180x180.png │ ├── apple-touch-icon-57x57-precomposed.png │ ├── apple-touch-icon-57x57.png │ ├── apple-touch-icon-60x60-precomposed.png │ ├── apple-touch-icon-60x60.png │ ├── apple-touch-icon-72x72-precomposed.png │ ├── apple-touch-icon-72x72.png │ ├── apple-touch-icon-76x76-precomposed.png │ ├── apple-touch-icon-76x76.png │ ├── apple-touch-icon-precomposed.png │ ├── apple-touch-icon.png │ ├── browserconfig.xml │ ├── favicon-16x16.png │ ├── favicon-32x32.png │ ├── favicon.ico │ ├── fonts │ ├── Avenir-Black.eot │ ├── Avenir-Black.ttf │ ├── Avenir-Black.woff │ ├── Avenir-Black.woff2 │ ├── Avenir-Roman.eot │ ├── Avenir-Roman.ttf │ ├── Avenir-Roman.woff │ ├── Avenir-Roman.woff2 │ ├── Consolas.eot │ ├── Consolas.ttf │ ├── Consolas.woff │ └── Consolas.woff2 │ ├── img │ ├── arrow-up-white.svg │ ├── automate.svg │ ├── cncf-large.webp │ ├── cncf-large@2x.webp │ ├── cncf-large@3x.webp │ ├── cncf-white.webp │ ├── cncf.webp │ ├── cncf@2x.webp │ ├── cncf@3x.webp │ ├── crossplane-logo-og.webp │ ├── crossplane-logo.svg │ ├── download.svg │ ├── lightbox.gif │ ├── loading.gif │ ├── minus-black.svg │ ├── minus-white.svg │ ├── multi-crane.svg │ ├── plus-150.svg │ ├── plus-black.svg │ ├── plus-white.svg │ ├── popsicle-icon.svg │ ├── sort-down-dark.svg │ ├── sort-down-light.svg │ ├── sort-up-dark.svg │ ├── sort-up-light.svg │ └── truck.svg │ ├── mstile-150x150.png │ ├── safari-pinned-tab.svg │ └── site.webmanifest └── utils ├── htmltest └── .htmltest.yml ├── vale ├── .vale.ini └── styles │ ├── Crossplane │ ├── CorporateSpeak.yml │ ├── Spelling.yml │ ├── allowed-jargon.txt │ ├── brands.txt │ ├── crossplane-words.txt │ ├── provider-words.txt │ └── spelling-exceptions.txt │ ├── Google │ ├── AMPM.yml │ ├── Acronyms.yml │ ├── Colons.yml │ ├── Contractions.yml │ ├── DateFormat.yml │ ├── Ellipses.yml │ ├── EmDash.yml │ ├── EnDash.yml │ ├── Exclamation.yml │ ├── FirstPerson.yml │ ├── Gender.yml │ ├── GenderBias.yml │ ├── HeadingPunctuation.yml │ ├── Headings.yml │ ├── Latin.yml │ ├── LyHyphens.yml │ ├── OptionalPlurals.yml │ ├── Ordinal.yml │ ├── OxfordComma.yml │ ├── Parens.yml │ ├── Passive.yml │ ├── Periods.yml │ ├── Quotes.yml │ ├── Ranges.yml │ ├── Semicolons.yml │ ├── Slang.yml │ ├── Spacing.yml │ ├── Spelling.yml │ ├── Units.yml │ ├── We.yml │ ├── Will.yml │ ├── WordList.yml │ ├── meta.json │ └── vocab.txt │ ├── Microsoft │ ├── AMPM.yml │ ├── Accessibility.yml │ ├── Acronyms.yml │ ├── Adverbs.yml │ ├── Auto.yml │ ├── Avoid.yml │ ├── ComplexWords.yml │ ├── Contractions.yml │ ├── Dashes.yml │ ├── DateFormat.yml │ ├── DateNumbers.yml │ ├── DateOrder.yml │ ├── Ellipses.yml │ ├── FirstPerson.yml │ ├── Foreign.yml │ ├── Gender.yml │ ├── GenderBias.yml │ ├── GeneralURL.yml │ ├── HeadingAcronyms.yml │ ├── HeadingColons.yml │ ├── HeadingPunctuation.yml │ ├── Headings.yml │ ├── Hyphens.yml │ ├── Negative.yml │ ├── Ordinal.yml │ ├── OxfordComma.yml │ ├── Passive.yml │ ├── Percentages.yml │ ├── Quotes.yml │ ├── RangeFormat.yml │ ├── RangeTime.yml │ ├── Ranges.yml │ ├── Semicolon.yml │ ├── SentenceLength.yml │ ├── Spacing.yml │ ├── Suspended.yml │ ├── Terms.yml │ ├── URLFormat.yml │ ├── Units.yml │ ├── Vocab.yml │ ├── We.yml │ ├── Wordiness.yml │ └── meta.json │ ├── alex │ ├── Ablist.yml │ ├── Condescending.yml │ ├── Gendered.yml │ ├── LGBTQ.yml │ ├── Press.yml │ ├── ProfanityLikely.yml │ ├── ProfanityMaybe.yml │ ├── ProfanityUnlikely.yml │ ├── README.md │ ├── Race.yml │ ├── Suicide.yml │ └── meta.json │ ├── gitlab │ ├── AlertBoxStyle.yml │ ├── BadPlurals.yml │ ├── BadgeCapitalization.yml │ ├── British.yml │ ├── CIConfigFile.yml │ ├── CodeblockFences.yml │ ├── CommandStringsQuoted.yml │ ├── CurrentStatus.yml │ ├── DefaultBranch.yml │ ├── Dropdown.yml │ ├── EOLWhitespace.yml │ ├── ElementDescriptors.yml │ ├── FutureTense.yml │ ├── GitLabFlavoredMarkdown.yml │ ├── HeadingContent.yml │ ├── HeadingDepth.yml │ ├── InclusionAbleism.yml │ ├── InclusionCultural.yml │ ├── InclusionGender.yml │ ├── InternalLinkCase.yml │ ├── InternalLinkExtension.yml │ ├── InternalLinkFormat.yml │ ├── LatinTerms.yml │ ├── MeaningfulLinkWords.yml │ ├── MergeConflictMarkers.yml │ ├── MultiLineLinks.yml │ ├── NonStandardQuotes.yml │ ├── Normal.yml │ ├── OutdatedVersions.yml │ ├── OxfordComma.yml │ ├── Possessive.yml │ ├── ReadingLevel.yml │ ├── ReferenceLinks.yml │ ├── RelativeLinks.yml │ ├── RelativeLinksDoubleSlashes.yml │ ├── Repetition.yml │ ├── SentenceLength.yml │ ├── SentenceSpacing.yml │ ├── Simplicity.yml │ ├── Spelling.yml │ ├── SubstitutionWarning.yml │ ├── Substitutions.yml │ ├── TabsLinks.yml │ ├── ToDo.yml │ ├── UnclearAntecedent.yml │ ├── Units.yml │ ├── Uppercase.yml │ ├── VersionText.yml │ ├── VersionTextSingleLine.yml │ ├── Wordy.yml │ ├── Zip.yml │ └── spelling-exceptions.txt │ ├── proselint │ ├── Airlinese.yml │ ├── AnimalLabels.yml │ ├── Annotations.yml │ ├── Apologizing.yml │ ├── Archaisms.yml │ ├── But.yml │ ├── Cliches.yml │ ├── CorporateSpeak.yml │ ├── Currency.yml │ ├── Cursing.yml │ ├── DateCase.yml │ ├── DateMidnight.yml │ ├── DateRedundancy.yml │ ├── DateSpacing.yml │ ├── DenizenLabels.yml │ ├── Diacritical.yml │ ├── GenderBias.yml │ ├── GroupTerms.yml │ ├── Hedging.yml │ ├── Hyperbole.yml │ ├── Jargon.yml │ ├── LGBTOffensive.yml │ ├── LGBTTerms.yml │ ├── Malapropisms.yml │ ├── Needless.yml │ ├── Nonwords.yml │ ├── Oxymorons.yml │ ├── P-Value.yml │ ├── RASSyndrome.yml │ ├── README.md │ ├── Skunked.yml │ ├── Spelling.yml │ ├── Typography.yml │ ├── Uncomparables.yml │ ├── Very.yml │ └── meta.json │ └── write-good │ ├── Cliches.yml │ ├── E-Prime.yml │ ├── Illusions.yml │ ├── Passive.yml │ ├── README.md │ ├── So.yml │ ├── ThereIs.yml │ ├── TooWordy.yml │ ├── Weasel.yml │ └── meta.json └── webpack ├── package-lock.json ├── package.json ├── src ├── LICENSE └── js │ ├── bootstrap │ └── src │ │ ├── alert.js │ │ ├── base-component.js │ │ ├── button.js │ │ ├── carousel.js │ │ ├── collapse.js │ │ ├── dom │ │ ├── data.js │ │ ├── event-handler.js │ │ ├── manipulator.js │ │ └── selector-engine.js │ │ ├── dropdown.js │ │ ├── modal.js │ │ ├── offcanvas.js │ │ ├── popover.js │ │ ├── scrollspy.js │ │ ├── tab.js │ │ ├── toast.js │ │ ├── tooltip.js │ │ └── util │ │ ├── backdrop.js │ │ ├── component-functions.js │ │ ├── config.js │ │ ├── focustrap.js │ │ ├── index.js │ │ ├── sanitizer.js │ │ ├── scrollbar.js │ │ ├── swipe.js │ │ └── template-factory.js │ ├── colorMode.js │ ├── customClipboard.js │ ├── globalScripts.js │ ├── hoverHighlight.js │ ├── slackNotify.js │ └── tabDeepAnchor.js └── webpack.config.js /.github/ISSUE_TEMPLATE/bug.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Report a bug in the docs 3 | about: Report a typo or bad code examples in the docs. 4 | labels: bug 5 | --- 6 | 7 | ### URL 8 | 9 | 10 | ### What's Wrong? 11 | 12 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/content.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Docs request 3 | about: Request new or additional content on a subject. 4 | labels: "content-request" 5 | --- 6 | 7 | ### What's Missing? 8 | 9 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/website.md: -------------------------------------------------------------------------------- 1 | --- 2 | name: Website Issue 3 | about: Report broken links, bad javascript or request a new site feature. 4 | labels: infrastructure 5 | --- 6 | 7 | 8 | ### What's Wrong? 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.github/workflows/link-checker.yml: -------------------------------------------------------------------------------- 1 | name: Run htmltest and validate links 2 | 3 | on: 4 | pull_request: 5 | paths: 6 | - 'content/**' 7 | - 'themes/**' 8 | 9 | # Allows manual workflow run (must in default branch to work) 10 | workflow_dispatch: 11 | 12 | jobs: 13 | build: 14 | runs-on: ubuntu-latest 15 | steps: 16 | - name: Checkout the docs repo 17 | uses: actions/checkout@v3 18 | 19 | - name: Setup Hugo 20 | uses: peaceiris/actions-hugo@v2 21 | with: 22 | hugo-version: '0.119.0' 23 | extended: true 24 | 25 | - name: Build 26 | # Set to env=dev so SCSS isn't required. 27 | run: hugo --environment development 28 | 29 | - name: Run htmltest 30 | uses: wjdp/htmltest-action@master 31 | with: 32 | config: ./utils/htmltest/.htmltest.yml 33 | -------------------------------------------------------------------------------- /.github/workflows/weekly-link-checker.yml: -------------------------------------------------------------------------------- 1 | name: Validate external links 2 | 3 | on: 4 | schedule: 5 | # “At 04:05 on Monday” 6 | - cron: '5 4 * * 1' 7 | 8 | # Allows manual workflow run (must in default branch to work) 9 | workflow_dispatch: 10 | 11 | jobs: 12 | build: 13 | runs-on: ubuntu-latest 14 | steps: 15 | - name: Checkout the docs repo 16 | uses: actions/checkout@v3 17 | 18 | - name: Setup Hugo 19 | uses: peaceiris/actions-hugo@v2 20 | with: 21 | hugo-version: '0.119.0' 22 | extended: true 23 | 24 | - name: Build 25 | # Set to env=dev so SCSS isn't required. 26 | run: hugo --environment development 27 | 28 | - name: Enable external link checking 29 | run: "sed -i 's/CheckExternal: false/CheckExternal: true/' utils/htmltest/.htmltest.yml" 30 | 31 | - name: Run htmltest 32 | uses: wjdp/htmltest-action@master 33 | with: 34 | config: ./utils/htmltest/.htmltest.yml 35 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Crossplane Documentation 2 | 3 | This is the repository for the [Crossplane 4 | documentation](https://docs.crossplane.io). 5 | 6 | The documentation site is built using [Hugo](https://gohugo.io/) and tested with 7 | BrowserStack. 8 | 9 | For detailed information about contributing to documentation read the [Docs 10 | Contributing Guide](https://docs.crossplane.io/contribute/). 11 | 12 | ## License 13 | The Crossplane documentation is under the [Creative Commons 14 | Attribution](https://creativecommons.org/licenses/by/4.0/) license. CC-BY allows 15 | reuse, remixing and republishing of Crossplane documentation with attribution to 16 | the Crossplane organization. 17 | 18 | The docs.crossplane.io theme is based on 19 | [Geekdoc](https://github.com/thegeeklab/hugo-geekdoc) and 20 | [Bootstrap](https://github.com/twbs/bootstrap), both licensed under the MIT 21 | License. -------------------------------------------------------------------------------- /content/master/api/_index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: API Reference 3 | weight: 400 4 | description: "API details for Crossplane's core types" 5 | cascade: 6 | product: crds 7 | --- 8 | 9 | The Crossplane API describes the types and parameters for the core Crossplane 10 | components. 11 | 12 | For details on the components read the [Concepts]({{}}) 13 | section. -------------------------------------------------------------------------------- /content/master/getting-started/_index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Getting Started 3 | weight: 4 4 | description: An introduction to Crossplane and Crossplane quickstart guides. 5 | --- 6 | 7 | {{Crossplane Popsicle Truck}} 8 | 9 | ## Hands-on 10 | Want a hands-on example? Follow a Crossplane Quickstart for your cloud provider. 11 | * [AWS quickstart]({{}}) 12 | * [Azure quickstart]({{}}) 13 | * [GCP quickstart]({{}}) 14 | 15 | ## Install 16 | Ready to get started? [Install Crossplane]({{}}) in a Kubernetes cluster. -------------------------------------------------------------------------------- /content/master/guides/_index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Guides 3 | weight: 100 4 | description: Crossplane integrations and detailed examples. 5 | --- -------------------------------------------------------------------------------- /content/master/guides/disaster-recovery.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Disaster Recovery with Crossplane 3 | weight: 10 4 | --- 5 | 6 | AWS wrote a guide covering disaster recovery with Crossplane. The guide covers 7 | using Crossplane to provision resources and Velero for Kubernetes backup and 8 | recovery. 9 | 10 | [Read the guide on AWS](https://aws.amazon.com/blogs/opensource/disaster-recovery-when-using-crossplane-for-infrastructure-provisioning-on-aws/). -------------------------------------------------------------------------------- /content/master/software/_index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Install, Upgrade and Uninstall 3 | weight: 10 4 | description: Manage Crossplane installations 5 | --- 6 | 7 | ## [Install Crossplane](install/) 8 | How to install and customize Crossplane in an existing Kubernetes cluster. 9 | 10 | ## [Upgrade Crossplane](upgrade/) 11 | How to upgrade Crossplane to newer versions of the software. 12 | 13 | ## [Uninstall Crossplane](uninstall/) 14 | How to remove Crossplane from a Kubernetes cluster. -------------------------------------------------------------------------------- /content/media/README.md: -------------------------------------------------------------------------------- 1 | --- 2 | tocHidden: true 3 | --- 4 | # Crossplane Documentation Media 5 | 6 | The sources of the images in this file are: 7 | 8 | * `logo.svg` - https://github.com/crossplane/artwork/tree/420102/logo 9 | * `composition-*.svg` - https://drive.google.com/drive/folders/1ld-XNglPQBT4ue9IBVuDs4HQRizr-5AY?usp=sharing -------------------------------------------------------------------------------- /content/media/banner.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/content/media/banner.png -------------------------------------------------------------------------------- /content/media/composition-functions-xfn-runner.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/content/media/composition-functions-xfn-runner.png -------------------------------------------------------------------------------- /content/media/crossplane-intro-diagram copy.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/content/media/crossplane-intro-diagram copy.png -------------------------------------------------------------------------------- /content/media/crossplane-intro-diagram.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/content/media/crossplane-intro-diagram.png -------------------------------------------------------------------------------- /content/v1.18/api/_index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: API Reference 3 | weight: 400 4 | description: "API details for Crossplane's core types" 5 | cascade: 6 | product: crds 7 | --- 8 | 9 | The Crossplane API describes the types and parameters for the core Crossplane 10 | components. 11 | 12 | For details on the components read the [Concepts]({{}}) 13 | section. -------------------------------------------------------------------------------- /content/v1.18/getting-started/_index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Getting Started 3 | weight: 4 4 | description: An introduction to Crossplane and Crossplane quickstart guides. 5 | --- 6 | 7 | {{Crossplane Popsicle Truck}} 8 | 9 | ## Hands-on 10 | Want a hands-on example? Follow a Crossplane Quickstart for your cloud provider. 11 | * [AWS quickstart]({{}}) 12 | * [Azure quickstart]({{}}) 13 | * [GCP quickstart]({{}}) 14 | 15 | ## Install 16 | Ready to get started? [Install Crossplane]({{}}) in a Kubernetes cluster. -------------------------------------------------------------------------------- /content/v1.18/guides/_index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Guides 3 | weight: 100 4 | description: Crossplane integrations and detailed examples. 5 | --- -------------------------------------------------------------------------------- /content/v1.18/guides/disaster-recovery.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Disaster Recovery with Crossplane 3 | weight: 10 4 | --- 5 | 6 | AWS wrote a guide covering disaster recovery with Crossplane. The guide covers 7 | using Crossplane to provision resources and Velero for Kubernetes backup and 8 | recovery. 9 | 10 | [Read the guide on AWS](https://aws.amazon.com/blogs/opensource/disaster-recovery-when-using-crossplane-for-infrastructure-provisioning-on-aws/). -------------------------------------------------------------------------------- /content/v1.18/software/_index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Install, Upgrade and Uninstall 3 | weight: 10 4 | description: Manage Crossplane installations 5 | --- 6 | 7 | ## [Install Crossplane](install/) 8 | How to install and customize Crossplane in an existing Kubernetes cluster. 9 | 10 | ## [Upgrade Crossplane](upgrade/) 11 | How to upgrade Crossplane to newer versions of the software. 12 | 13 | ## [Uninstall Crossplane](uninstall/) 14 | How to remove Crossplane from a Kubernetes cluster. -------------------------------------------------------------------------------- /content/v1.19/api/_index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: API Reference 3 | weight: 400 4 | description: "API details for Crossplane's core types" 5 | cascade: 6 | product: crds 7 | --- 8 | 9 | The Crossplane API describes the types and parameters for the core Crossplane 10 | components. 11 | 12 | For details on the components read the [Concepts]({{}}) 13 | section. -------------------------------------------------------------------------------- /content/v1.19/getting-started/_index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Getting Started 3 | weight: 4 4 | description: An introduction to Crossplane and Crossplane quickstart guides. 5 | --- 6 | 7 | {{Crossplane Popsicle Truck}} 8 | 9 | ## Hands-on 10 | Want a hands-on example? Follow a Crossplane Quickstart for your cloud provider. 11 | * [AWS quickstart]({{}}) 12 | * [Azure quickstart]({{}}) 13 | * [GCP quickstart]({{}}) 14 | 15 | ## Install 16 | Ready to get started? [Install Crossplane]({{}}) in a Kubernetes cluster. -------------------------------------------------------------------------------- /content/v1.19/guides/_index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Guides 3 | weight: 100 4 | description: Crossplane integrations and detailed examples. 5 | --- -------------------------------------------------------------------------------- /content/v1.19/guides/disaster-recovery.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Disaster Recovery with Crossplane 3 | weight: 10 4 | --- 5 | 6 | AWS wrote a guide covering disaster recovery with Crossplane. The guide covers 7 | using Crossplane to provision resources and Velero for Kubernetes backup and 8 | recovery. 9 | 10 | [Read the guide on AWS](https://aws.amazon.com/blogs/opensource/disaster-recovery-when-using-crossplane-for-infrastructure-provisioning-on-aws/). -------------------------------------------------------------------------------- /content/v1.19/software/_index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Install, Upgrade and Uninstall 3 | weight: 10 4 | description: Manage Crossplane installations 5 | --- 6 | 7 | ## [Install Crossplane](install/) 8 | How to install and customize Crossplane in an existing Kubernetes cluster. 9 | 10 | ## [Upgrade Crossplane](upgrade/) 11 | How to upgrade Crossplane to newer versions of the software. 12 | 13 | ## [Uninstall Crossplane](uninstall/) 14 | How to remove Crossplane from a Kubernetes cluster. -------------------------------------------------------------------------------- /content/v1.20/api/_index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: API Reference 3 | weight: 400 4 | description: "API details for Crossplane's core types" 5 | cascade: 6 | product: crds 7 | --- 8 | 9 | The Crossplane API describes the types and parameters for the core Crossplane 10 | components. 11 | 12 | For details on the components read the [Concepts]({{}}) 13 | section. -------------------------------------------------------------------------------- /content/v1.20/getting-started/_index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Getting Started 3 | weight: 4 4 | description: An introduction to Crossplane and Crossplane quickstart guides. 5 | --- 6 | 7 | {{Crossplane Popsicle Truck}} 8 | 9 | ## Hands-on 10 | Want a hands-on example? Follow a Crossplane Quickstart for your cloud provider. 11 | * [AWS quickstart]({{}}) 12 | * [Azure quickstart]({{}}) 13 | * [GCP quickstart]({{}}) 14 | 15 | ## Install 16 | Ready to get started? [Install Crossplane]({{}}) in a Kubernetes cluster. -------------------------------------------------------------------------------- /content/v1.20/guides/_index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Guides 3 | weight: 100 4 | description: Crossplane integrations and detailed examples. 5 | --- -------------------------------------------------------------------------------- /content/v1.20/guides/disaster-recovery.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Disaster Recovery with Crossplane 3 | weight: 10 4 | --- 5 | 6 | AWS wrote a guide covering disaster recovery with Crossplane. The guide covers 7 | using Crossplane to provision resources and Velero for Kubernetes backup and 8 | recovery. 9 | 10 | [Read the guide on AWS](https://aws.amazon.com/blogs/opensource/disaster-recovery-when-using-crossplane-for-infrastructure-provisioning-on-aws/). -------------------------------------------------------------------------------- /content/v1.20/software/_index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Install, Upgrade and Uninstall 3 | weight: 10 4 | description: Manage Crossplane installations 5 | --- 6 | 7 | ## [Install Crossplane](install/) 8 | How to install and customize Crossplane in an existing Kubernetes cluster. 9 | 10 | ## [Upgrade Crossplane](upgrade/) 11 | How to upgrade Crossplane to newer versions of the software. 12 | 13 | ## [Uninstall Crossplane](uninstall/) 14 | How to remove Crossplane from a Kubernetes cluster. -------------------------------------------------------------------------------- /content/v2.0-preview/api/_index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: API Reference 3 | weight: 400 4 | description: "API details for Crossplane's core types" 5 | cascade: 6 | product: crds 7 | --- 8 | 9 | The Crossplane API describes the types and parameters for the core Crossplane 10 | components. 11 | -------------------------------------------------------------------------------- /content/v2.0-preview/composition/_index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Composition 3 | weight: 51 4 | description: Understand Crossplane's core components 5 | --- 6 | -------------------------------------------------------------------------------- /content/v2.0-preview/get-started/_index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Get Started 3 | weight: 40 4 | description: Get started with Crossplane. 5 | --- 6 | 7 | -------------------------------------------------------------------------------- /content/v2.0-preview/guides/_index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Guides 3 | weight: 100 4 | description: Crossplane integrations and detailed examples. 5 | --- -------------------------------------------------------------------------------- /content/v2.0-preview/managed-resources/_index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Managed Resources 3 | weight: 52 4 | description: Understand Crossplane's core components 5 | --- 6 | -------------------------------------------------------------------------------- /content/v2.0-preview/packages/_index.md: -------------------------------------------------------------------------------- 1 | --- 2 | title: Packages 3 | weight: 53 4 | description: Understand Crossplane's core components 5 | --- 6 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "dependencies": { 3 | "@fullhuman/postcss-purgecss": "^5.0.0", 4 | "postcss": "^8.4.24", 5 | "postcss-cli": "^10.1.0", 6 | "postcss-lightningcss": "^0.7.0", 7 | "postcss-sort-media-queries": "^4.3.0" 8 | } 9 | } 10 | -------------------------------------------------------------------------------- /static/og/agenda.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /static/og/arrow-down.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /static/og/blueprint.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/blueprint.webp -------------------------------------------------------------------------------- /static/og/border.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /static/og/cncf-large.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/cncf-large.webp -------------------------------------------------------------------------------- /static/og/cncf-large@2x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/cncf-large@2x.webp -------------------------------------------------------------------------------- /static/og/cncf-large@3x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/cncf-large@3x.webp -------------------------------------------------------------------------------- /static/og/cncf.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/cncf.webp -------------------------------------------------------------------------------- /static/og/cncf@2x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/cncf@2x.webp -------------------------------------------------------------------------------- /static/og/cncf@3x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/cncf@3x.webp -------------------------------------------------------------------------------- /static/og/coming-soon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/coming-soon.png -------------------------------------------------------------------------------- /static/og/coming-soon@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/coming-soon@2x.png -------------------------------------------------------------------------------- /static/og/coming-soon@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/coming-soon@3x.png -------------------------------------------------------------------------------- /static/og/compute.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /static/og/created-by.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/created-by.png -------------------------------------------------------------------------------- /static/og/created-by@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/created-by@2x.png -------------------------------------------------------------------------------- /static/og/created-by@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/created-by@3x.png -------------------------------------------------------------------------------- /static/og/cycle.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /static/og/declarative.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /static/og/extensibility.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /static/og/favicon_16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/favicon_16x16.png -------------------------------------------------------------------------------- /static/og/favicon_192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/favicon_192x192.png -------------------------------------------------------------------------------- /static/og/favicon_32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/favicon_32x32.png -------------------------------------------------------------------------------- /static/og/favicon_48x48.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/favicon_48x48.png -------------------------------------------------------------------------------- /static/og/feature-1.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/feature-1.webp -------------------------------------------------------------------------------- /static/og/feature-1@2x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/feature-1@2x.webp -------------------------------------------------------------------------------- /static/og/feature-1@3x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/feature-1@3x.webp -------------------------------------------------------------------------------- /static/og/feature-2.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/feature-2.webp -------------------------------------------------------------------------------- /static/og/feature-2@2x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/feature-2@2x.webp -------------------------------------------------------------------------------- /static/og/feature-2@3x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/feature-2@3x.webp -------------------------------------------------------------------------------- /static/og/feature-3.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/feature-3.webp -------------------------------------------------------------------------------- /static/og/feature-3@2x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/feature-3@2x.webp -------------------------------------------------------------------------------- /static/og/feature-3@3x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/feature-3@3x.webp -------------------------------------------------------------------------------- /static/og/feature-4.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/feature-4.webp -------------------------------------------------------------------------------- /static/og/feature-4@2x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/feature-4@2x.webp -------------------------------------------------------------------------------- /static/og/feature-4@3x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/feature-4@3x.webp -------------------------------------------------------------------------------- /static/og/forum.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /static/og/hero.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/hero.webp -------------------------------------------------------------------------------- /static/og/hero@2x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/hero@2x.webp -------------------------------------------------------------------------------- /static/og/hero@3x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/hero@3x.webp -------------------------------------------------------------------------------- /static/og/pink.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /static/og/portability.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /static/og/quad-red-medium.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /static/og/quad-teal-medium.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /static/og/quad-teal-small.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /static/og/quad-white-medium.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /static/og/red-squares.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /static/og/separation.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /static/og/source.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /static/og/stacks.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/stacks.webp -------------------------------------------------------------------------------- /static/og/stacks@2x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/stacks@2x.webp -------------------------------------------------------------------------------- /static/og/stacks@3x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/stacks@3x.webp -------------------------------------------------------------------------------- /static/og/teal.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /static/og/tri-red-small.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | -------------------------------------------------------------------------------- /static/og/twitter-card_400x400.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/static/og/twitter-card_400x400.jpg -------------------------------------------------------------------------------- /static/og/unify.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | -------------------------------------------------------------------------------- /static/og/youtube.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /themes/geekboot/assets/js/main-727bf178.bundle.min.js.LICENSE.txt: -------------------------------------------------------------------------------- 1 | /*! 2 | * Dark Mode Switch v1.0.1 (https://github.com/coliff/dark-mode-switch) 3 | * Copyright 2021 C.Oliff 4 | * Licensed under MIT (https://github.com/coliff/dark-mode-switch/blob/main/LICENSE) 5 | */ 6 | 7 | /*! 8 | * clipboard.js v2.0.11 9 | * https://clipboardjs.com/ 10 | * 11 | * Licensed MIT © Zeno Rocha 12 | */ 13 | 14 | /*! instant.page v5.2.0 - (C) 2019-2023 Alexandre Dieulot - https://instant.page/license */ 15 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/_anchor.scss: -------------------------------------------------------------------------------- 1 | .bd-content { 2 | 3 | 4 | // Offset content from fixed navbar when jumping to headings 5 | :target > .anchor-link { 6 | text-decoration: none !important; 7 | opacity: 1 !important; 8 | } 9 | 10 | .anchor-link { 11 | padding: 0 .175rem; 12 | font-weight: 400; 13 | color: var(--anchor-link-color); 14 | text-decoration: none; 15 | opacity: 0; 16 | @include transition(color .15s ease-in-out, opacity .15s ease-in-out); 17 | 18 | &::after { 19 | content: "#"; 20 | } 21 | 22 | &:hover { 23 | color: var(--anchor-link-color); 24 | text-decoration: none; 25 | opacity: 1; 26 | } 27 | 28 | 29 | } 30 | } -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/_buttons.scss: -------------------------------------------------------------------------------- 1 | // Buttons 2 | // 3 | // Custom buttons for the docs. 4 | 5 | .btn { 6 | line-height: 1.5; 7 | } 8 | 9 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/_callouts.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Callouts 3 | // 4 | 5 | .bd-callout { 6 | padding-left: 1.25rem; 7 | padding-top: 1.25rem; 8 | margin-top: 1.25rem; 9 | margin-bottom: 1rem; 10 | background-color: var(--bd-callout-bg, var(--bs-gray-100)); 11 | border-left: .25rem solid var(--bd-callout-border, var(--bs-gray-300)); 12 | 13 | > :last-child { 14 | margin-bottom: 0; 15 | } 16 | 17 | + .bd-callout { 18 | margin-top: -.25rem; 19 | } 20 | 21 | .highlight { 22 | background-color: rgba($black, .05); 23 | } 24 | 25 | .bd-title { 26 | margin-top: -.5rem; 27 | padding-bottom: .1rem; 28 | border-bottom: 1px; 29 | 30 | >svg { 31 | height: 1rem; 32 | } 33 | } 34 | 35 | } 36 | 37 | // Variations 38 | @each $variant in $bd-callout-variants { 39 | .bd-callout-#{$variant} { 40 | --bd-callout-bg: rgba(var(--bs-#{$variant}-rgb), .075); 41 | --bd-callout-border: rgba(var(--bs-#{$variant}-rgb), .5); 42 | } 43 | } 44 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/_dropdown.scss: -------------------------------------------------------------------------------- 1 | .latest { 2 | background-color: var(--latest-pill-background); 3 | letter-spacing: .7px; 4 | font-weight: 500; 5 | color: var(--latest-pill-color); 6 | margin-left: 5px; 7 | } 8 | 9 | .bd-dropdown { 10 | color: var(--body-font-color); 11 | background-color: var(--dropdown-background); 12 | } 13 | 14 | .bd-dropdown-item{ 15 | background-color: var(--dropdown-background); 16 | color: var(--dropdown-color); 17 | 18 | &.active, &:hover { 19 | background-color: var(--dropdown-highlight); 20 | color: var(--body-font-color); 21 | } 22 | } 23 | 24 | .bd-border-color{ 25 | border-color: var(--dropdown-border-color); 26 | } -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/_mermaid.scss: -------------------------------------------------------------------------------- 1 | .mermaid{ 2 | fill: var(--body-font-color) !important; 3 | 4 | .messageText, .loopText>tspan, .marker, .marker.cross{ 5 | color: var(--body-font-color) !important; 6 | fill: var(--body-font-color) !important; 7 | } 8 | 9 | .flowchart-link{ 10 | stroke: var(--body-font-color) !important; 11 | } 12 | 13 | .cluster { 14 | &>rect { 15 | fill: color-mix(in srgb, 16 | color-mix(in srgb, var(--hint-note-background) 50%, #ffffff 50%) 80%, 17 | transparent 100%) !important; 18 | } 19 | span { 20 | color: var(--body-font-color) !important; 21 | } 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/_nav-tabs.scss: -------------------------------------------------------------------------------- 1 | 2 | .highlight ~ .nav-tabs { 3 | margin-top: 2rem; 4 | } 5 | 6 | // Override Bootstrap Tab styles 7 | .nav-tabs{ 8 | 9 | border-bottom: none; 10 | font-weight: bold; 11 | 12 | @include media-breakpoint-down(xl) { 13 | li { 14 | display: block !important; 15 | margin: 0px; 16 | } 17 | 18 | } 19 | 20 | &:not(.nav-link){ 21 | margin-bottom: 12px !important; 22 | } 23 | 24 | // Remove tab outline and background. 25 | .nav-link { 26 | --bs-nav-tabs-link-active-bg: none; 27 | border-top: none; 28 | border-left: none; 29 | border-right: none; 30 | 31 | @include media-breakpoint-down(xl) { 32 | padding-left: 12px !important; 33 | } 34 | 35 | // Override bootstrap hover behaviors. 36 | &:hover{ 37 | border-bottom-width: 0; 38 | } 39 | } 40 | 41 | } -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/_skippy.scss: -------------------------------------------------------------------------------- 1 | .skippy { 2 | a { 3 | color: #fff; 4 | } 5 | } 6 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/_forms.scss: -------------------------------------------------------------------------------- 1 | @import "forms/labels"; 2 | @import "forms/form-text"; 3 | @import "forms/form-control"; 4 | @import "forms/form-select"; 5 | @import "forms/form-check"; 6 | @import "forms/form-range"; 7 | @import "forms/floating-labels"; 8 | @import "forms/input-group"; 9 | @import "forms/validation"; 10 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/_grid.scss: -------------------------------------------------------------------------------- 1 | // Row 2 | // 3 | // Rows contain your columns. 4 | 5 | :root { 6 | @each $name, $value in $grid-breakpoints { 7 | --#{$prefix}breakpoint-#{$name}: #{$value}; 8 | } 9 | } 10 | 11 | @if $enable-grid-classes { 12 | .row { 13 | @include make-row(); 14 | 15 | > * { 16 | @include make-col-ready(); 17 | } 18 | } 19 | } 20 | 21 | @if $enable-cssgrid { 22 | .grid { 23 | display: grid; 24 | grid-template-rows: repeat(var(--#{$prefix}rows, 1), 1fr); 25 | grid-template-columns: repeat(var(--#{$prefix}columns, #{$grid-columns}), 1fr); 26 | gap: var(--#{$prefix}gap, #{$grid-gutter-width}); 27 | 28 | @include make-cssgrid(); 29 | } 30 | } 31 | 32 | 33 | // Columns 34 | // 35 | // Common styles for small and large grid columns 36 | 37 | @if $enable-grid-classes { 38 | @include make-grid-columns(); 39 | } 40 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/_helpers.scss: -------------------------------------------------------------------------------- 1 | @import "helpers/clearfix"; 2 | @import "helpers/color-bg"; 3 | @import "helpers/colored-links"; 4 | @import "helpers/focus-ring"; 5 | @import "helpers/icon-link"; 6 | @import "helpers/ratio"; 7 | @import "helpers/position"; 8 | @import "helpers/stacks"; 9 | @import "helpers/visually-hidden"; 10 | @import "helpers/stretched-link"; 11 | @import "helpers/text-truncation"; 12 | @import "helpers/vr"; 13 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/_transitions.scss: -------------------------------------------------------------------------------- 1 | .fade { 2 | @include transition($transition-fade); 3 | 4 | &:not(.show) { 5 | opacity: 0; 6 | } 7 | } 8 | 9 | // scss-docs-start collapse-classes 10 | .collapse { 11 | &:not(.show) { 12 | display: none; 13 | } 14 | } 15 | 16 | .collapsing { 17 | height: 0; 18 | overflow: hidden; 19 | @include transition($transition-collapse); 20 | 21 | &.collapse-horizontal { 22 | width: 0; 23 | height: auto; 24 | @include transition($transition-collapse-width); 25 | } 26 | } 27 | // scss-docs-end collapse-classes 28 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/bootstrap-reboot.scss: -------------------------------------------------------------------------------- 1 | @import "mixins/banner"; 2 | @include bsBanner(Reboot); 3 | 4 | @import "functions"; 5 | @import "variables"; 6 | @import "variables-dark"; 7 | @import "maps"; 8 | @import "mixins"; 9 | @import "root"; 10 | @import "reboot"; 11 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/bootstrap-utilities.scss: -------------------------------------------------------------------------------- 1 | @import "mixins/banner"; 2 | @include bsBanner(Utilities); 3 | 4 | // Configuration 5 | @import "functions"; 6 | @import "variables"; 7 | @import "variables-dark"; 8 | @import "maps"; 9 | @import "mixins"; 10 | @import "utilities"; 11 | 12 | // Layout & components 13 | @import "root"; 14 | 15 | // Helpers 16 | @import "helpers"; 17 | 18 | // Utilities 19 | @import "utilities/api"; 20 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/forms/_form-text.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Form text 3 | // 4 | 5 | .form-text { 6 | margin-top: $form-text-margin-top; 7 | @include font-size($form-text-font-size); 8 | font-style: $form-text-font-style; 9 | font-weight: $form-text-font-weight; 10 | color: $form-text-color; 11 | } 12 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/forms/_validation.scss: -------------------------------------------------------------------------------- 1 | // Form validation 2 | // 3 | // Provide feedback to users when form field values are valid or invalid. Works 4 | // primarily for client-side validation via scoped `:invalid` and `:valid` 5 | // pseudo-classes but also includes `.is-invalid` and `.is-valid` classes for 6 | // server-side validation. 7 | 8 | // scss-docs-start form-validation-states-loop 9 | @each $state, $data in $form-validation-states { 10 | @include form-validation-state($state, $data...); 11 | } 12 | // scss-docs-end form-validation-states-loop 13 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/helpers/_clearfix.scss: -------------------------------------------------------------------------------- 1 | .clearfix { 2 | @include clearfix(); 3 | } 4 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/helpers/_color-bg.scss: -------------------------------------------------------------------------------- 1 | // All-caps `RGBA()` function used because of this Sass bug: https://github.com/sass/node-sass/issues/2251 2 | @each $color, $value in $theme-colors { 3 | .text-bg-#{$color} { 4 | color: color-contrast($value) if($enable-important-utilities, !important, null); 5 | background-color: RGBA(var(--#{$prefix}#{$color}-rgb), var(--#{$prefix}bg-opacity, 1)) if($enable-important-utilities, !important, null); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/helpers/_focus-ring.scss: -------------------------------------------------------------------------------- 1 | .focus-ring:focus { 2 | outline: 0; 3 | // By default, there is no `--bs-focus-ring-x`, `--bs-focus-ring-y`, or `--bs-focus-ring-blur`, but we provide CSS variables with fallbacks to initial `0` values 4 | box-shadow: var(--#{$prefix}focus-ring-x, 0) var(--#{$prefix}focus-ring-y, 0) var(--#{$prefix}focus-ring-blur, 0) var(--#{$prefix}focus-ring-width) var(--#{$prefix}focus-ring-color); 5 | } 6 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/helpers/_icon-link.scss: -------------------------------------------------------------------------------- 1 | .icon-link { 2 | display: inline-flex; 3 | gap: $icon-link-gap; 4 | align-items: center; 5 | text-decoration-color: rgba(var(--#{$prefix}link-color-rgb), var(--#{$prefix}link-opacity, .5)); 6 | text-underline-offset: $icon-link-underline-offset; 7 | backface-visibility: hidden; 8 | 9 | > .bi { 10 | flex-shrink: 0; 11 | width: $icon-link-icon-size; 12 | height: $icon-link-icon-size; 13 | fill: currentcolor; 14 | @include transition($icon-link-icon-transition); 15 | } 16 | } 17 | 18 | .icon-link-hover { 19 | &:hover, 20 | &:focus-visible { 21 | > .bi { 22 | transform: var(--#{$prefix}icon-link-transform, $icon-link-icon-transform); 23 | } 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/helpers/_position.scss: -------------------------------------------------------------------------------- 1 | // Shorthand 2 | 3 | .fixed-top { 4 | position: fixed; 5 | top: 0; 6 | right: 0; 7 | left: 0; 8 | z-index: $zindex-fixed; 9 | } 10 | 11 | .fixed-bottom { 12 | position: fixed; 13 | right: 0; 14 | bottom: 0; 15 | left: 0; 16 | z-index: $zindex-fixed; 17 | } 18 | 19 | // Responsive sticky top and bottom 20 | @each $breakpoint in map-keys($grid-breakpoints) { 21 | @include media-breakpoint-up($breakpoint) { 22 | $infix: breakpoint-infix($breakpoint, $grid-breakpoints); 23 | 24 | .sticky#{$infix}-top { 25 | position: sticky; 26 | top: 0; 27 | z-index: $zindex-sticky; 28 | } 29 | 30 | .sticky#{$infix}-bottom { 31 | position: sticky; 32 | bottom: 0; 33 | z-index: $zindex-sticky; 34 | } 35 | } 36 | } 37 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/helpers/_ratio.scss: -------------------------------------------------------------------------------- 1 | // Credit: Nicolas Gallagher and SUIT CSS. 2 | 3 | .ratio { 4 | position: relative; 5 | width: 100%; 6 | 7 | &::before { 8 | display: block; 9 | padding-top: var(--#{$prefix}aspect-ratio); 10 | content: ""; 11 | } 12 | 13 | > * { 14 | position: absolute; 15 | top: 0; 16 | left: 0; 17 | width: 100%; 18 | height: 100%; 19 | } 20 | } 21 | 22 | @each $key, $ratio in $aspect-ratios { 23 | .ratio-#{$key} { 24 | --#{$prefix}aspect-ratio: #{$ratio}; 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/helpers/_stacks.scss: -------------------------------------------------------------------------------- 1 | // scss-docs-start stacks 2 | .hstack { 3 | display: flex; 4 | flex-direction: row; 5 | align-items: center; 6 | align-self: stretch; 7 | } 8 | 9 | .vstack { 10 | display: flex; 11 | flex: 1 1 auto; 12 | flex-direction: column; 13 | align-self: stretch; 14 | } 15 | // scss-docs-end stacks 16 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/helpers/_stretched-link.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Stretched link 3 | // 4 | 5 | .stretched-link { 6 | &::#{$stretched-link-pseudo-element} { 7 | position: absolute; 8 | top: 0; 9 | right: 0; 10 | bottom: 0; 11 | left: 0; 12 | z-index: $stretched-link-z-index; 13 | content: ""; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/helpers/_text-truncation.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Text truncation 3 | // 4 | 5 | .text-truncate { 6 | @include text-truncate(); 7 | } 8 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/helpers/_visually-hidden.scss: -------------------------------------------------------------------------------- 1 | // 2 | // Visually hidden 3 | // 4 | 5 | .visually-hidden, 6 | .visually-hidden-focusable:not(:focus):not(:focus-within) { 7 | @include visually-hidden(); 8 | } 9 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/helpers/_vr.scss: -------------------------------------------------------------------------------- 1 | .vr { 2 | display: inline-block; 3 | align-self: stretch; 4 | width: $vr-border-width; 5 | min-height: 1em; 6 | background-color: currentcolor; 7 | opacity: $hr-opacity; 8 | } 9 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/mixins/_alert.scss: -------------------------------------------------------------------------------- 1 | @include deprecate("`alert-variant()`", "v5.3.0", "v6.0.0"); 2 | 3 | // scss-docs-start alert-variant-mixin 4 | @mixin alert-variant($background, $border, $color) { 5 | --#{$prefix}alert-color: #{$color}; 6 | --#{$prefix}alert-bg: #{$background}; 7 | --#{$prefix}alert-border-color: #{$border}; 8 | --#{$prefix}alert-link-color: #{shade-color($color, 20%)}; 9 | 10 | @if $enable-gradients { 11 | background-image: var(--#{$prefix}gradient); 12 | } 13 | 14 | .alert-link { 15 | color: var(--#{$prefix}alert-link-color); 16 | } 17 | } 18 | // scss-docs-end alert-variant-mixin 19 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/mixins/_backdrop.scss: -------------------------------------------------------------------------------- 1 | // Shared between modals and offcanvases 2 | @mixin overlay-backdrop($zindex, $backdrop-bg, $backdrop-opacity) { 3 | position: fixed; 4 | top: 0; 5 | left: 0; 6 | z-index: $zindex; 7 | width: 100vw; 8 | height: 100vh; 9 | background-color: $backdrop-bg; 10 | 11 | // Fade for backdrop 12 | &.fade { opacity: 0; } 13 | &.show { opacity: $backdrop-opacity; } 14 | } 15 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/mixins/_banner.scss: -------------------------------------------------------------------------------- 1 | @mixin bsBanner($file) { 2 | /*! 3 | * Bootstrap #{$file} v5.3.2 (https://getbootstrap.com/) 4 | * Copyright 2011-2023 The Bootstrap Authors 5 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) 6 | */ 7 | } 8 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/mixins/_box-shadow.scss: -------------------------------------------------------------------------------- 1 | @mixin box-shadow($shadow...) { 2 | @if $enable-shadows { 3 | $result: (); 4 | 5 | @each $value in $shadow { 6 | @if $value != null { 7 | $result: append($result, $value, "comma"); 8 | } 9 | @if $value == none and length($shadow) > 1 { 10 | @warn "The keyword 'none' must be used as a single argument."; 11 | } 12 | } 13 | 14 | @if (length($result) > 0) { 15 | box-shadow: $result; 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/mixins/_clearfix.scss: -------------------------------------------------------------------------------- 1 | // scss-docs-start clearfix 2 | @mixin clearfix() { 3 | &::after { 4 | display: block; 5 | clear: both; 6 | content: ""; 7 | } 8 | } 9 | // scss-docs-end clearfix 10 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/mixins/_color-mode.scss: -------------------------------------------------------------------------------- 1 | // scss-docs-start color-mode-mixin 2 | @mixin color-mode($mode: light, $root: false) { 3 | @if $color-mode-type == "media-query" { 4 | @if $root == true { 5 | @media (prefers-color-scheme: $mode) { 6 | :root { 7 | @content; 8 | } 9 | } 10 | } @else { 11 | @media (prefers-color-scheme: $mode) { 12 | @content; 13 | } 14 | } 15 | } @else { 16 | [data-bs-theme="#{$mode}"] { 17 | @content; 18 | } 19 | } 20 | } 21 | // scss-docs-end color-mode-mixin 22 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/mixins/_color-scheme.scss: -------------------------------------------------------------------------------- 1 | // scss-docs-start mixin-color-scheme 2 | @mixin color-scheme($name) { 3 | @media (prefers-color-scheme: #{$name}) { 4 | @content; 5 | } 6 | } 7 | // scss-docs-end mixin-color-scheme 8 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/mixins/_container.scss: -------------------------------------------------------------------------------- 1 | // Container mixins 2 | 3 | @mixin make-container($gutter: $container-padding-x) { 4 | --#{$prefix}gutter-x: #{$gutter}; 5 | --#{$prefix}gutter-y: 0; 6 | width: 100%; 7 | padding-right: calc(var(--#{$prefix}gutter-x) * .5); // stylelint-disable-line function-disallowed-list 8 | padding-left: calc(var(--#{$prefix}gutter-x) * .5); // stylelint-disable-line function-disallowed-list 9 | margin-right: auto; 10 | margin-left: auto; 11 | } 12 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/mixins/_deprecate.scss: -------------------------------------------------------------------------------- 1 | // Deprecate mixin 2 | // 3 | // This mixin can be used to deprecate mixins or functions. 4 | // `$enable-deprecation-messages` is a global variable, `$ignore-warning` is a variable that can be passed to 5 | // some deprecated mixins to suppress the warning (for example if the mixin is still be used in the current version of Bootstrap) 6 | @mixin deprecate($name, $deprecate-version, $remove-version, $ignore-warning: false) { 7 | @if ($enable-deprecation-messages != false and $ignore-warning != true) { 8 | @warn "#{$name} has been deprecated as of #{$deprecate-version}. It will be removed entirely in #{$remove-version}."; 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/mixins/_image.scss: -------------------------------------------------------------------------------- 1 | // Image Mixins 2 | // - Responsive image 3 | // - Retina image 4 | 5 | 6 | // Responsive image 7 | // 8 | // Keep images from scaling beyond the width of their parents. 9 | 10 | @mixin img-fluid { 11 | // Part 1: Set a maximum relative to the parent 12 | max-width: 100%; 13 | // Part 2: Override the height to auto, otherwise images will be stretched 14 | // when setting a width and height attribute on the img element. 15 | height: auto; 16 | } 17 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/mixins/_list-group.scss: -------------------------------------------------------------------------------- 1 | @include deprecate("`list-group-item-variant()`", "v5.3.0", "v6.0.0"); 2 | 3 | // List Groups 4 | 5 | // scss-docs-start list-group-mixin 6 | @mixin list-group-item-variant($state, $background, $color) { 7 | .list-group-item-#{$state} { 8 | color: $color; 9 | background-color: $background; 10 | 11 | &.list-group-item-action { 12 | &:hover, 13 | &:focus { 14 | color: $color; 15 | background-color: shade-color($background, 10%); 16 | } 17 | 18 | &.active { 19 | color: $white; 20 | background-color: $color; 21 | border-color: $color; 22 | } 23 | } 24 | } 25 | } 26 | // scss-docs-end list-group-mixin 27 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/mixins/_lists.scss: -------------------------------------------------------------------------------- 1 | // Lists 2 | 3 | // Unstyled keeps list items block level, just removes default browser padding and list-style 4 | @mixin list-unstyled { 5 | padding-left: 0; 6 | list-style: none; 7 | } 8 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/mixins/_pagination.scss: -------------------------------------------------------------------------------- 1 | // Pagination 2 | 3 | // scss-docs-start pagination-mixin 4 | @mixin pagination-size($padding-y, $padding-x, $font-size, $border-radius) { 5 | --#{$prefix}pagination-padding-x: #{$padding-x}; 6 | --#{$prefix}pagination-padding-y: #{$padding-y}; 7 | @include rfs($font-size, --#{$prefix}pagination-font-size); 8 | --#{$prefix}pagination-border-radius: #{$border-radius}; 9 | } 10 | // scss-docs-end pagination-mixin 11 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/mixins/_reset-text.scss: -------------------------------------------------------------------------------- 1 | @mixin reset-text { 2 | font-family: $font-family-base; 3 | // We deliberately do NOT reset font-size or overflow-wrap / word-wrap. 4 | font-style: normal; 5 | font-weight: $font-weight-normal; 6 | line-height: $line-height-base; 7 | text-align: left; // Fallback for where `start` is not supported 8 | text-align: start; 9 | text-decoration: none; 10 | text-shadow: none; 11 | text-transform: none; 12 | letter-spacing: normal; 13 | word-break: normal; 14 | white-space: normal; 15 | word-spacing: normal; 16 | line-break: auto; 17 | } 18 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/mixins/_resize.scss: -------------------------------------------------------------------------------- 1 | // Resize anything 2 | 3 | @mixin resizable($direction) { 4 | overflow: auto; // Per CSS3 UI, `resize` only applies when `overflow` isn't `visible` 5 | resize: $direction; // Options: horizontal, vertical, both 6 | } 7 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/mixins/_text-truncate.scss: -------------------------------------------------------------------------------- 1 | // Text truncate 2 | // Requires inline-block or block for proper styling 3 | 4 | @mixin text-truncate() { 5 | overflow: hidden; 6 | text-overflow: ellipsis; 7 | white-space: nowrap; 8 | } 9 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/mixins/_transition.scss: -------------------------------------------------------------------------------- 1 | // stylelint-disable property-disallowed-list 2 | @mixin transition($transition...) { 3 | @if length($transition) == 0 { 4 | $transition: $transition-base; 5 | } 6 | 7 | @if length($transition) > 1 { 8 | @each $value in $transition { 9 | @if $value == null or $value == none { 10 | @warn "The keyword 'none' or 'null' must be used as a single argument."; 11 | } 12 | } 13 | } 14 | 15 | @if $enable-transitions { 16 | @if nth($transition, 1) != null { 17 | transition: $transition; 18 | } 19 | 20 | @if $enable-reduced-motion and nth($transition, 1) != null and nth($transition, 1) != none { 21 | @media (prefers-reduced-motion: reduce) { 22 | transition: none; 23 | } 24 | } 25 | } 26 | } 27 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/tests/jasmine.js: -------------------------------------------------------------------------------- 1 | /* eslint-disable camelcase */ 2 | 3 | 'use strict' 4 | 5 | const path = require('node:path') 6 | 7 | module.exports = { 8 | spec_dir: 'scss', 9 | // Make Jasmine look for `.test.scss` files 10 | spec_files: ['**/*.{test,spec}.scss'], 11 | // Compile them into JS scripts running `sass-true` 12 | requires: [path.join(__dirname, 'sass-true/register')], 13 | // Ensure we use `require` so that the require.extensions works 14 | // as `import` completely bypasses it 15 | jsLoader: 'require' 16 | } 17 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/tests/mixins/_media-query-color-mode-full.test.scss: -------------------------------------------------------------------------------- 1 | $color-mode-type: media-query; 2 | 3 | @import "../../bootstrap"; 4 | 5 | @include describe("global $color-mode-type: media-query") { 6 | @include it("compiles entirely Bootstrap CSS with media-query color mode") { // stylelint-disable-line block-no-empty 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/tests/sass-true/register.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | 3 | const path = require('node:path') 4 | 5 | const runnerPath = path.join(__dirname, 'runner').replace(/\\/g, '/') 6 | 7 | require.extensions['.scss'] = (module, filename) => { 8 | const normalizedFilename = filename.replace(/\\/g, '/') 9 | 10 | return module._compile(` 11 | const runner = require('${runnerPath}') 12 | runner('${normalizedFilename}', { describe, it }) 13 | `, filename) 14 | } 15 | -------------------------------------------------------------------------------- /themes/geekboot/assets/scss/bootstrap/tests/sass-true/runner.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | 3 | const fs = require('node:fs') 4 | const path = require('node:path') 5 | const { runSass } = require('sass-true') 6 | 7 | module.exports = (filename, { describe, it }) => { 8 | const data = fs.readFileSync(filename, 'utf8') 9 | const TRUE_SETUP = '$true-terminal-output: false; @import "true";' 10 | const sassString = TRUE_SETUP + data 11 | 12 | runSass( 13 | { describe, it, sourceType: 'string' }, 14 | sassString, 15 | { loadPaths: [path.dirname(filename)] } 16 | ) 17 | } 18 | -------------------------------------------------------------------------------- /themes/geekboot/data/assets.json: -------------------------------------------------------------------------------- 1 | { 2 | "main.js": { 3 | "src": "js/main-727bf178.bundle.min.js" 4 | }, 5 | "main-727bf178.bundle.min.js.map": { 6 | "src": "js/main-727bf178.bundle.min.js.map" 7 | } 8 | } -------------------------------------------------------------------------------- /themes/geekboot/layouts/_default/_markup/render-codeblock-mermaid.html: -------------------------------------------------------------------------------- 1 |
2 |   {{- .Inner | safeHTML }}
3 | 
4 | {{ .Page.Store.Set "hasMermaid" true }} 5 | -------------------------------------------------------------------------------- /themes/geekboot/layouts/_default/_markup/render-heading.html: -------------------------------------------------------------------------------- 1 | {{ .Text | safeHTML }} 2 | {{- if and (ge .Level .Page.Site.Params.anchors.min) (le .Level .Page.Site.Params.anchors.max) }}{{" " -}} 3 | 4 | {{- end -}} 5 | 6 | -------------------------------------------------------------------------------- /themes/geekboot/layouts/_default/baseof.html: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | {{ partial "header" . }} 7 | 8 | {{ block "body_override" . }}{{ end }} 9 | {{ partialCached "icons" . }} 10 | 11 | {{ partialCached "docs-navbar" . .IsHome }} 12 | 13 | {{ block "main" . }} 14 | {{ end }} 15 | 16 | {{ partialCached "footer" . }} 17 | {{ partialCached "scripts" . }} 18 | 19 | 20 | -------------------------------------------------------------------------------- /themes/geekboot/layouts/_default/home.html: -------------------------------------------------------------------------------- 1 | {{ partial "redirect" (dict "dest" (printf "/v%s/" (string .Site.Params.latest) ) ) }} -------------------------------------------------------------------------------- /themes/geekboot/layouts/_default/list.html: -------------------------------------------------------------------------------- 1 | {{ define "main" }} 2 | {{ partial "single-list" . }} 3 | {{ end }} 4 | -------------------------------------------------------------------------------- /themes/geekboot/layouts/_default/redirect.html: -------------------------------------------------------------------------------- 1 | {{ if .Params.docs_root }} 2 | {{ partial "redirect" (dict "dest" (printf "/v%s/" (string .Site.Params.latest) ) ) }} 3 | {{ else }} 4 | {{ partial "redirect" (dict "dest" .Params.to) }} 5 | {{ end }} -------------------------------------------------------------------------------- /themes/geekboot/layouts/_default/single.html: -------------------------------------------------------------------------------- 1 | {{ define "main" }} 2 | {{ partial "single-list" . }} 3 | {{ end }} -------------------------------------------------------------------------------- /themes/geekboot/layouts/_default/sitemap.xml: -------------------------------------------------------------------------------- 1 | {{ printf "" | safeHTML }} 2 | 4 | {{ range where (where .Site.Pages "Section" "latest") ".Params.searchExclude" "ne" "true" }} 5 | 6 | {{ .Permalink }}{{ if not .Lastmod.IsZero }} 7 | {{ safeHTML ( .Lastmod.Format "2006-01-02T15:04:05-07:00" ) }}{{ end }} 8 | 9 | {{ end }} 10 | {{/* For KB and Contrib guides */}} 11 | {{ range where .Site.Pages "Params.version" "0" }} 12 | 13 | {{ .Permalink }}{{ if not .Lastmod.IsZero }} 14 | {{ safeHTML ( .Lastmod.Format "2006-01-02T15:04:05-07:00" ) }}{{ end }} 15 | 16 | {{ end }} 17 | -------------------------------------------------------------------------------- /themes/geekboot/layouts/partials/analytics.html: -------------------------------------------------------------------------------- 1 | {{ partialCached "ms-clarity" . }} 2 | {{ partialCached "google-analytics" . }} 3 | {{ partialCached "rollworks" . }} -------------------------------------------------------------------------------- /themes/geekboot/layouts/partials/apiBuilder/backToTopButton.html: -------------------------------------------------------------------------------- 1 | {{/* HTML to create a "back to top" link */}} 2 | -------------------------------------------------------------------------------- /themes/geekboot/layouts/partials/apiBuilder/checkBigName.html: -------------------------------------------------------------------------------- 1 | {{/* Return True/False if the input is greater than 32 */}} 2 | {{/* The value 32 is max length of a Kind before it overflows */}} 3 | {{ return gt (len .) 32}} -------------------------------------------------------------------------------- /themes/geekboot/layouts/partials/apiBuilder/getVersionAndSchema.html: -------------------------------------------------------------------------------- 1 | {{/* Pass a schema and find the currently active version and return a dict of (version: , schema: ) */}} 2 | {{ $version := "" }} 3 | {{ $schema := dict }} 4 | {{ $deprecated := false }} 5 | 6 | {{ range .versions }} 7 | {{ if index . "storage" }} 8 | {{ $version = .name }} 9 | {{ $schema = .schema }} 10 | {{ $deprecated = .deprecated }} 11 | {{ else if (and (index . "served") (not $version)) }} 12 | {{ $version = .name }} 13 | {{ $schema = .schema }} 14 | {{ $deprecated = .deprecated }} 15 | {{ end }} 16 | {{ end }} 17 | 18 | {{ return (dict "version" $version 19 | "schema" $schema 20 | "deprecated" $deprecated) 21 | }} 22 | 23 | 24 | -------------------------------------------------------------------------------- /themes/geekboot/layouts/partials/apiBuilder/parentDescription.html: -------------------------------------------------------------------------------- 1 | {{/* Print the description for the top level CRD element. */}} 2 | {{ $group := .spec.group }} 3 | {{ $kind := .spec.names.kind }} 4 | {{ $version := .version }} 5 | {{ $bigName := partial "apiBuilder/checkBigName" $kind }} 6 | 7 | {{/* bigName-reset prevents the description from expanding into the x-scroll */}} 8 |
9 | {{ .description | markdownify}}
10 | -------------------------------------------------------------------------------- /themes/geekboot/layouts/partials/apiBuilder/specCollapseButtonStart.html: -------------------------------------------------------------------------------- 1 | {{/* Print out the beginning part of a CRD spec element */}} 2 | 3 |
4 | {{/* Plus/Minus Button */}} 5 | 6 | 7 | {{/* CRD name text */}} 8 | 11 | 12 |
13 |
14 | {{ .Inner | .Page.RenderString }} 15 |
16 |
17 |
18 | 19 | -------------------------------------------------------------------------------- /themes/geekboot/layouts/shortcodes/hint.html: -------------------------------------------------------------------------------- 1 | {{- $cssClass := .Get 0 | lower | default "tip" -}} 2 | 3 | {{ $icons := dict 4 | "tip" "#check" 5 | "note" "#info" 6 | "important" "#exclamation" 7 | "warning" "#fire" }} 8 | 9 |
10 |
11 | 13 | {{ $cssClass | humanize}} 14 |
15 |
16 | {{ .Inner | .Page.RenderString }} 17 |
18 |
19 | -------------------------------------------------------------------------------- /themes/geekboot/layouts/shortcodes/hover.html: -------------------------------------------------------------------------------- 1 | {{- $rand_id := now.UnixNano -}} 2 | {{- if not (.Get "label") -}} 3 | {{- errorf "\n\nNo \"label\" element for {{< hover >}} tag on %s\n\n\n" .Position -}} 4 | {{- end -}} 5 | {{- if not (.Get "line") -}} 6 | {{- errorf "\n\nNo \"line\" number element for {{< hover >}} tag on %s \n\n\n" .Position -}} 7 | {{- end -}} 8 | {{ .Inner }} -------------------------------------------------------------------------------- /themes/geekboot/layouts/shortcodes/include.html: -------------------------------------------------------------------------------- 1 | {{ $file := .Get "file" }} 2 | {{ $page := .Site.GetPage $file }} 3 | {{ $type := .Get "type" }} 4 | {{ $language := .Get "language" }} 5 | {{ $options :=.Get "options" }} 6 | 7 | {{ if eq $type "page" }} 8 | {{ if not $page }} 9 | {{ errorf "Couldn't find include file %s in page %s" $file .Position }} 10 | {{ end }} 11 | {{ end }} 12 | 13 |
14 | {{- if (.Get "language") -}} 15 | {{- highlight ($file | readFile) $language (default "linenos=table" $options) -}} 16 | {{- else if eq $type "html" -}} 17 | {{- $file | readFile | safeHTML -}} 18 | {{- else if eq $type "page" -}} 19 | {{- with $page }}{{ .Content }}{{ end -}} 20 | {{- else -}} 21 | {{- $file | readFile | $.Page.RenderString -}} 22 | {{- end -}} 23 |
24 | -------------------------------------------------------------------------------- /themes/geekboot/layouts/shortcodes/markdown.html: -------------------------------------------------------------------------------- 1 | {{- .Inner | markdownify -}} 2 | -------------------------------------------------------------------------------- /themes/geekboot/layouts/shortcodes/param.html: -------------------------------------------------------------------------------- 1 | {{- /* 2 | Work around wrong escapes in integrity attributes. 3 | Original: https://github.com/gohugoio/hugo/blob/master/tpl/tplimpl/embedded/templates/shortcodes/param.html 4 | */ -}} 5 | 6 | {{- $name := .Get 0 -}} 7 | {{- with $name -}} 8 | {{- $value := $.Page.Param . -}} 9 | {{- /* If any parameter ends with `_hash`, mark the string as safe HTML */ -}} 10 | {{- if (strings.HasSuffix $name "_hash") -}} 11 | {{- $value = $value | safeHTML -}} 12 | {{- end -}} 13 | {{- with $value }}{{ . }}{{ else }}{{ errorf "Param %q not found: %s" $name $.Position }}{{ end -}} 14 | {{- else }}{{ errorf "Missing param key: %s" $.Position }}{{ end -}} 15 | -------------------------------------------------------------------------------- /themes/geekboot/layouts/shortcodes/partial.html: -------------------------------------------------------------------------------- 1 | {{ partial (.Get 0) . }} 2 | -------------------------------------------------------------------------------- /themes/geekboot/layouts/shortcodes/tab.html: -------------------------------------------------------------------------------- 1 | 2 | {{ $id := index (seq 2000 | shuffle) 0 }} 3 | {{ .Parent.Scratch.Add "ids" (slice $id) }} 4 | {{ .Parent.Scratch.Add "names" (slice (.Get 0)) }} 5 | 6 | 7 | 8 |
{{ .Inner | $.Page.RenderString }}
14 | -------------------------------------------------------------------------------- /themes/geekboot/layouts/shortcodes/table.html: -------------------------------------------------------------------------------- 1 | {{ $htmlTable := .Inner | markdownify }} 2 | {{ $old := "" }} 3 | {{ $class := .Get 0 | default "table"}} 4 | {{ $new := printf "
" $class }} 5 | {{ $htmlTable := replace $htmlTable $old $new }} 6 |
7 | {{ $htmlTable | safeHTML }} 8 |
-------------------------------------------------------------------------------- /themes/geekboot/layouts/shortcodes/tabs.html: -------------------------------------------------------------------------------- 1 | {{ $tab_ids := .Scratch.Get "ids" }} 2 | {{ $tab_names := .Scratch.Get "names" }} 3 | {{ $first_tab := true }} 4 | {{ $counter := 0 }} 5 | 6 | {{ $ariaId := index (seq 2000 | shuffle) 0 }} 7 | 8 | 26 |
27 | {{ .Inner }} 28 |
29 | -------------------------------------------------------------------------------- /themes/geekboot/layouts/shortcodes/url.html: -------------------------------------------------------------------------------- 1 | {{- $file := .Get 0 -}} 2 | http:{{$file | absURL}} 3 | -------------------------------------------------------------------------------- /themes/geekboot/layouts/shortcodes/year.html: -------------------------------------------------------------------------------- 1 | {{- /* Outputs the current year */ -}} 2 | 3 | {{- now.Format "2006" -}} 4 | -------------------------------------------------------------------------------- /themes/geekboot/static/android-chrome-192x192.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/android-chrome-192x192.png -------------------------------------------------------------------------------- /themes/geekboot/static/android-chrome-256x256.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/android-chrome-256x256.png -------------------------------------------------------------------------------- /themes/geekboot/static/apple-touch-icon-114x114-precomposed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/apple-touch-icon-114x114-precomposed.png -------------------------------------------------------------------------------- /themes/geekboot/static/apple-touch-icon-114x114.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/apple-touch-icon-114x114.png -------------------------------------------------------------------------------- /themes/geekboot/static/apple-touch-icon-120x120-precomposed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/apple-touch-icon-120x120-precomposed.png -------------------------------------------------------------------------------- /themes/geekboot/static/apple-touch-icon-120x120.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/apple-touch-icon-120x120.png -------------------------------------------------------------------------------- /themes/geekboot/static/apple-touch-icon-144x144-precomposed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/apple-touch-icon-144x144-precomposed.png -------------------------------------------------------------------------------- /themes/geekboot/static/apple-touch-icon-144x144.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/apple-touch-icon-144x144.png -------------------------------------------------------------------------------- /themes/geekboot/static/apple-touch-icon-152x152-precomposed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/apple-touch-icon-152x152-precomposed.png -------------------------------------------------------------------------------- /themes/geekboot/static/apple-touch-icon-152x152.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/apple-touch-icon-152x152.png -------------------------------------------------------------------------------- /themes/geekboot/static/apple-touch-icon-180x180-precomposed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/apple-touch-icon-180x180-precomposed.png -------------------------------------------------------------------------------- /themes/geekboot/static/apple-touch-icon-180x180.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/apple-touch-icon-180x180.png -------------------------------------------------------------------------------- /themes/geekboot/static/apple-touch-icon-57x57-precomposed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/apple-touch-icon-57x57-precomposed.png -------------------------------------------------------------------------------- /themes/geekboot/static/apple-touch-icon-57x57.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/apple-touch-icon-57x57.png -------------------------------------------------------------------------------- /themes/geekboot/static/apple-touch-icon-60x60-precomposed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/apple-touch-icon-60x60-precomposed.png -------------------------------------------------------------------------------- /themes/geekboot/static/apple-touch-icon-60x60.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/apple-touch-icon-60x60.png -------------------------------------------------------------------------------- /themes/geekboot/static/apple-touch-icon-72x72-precomposed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/apple-touch-icon-72x72-precomposed.png -------------------------------------------------------------------------------- /themes/geekboot/static/apple-touch-icon-72x72.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/apple-touch-icon-72x72.png -------------------------------------------------------------------------------- /themes/geekboot/static/apple-touch-icon-76x76-precomposed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/apple-touch-icon-76x76-precomposed.png -------------------------------------------------------------------------------- /themes/geekboot/static/apple-touch-icon-76x76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/apple-touch-icon-76x76.png -------------------------------------------------------------------------------- /themes/geekboot/static/apple-touch-icon-precomposed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/apple-touch-icon-precomposed.png -------------------------------------------------------------------------------- /themes/geekboot/static/apple-touch-icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/apple-touch-icon.png -------------------------------------------------------------------------------- /themes/geekboot/static/browserconfig.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | #333f5b 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /themes/geekboot/static/favicon-16x16.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/favicon-16x16.png -------------------------------------------------------------------------------- /themes/geekboot/static/favicon-32x32.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/favicon-32x32.png -------------------------------------------------------------------------------- /themes/geekboot/static/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/favicon.ico -------------------------------------------------------------------------------- /themes/geekboot/static/fonts/Avenir-Black.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/fonts/Avenir-Black.eot -------------------------------------------------------------------------------- /themes/geekboot/static/fonts/Avenir-Black.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/fonts/Avenir-Black.ttf -------------------------------------------------------------------------------- /themes/geekboot/static/fonts/Avenir-Black.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/fonts/Avenir-Black.woff -------------------------------------------------------------------------------- /themes/geekboot/static/fonts/Avenir-Black.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/fonts/Avenir-Black.woff2 -------------------------------------------------------------------------------- /themes/geekboot/static/fonts/Avenir-Roman.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/fonts/Avenir-Roman.eot -------------------------------------------------------------------------------- /themes/geekboot/static/fonts/Avenir-Roman.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/fonts/Avenir-Roman.ttf -------------------------------------------------------------------------------- /themes/geekboot/static/fonts/Avenir-Roman.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/fonts/Avenir-Roman.woff -------------------------------------------------------------------------------- /themes/geekboot/static/fonts/Avenir-Roman.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/fonts/Avenir-Roman.woff2 -------------------------------------------------------------------------------- /themes/geekboot/static/fonts/Consolas.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/fonts/Consolas.eot -------------------------------------------------------------------------------- /themes/geekboot/static/fonts/Consolas.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/fonts/Consolas.ttf -------------------------------------------------------------------------------- /themes/geekboot/static/fonts/Consolas.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/fonts/Consolas.woff -------------------------------------------------------------------------------- /themes/geekboot/static/fonts/Consolas.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/fonts/Consolas.woff2 -------------------------------------------------------------------------------- /themes/geekboot/static/img/arrow-up-white.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /themes/geekboot/static/img/cncf-large.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/img/cncf-large.webp -------------------------------------------------------------------------------- /themes/geekboot/static/img/cncf-large@2x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/img/cncf-large@2x.webp -------------------------------------------------------------------------------- /themes/geekboot/static/img/cncf-large@3x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/img/cncf-large@3x.webp -------------------------------------------------------------------------------- /themes/geekboot/static/img/cncf-white.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/img/cncf-white.webp -------------------------------------------------------------------------------- /themes/geekboot/static/img/cncf.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/img/cncf.webp -------------------------------------------------------------------------------- /themes/geekboot/static/img/cncf@2x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/img/cncf@2x.webp -------------------------------------------------------------------------------- /themes/geekboot/static/img/cncf@3x.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/img/cncf@3x.webp -------------------------------------------------------------------------------- /themes/geekboot/static/img/crossplane-logo-og.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/img/crossplane-logo-og.webp -------------------------------------------------------------------------------- /themes/geekboot/static/img/download.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /themes/geekboot/static/img/lightbox.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/img/lightbox.gif -------------------------------------------------------------------------------- /themes/geekboot/static/img/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/img/loading.gif -------------------------------------------------------------------------------- /themes/geekboot/static/img/minus-black.svg: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /themes/geekboot/static/img/minus-white.svg: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /themes/geekboot/static/img/plus-150.svg: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /themes/geekboot/static/img/plus-black.svg: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /themes/geekboot/static/img/plus-white.svg: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /themes/geekboot/static/img/sort-down-dark.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /themes/geekboot/static/img/sort-down-light.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /themes/geekboot/static/img/sort-up-dark.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /themes/geekboot/static/img/sort-up-light.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | -------------------------------------------------------------------------------- /themes/geekboot/static/mstile-150x150.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/themes/geekboot/static/mstile-150x150.png -------------------------------------------------------------------------------- /themes/geekboot/static/site.webmanifest: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Crossplane Documentation", 3 | "short_name": "Crossplane Docs", 4 | "icons": [ 5 | { 6 | "src": "/android-chrome-192x192.png", 7 | "sizes": "192x192", 8 | "type": "image/png" 9 | }, 10 | { 11 | "src": "/android-chrome-256x256.png", 12 | "sizes": "256x256", 13 | "type": "image/png" 14 | } 15 | ], 16 | "theme_color": "#ffffff", 17 | "background_color": "#ffffff" 18 | } 19 | -------------------------------------------------------------------------------- /utils/htmltest/.htmltest.yml: -------------------------------------------------------------------------------- 1 | DirectoryPath: "public" 2 | # The version drop down has an empty hash. 3 | # This doesn't cause errors 4 | IgnoreInternalEmptyHash: true 5 | CheckExternal: false 6 | StripQueryString: false 7 | IgnoreURLs: 8 | - "github.com/crossplane/docs/tree/master/content/(.*).md" # Ignore the links to "view this source" 9 | - "www.googletagmanager.com/*" # Ignore google tag manager 10 | - "twitter.com/*" # Ignore twitter links since they send to login page 11 | - "https://releases.crossplane.io/stable/current/bin" # S3 bucket listing always returns 404 status even with directory listing 12 | - "docs.crossplane.io/latest/*" # Allow links to the latest release (e.g. from knowledge-base) 13 | - "github.com/crossplane/docs/issues/new*" # Ignore the "open an issue" link -------------------------------------------------------------------------------- /utils/vale/styles/Crossplane/Spelling.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # Warning: upbound.Spelling 3 | # From https://gitlab.com/gitlab-org/gitlab/-/blob/master/doc/.vale/gitlab/Spelling.yml 4 | # 5 | # Checks for possible spelling mistakes in content, not code. Results from links using angle brackets () should be corrected. 6 | # 7 | # 8 | # For a list of all options, see https://errata-ai.gitbook.io/vale/getting-started/styles 9 | extends: spelling 10 | message: 'Spelling check: "%s"?' 11 | level: error 12 | custom: true 13 | ignore: 14 | - Crossplane/spelling-exceptions.txt 15 | - Crossplane/brands.txt 16 | - Crossplane/crossplane-words.txt 17 | - Crossplane/provider-words.txt 18 | - Crossplane/allowed-jargon.txt 19 | filters: 20 | - v\d # e.g. v1, v2 21 | - v\d\.[x\d]\d? # e.g. v1.1, v2.10, v1.x 22 | - v\dalpha\d # e.g. v1alpha1, v2alpha1 23 | - v\dbeta\d # e.g. v1beta1, v2beta2 24 | - \/.* -------------------------------------------------------------------------------- /utils/vale/styles/Crossplane/brands.txt: -------------------------------------------------------------------------------- 1 | Algolia 2 | ArgoCD 3 | Bootstrap 4 | CC-BY 5 | CloudNativePG 6 | CloudSQL 7 | CNCF 8 | Commonmark 9 | DockerHub 10 | DocSearch 11 | FluxCD 12 | Geekdocs 13 | Goldmark 14 | Grammarly 15 | Graphviz 16 | HashiCorp 17 | instant.page 18 | Kubebuilder 19 | Kustomize 20 | Netlify 21 | NodeJS 22 | NPM 23 | OPA 24 | OpenAPI 25 | OpenAPIv3 26 | PostCSS 27 | postcss-lightningcss 28 | postcss-sort-media-queries 29 | PostgreSQL 30 | Protobuf 31 | PurgeCSS 32 | Rego 33 | Upbound 34 | Upbound's 35 | Upjet 36 | UXP 37 | Velero 38 | VSCode 39 | Webpack 40 | write-good 41 | Zendesk -------------------------------------------------------------------------------- /utils/vale/styles/Crossplane/provider-words.txt: -------------------------------------------------------------------------------- 1 | crossplane-contrib 2 | Dataflow 3 | DynmoDB 4 | EC2 5 | EKS 6 | eu-north-1 7 | europe-central2 8 | GCP 9 | GCP's 10 | GKE 11 | provider-upjet-aws 12 | provider-upjet-gcp 13 | provider-upjet-azure 14 | provider-aws 15 | provider-aws-iam 16 | provider-aws-s3 17 | provider-gcp 18 | provider-helm 19 | provider-kubernetes 20 | Pub/Sub 21 | PubSub 22 | S3 23 | us-central1 24 | us-east-2 25 | VPC 26 | xpkg.crossplane.io -------------------------------------------------------------------------------- /utils/vale/styles/Crossplane/spelling-exceptions.txt: -------------------------------------------------------------------------------- 1 | /tab 2 | /tabs 3 | built-in 4 | call-outs 5 | ClusterRoles` 6 | comma-separated 7 | conformant 8 | cross-reference 9 | Cross-resource 10 | cross-resource 11 | double-check 12 | double-checks 13 | dry-run 14 | end-points 15 | end-to-end 16 | free-form 17 | function-based 18 | hands-on 19 | how-to 20 | in-depth 21 | in-memory 22 | left-hand 23 | multi-cluster 24 | multi-region 25 | multi-tenant 26 | multi-tenancy 27 | non-empty 28 | non-Kubernetes 29 | per-element 30 | per-object 31 | per-resource 32 | poll-interval 33 | pre-existing 34 | pre-provisioned 35 | pre-release 36 | race-conditions 37 | read-only 38 | ready-made 39 | resource-specific 40 | right-hand 41 | run-time 42 | self-signed 43 | self-service 44 | step-by-step 45 | subresources 46 | third-party 47 | top-level 48 | unpause 49 | untrusted 50 | UpperCamelCase 51 | UpperCamelCased 52 | user-defined 53 | version-specific 54 | v2 -------------------------------------------------------------------------------- /utils/vale/styles/Google/AMPM.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Use 'AM' or 'PM' (preceded by a space)." 3 | link: 'https://developers.google.com/style/word-list' 4 | level: error 5 | nonword: true 6 | tokens: 7 | - '\d{1,2}[AP]M' 8 | - '\d{1,2} ?[ap]m' 9 | - '\d{1,2} ?[aApP]\.[mM]\.' 10 | -------------------------------------------------------------------------------- /utils/vale/styles/Google/Colons.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' should be in lowercase." 3 | link: 'https://developers.google.com/style/colons' 4 | nonword: true 5 | level: warning 6 | scope: sentence 7 | tokens: 8 | - ':\s[A-Z]' 9 | -------------------------------------------------------------------------------- /utils/vale/styles/Google/Contractions.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | message: "Use '%s' instead of '%s'." 3 | link: 'https://developers.google.com/style/contractions' 4 | level: suggestion 5 | ignorecase: true 6 | action: 7 | name: replace 8 | swap: 9 | are not: aren't 10 | cannot: can't 11 | could not: couldn't 12 | did not: didn't 13 | do not: don't 14 | does not: doesn't 15 | has not: hasn't 16 | have not: haven't 17 | how is: how's 18 | is not: isn't 19 | it is: it's 20 | should not: shouldn't 21 | that is: that's 22 | they are: they're 23 | was not: wasn't 24 | we are: we're 25 | we have: we've 26 | were not: weren't 27 | what is: what's 28 | when is: when's 29 | where is: where's 30 | will not: won't 31 | -------------------------------------------------------------------------------- /utils/vale/styles/Google/DateFormat.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Use 'July 31, 2016' format, not '%s'." 3 | link: 'https://developers.google.com/style/dates-times' 4 | ignorecase: true 5 | level: error 6 | nonword: true 7 | tokens: 8 | - '\d{1,2}(?:\.|/)\d{1,2}(?:\.|/)\d{4}' 9 | - '\d{1,2} (?:Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)|May|Jun(?:e)|Jul(?:y)|Aug(?:ust)|Sep(?:tember)?|Oct(?:ober)|Nov(?:ember)?|Dec(?:ember)?) \d{4}' 10 | -------------------------------------------------------------------------------- /utils/vale/styles/Google/Ellipses.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "In general, don't use an ellipsis." 3 | link: 'https://developers.google.com/style/ellipses' 4 | nonword: true 5 | level: warning 6 | action: 7 | name: remove 8 | tokens: 9 | - '\.\.\.' 10 | -------------------------------------------------------------------------------- /utils/vale/styles/Google/EmDash.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't put a space before or after a dash." 3 | link: 'https://developers.google.com/style/dashes' 4 | nonword: true 5 | level: error 6 | action: 7 | name: edit 8 | params: 9 | - remove 10 | - ' ' 11 | tokens: 12 | - '\s[—–]\s' 13 | -------------------------------------------------------------------------------- /utils/vale/styles/Google/EnDash.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Use an em dash ('—') instead of '–'." 3 | link: 'https://developers.google.com/style/dashes' 4 | nonword: true 5 | level: error 6 | action: 7 | name: edit 8 | params: 9 | - replace 10 | - '-' 11 | - '—' 12 | tokens: 13 | - '–' 14 | -------------------------------------------------------------------------------- /utils/vale/styles/Google/Exclamation.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't use exclamation points in text." 3 | link: 'https://developers.google.com/style/exclamation-points' 4 | nonword: true 5 | level: error 6 | action: 7 | name: remove 8 | tokens: 9 | - '\w!(?:\s|$)' 10 | -------------------------------------------------------------------------------- /utils/vale/styles/Google/FirstPerson.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Avoid first-person pronouns such as '%s'." 3 | link: 'https://developers.google.com/style/pronouns#personal-pronouns' 4 | ignorecase: true 5 | level: warning 6 | nonword: true 7 | tokens: 8 | - (?:^|\s)I\s 9 | - (?:^|\s)I,\s 10 | - \bI'm\b 11 | - \bme\b 12 | - \bmy\b 13 | - \bmine\b 14 | -------------------------------------------------------------------------------- /utils/vale/styles/Google/Gender.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't use '%s' as a gender-neutral pronoun." 3 | link: 'https://developers.google.com/style/pronouns#gender-neutral-pronouns' 4 | level: error 5 | ignorecase: true 6 | tokens: 7 | - he/she 8 | - s/he 9 | - \(s\)he 10 | -------------------------------------------------------------------------------- /utils/vale/styles/Google/HeadingPunctuation.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't put a period at the end of a heading." 3 | link: 'https://developers.google.com/style/capitalization#capitalization-in-titles-and-headings' 4 | nonword: true 5 | level: warning 6 | scope: heading 7 | action: 8 | name: edit 9 | params: 10 | - remove 11 | - '.' 12 | tokens: 13 | - '[a-z0-9][.]\s*$' 14 | -------------------------------------------------------------------------------- /utils/vale/styles/Google/Latin.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | message: "Use '%s' instead of '%s'." 3 | link: 'https://developers.google.com/style/abbreviations' 4 | ignorecase: true 5 | level: error 6 | nonword: true 7 | action: 8 | name: replace 9 | swap: 10 | '\b(?:eg|e\.g\.)[\s,]': for example 11 | '\b(?:ie|i\.e\.)[\s,]': that is 12 | -------------------------------------------------------------------------------- /utils/vale/styles/Google/LyHyphens.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' doesn't need a hyphen." 3 | link: 'https://developers.google.com/style/hyphens' 4 | level: error 5 | ignorecase: false 6 | nonword: true 7 | action: 8 | name: edit 9 | params: 10 | - replace 11 | - '-' 12 | - ' ' 13 | tokens: 14 | - '\s[^\s-]+ly-' 15 | -------------------------------------------------------------------------------- /utils/vale/styles/Google/OptionalPlurals.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't use plurals in parentheses such as in '%s'." 3 | link: 'https://developers.google.com/style/plurals-parentheses' 4 | level: error 5 | nonword: true 6 | action: 7 | name: edit 8 | params: 9 | - remove 10 | - '(s)' 11 | tokens: 12 | - '\b\w+\(s\)' 13 | -------------------------------------------------------------------------------- /utils/vale/styles/Google/Ordinal.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Spell out all ordinal numbers ('%s') in text." 3 | link: 'https://developers.google.com/style/numbers' 4 | level: error 5 | nonword: true 6 | tokens: 7 | - \d+(?:st|nd|rd|th) 8 | -------------------------------------------------------------------------------- /utils/vale/styles/Google/OxfordComma.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Use the Oxford comma in '%s'." 3 | link: 'https://developers.google.com/style/commas' 4 | scope: sentence 5 | level: warning 6 | tokens: 7 | - '(?:[^,]+,){1,}\s\w+\s(?:and|or)' 8 | -------------------------------------------------------------------------------- /utils/vale/styles/Google/Parens.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Use parentheses judiciously." 3 | link: 'https://developers.google.com/style/parentheses' 4 | nonword: true 5 | level: suggestion 6 | tokens: 7 | - '\(.+\)' 8 | -------------------------------------------------------------------------------- /utils/vale/styles/Google/Periods.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't use periods with acronyms or initialisms such as '%s'." 3 | link: 'https://developers.google.com/style/abbreviations' 4 | level: error 5 | nonword: true 6 | tokens: 7 | - '\b(?:[A-Z]\.){3,}' 8 | -------------------------------------------------------------------------------- /utils/vale/styles/Google/Quotes.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Commas and periods go inside quotation marks." 3 | link: 'https://developers.google.com/style/quotation-marks' 4 | level: error 5 | nonword: true 6 | tokens: 7 | - '"[^"]+"[.,?]' 8 | -------------------------------------------------------------------------------- /utils/vale/styles/Google/Ranges.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't add words such as 'from' or 'between' to describe a range of numbers." 3 | link: 'https://developers.google.com/style/hyphens' 4 | nonword: true 5 | level: warning 6 | tokens: 7 | - '(?:from|between)\s\d+\s?-\s?\d+' 8 | -------------------------------------------------------------------------------- /utils/vale/styles/Google/Semicolons.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Use semicolons judiciously." 3 | link: 'https://developers.google.com/style/semicolons' 4 | nonword: true 5 | scope: sentence 6 | level: suggestion 7 | tokens: 8 | - ';' 9 | -------------------------------------------------------------------------------- /utils/vale/styles/Google/Slang.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't use internet slang abbreviations such as '%s'." 3 | link: 'https://developers.google.com/style/abbreviations' 4 | ignorecase: true 5 | level: error 6 | tokens: 7 | - 'tl;dr' 8 | - ymmv 9 | - rtfm 10 | - imo 11 | - fwiw 12 | -------------------------------------------------------------------------------- /utils/vale/styles/Google/Spacing.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' should have one space." 3 | link: 'https://developers.google.com/style/sentence-spacing' 4 | level: error 5 | nonword: true 6 | action: 7 | name: remove 8 | tokens: 9 | - '[a-z][.?!] {2,}[A-Z]' 10 | - '[a-z][.?!][A-Z]' 11 | -------------------------------------------------------------------------------- /utils/vale/styles/Google/Spelling.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "In general, use American spelling instead of '%s'." 3 | link: 'https://developers.google.com/style/spelling' 4 | ignorecase: true 5 | level: warning 6 | tokens: 7 | - '(?:\w+)nised?' 8 | - '(?:\w+)logue' 9 | -------------------------------------------------------------------------------- /utils/vale/styles/Google/Units.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Put a nonbreaking space between the number and the unit in '%s'." 3 | link: 'https://developers.google.com/style/units-of-measure' 4 | nonword: true 5 | level: error 6 | tokens: 7 | - \d+(?:B|kB|MB|GB|TB) 8 | - \d+(?:ns|ms|s|min|h|d) 9 | -------------------------------------------------------------------------------- /utils/vale/styles/Google/We.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Try to avoid using first-person plural like '%s'." 3 | link: 'https://developers.google.com/style/pronouns#personal-pronouns' 4 | level: warning 5 | ignorecase: true 6 | tokens: 7 | - we 8 | - we'(?:ve|re) 9 | - ours? 10 | - us 11 | - let's 12 | -------------------------------------------------------------------------------- /utils/vale/styles/Google/Will.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Avoid using '%s'." 3 | link: 'https://developers.google.com/style/tense' 4 | ignorecase: true 5 | level: warning 6 | tokens: 7 | - will 8 | -------------------------------------------------------------------------------- /utils/vale/styles/Google/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "feed": "https://github.com/errata-ai/Google/releases.atom", 3 | "vale_version": ">=1.0.0" 4 | } 5 | -------------------------------------------------------------------------------- /utils/vale/styles/Google/vocab.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/crossplane/docs/4e1864018f529c8fa96c537cc282020474ce3215/utils/vale/styles/Google/vocab.txt -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/AMPM.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: Use 'AM' or 'PM' (preceded by a space). 3 | link: https://docs.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/term-collections/date-time-terms 4 | level: error 5 | nonword: true 6 | tokens: 7 | - '\d{1,2}[AP]M' 8 | - '\d{1,2} ?[ap]m' 9 | - '\d{1,2} ?[aApP]\.[mM]\.' 10 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/Accessibility.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't use language (such as '%s') that defines people by their disability." 3 | link: https://docs.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/term-collections/accessibility-terms 4 | level: suggestion 5 | ignorecase: true 6 | tokens: 7 | - a victim of 8 | - able-bodied 9 | - affected by 10 | - an epileptic 11 | - crippled 12 | - disabled 13 | - dumb 14 | - handicapped 15 | - handicaps 16 | - healthy 17 | - lame 18 | - maimed 19 | - missing a limb 20 | - mute 21 | - normal 22 | - sight-impaired 23 | - stricken with 24 | - suffers from 25 | - vision-impaired 26 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/Auto.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "In general, don't hyphenate '%s'." 3 | link: https://docs.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/a/auto 4 | ignorecase: true 5 | level: error 6 | action: 7 | name: convert 8 | params: 9 | - simple 10 | tokens: 11 | - 'auto-\w+' 12 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/Avoid.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't use '%s'. See the A-Z word list for details." 3 | # See the A-Z word list 4 | link: https://docs.microsoft.com/en-us/style-guide 5 | ignorecase: true 6 | level: error 7 | tokens: 8 | - abortion 9 | - and so on 10 | - app(?:lication)?s? (?:developer|program) 11 | - app(?:lication)? file 12 | - backbone 13 | - backend 14 | - contiguous selection 15 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/Dashes.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Remove the spaces around '%s'." 3 | link: https://docs.microsoft.com/en-us/style-guide/punctuation/dashes-hyphens/emes 4 | ignorecase: true 5 | nonword: true 6 | level: error 7 | action: 8 | name: edit 9 | params: 10 | - remove 11 | - ' ' 12 | tokens: 13 | - '[—–]\s|\s[—–]' 14 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/DateFormat.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: Use 'July 31, 2016' format, not '%s'. 3 | link: https://docs.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/term-collections/date-time-terms 4 | ignorecase: true 5 | level: error 6 | nonword: true 7 | tokens: 8 | - '\d{1,2} (?:Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)|May|Jun(?:e)|Jul(?:y)|Aug(?:ust)|Sep(?:tember)?|Oct(?:ober)|Nov(?:ember)?|Dec(?:ember)?) \d{4}' 9 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/DateNumbers.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't use ordinal numbers for dates." 3 | link: https://docs.microsoft.com/en-us/style-guide/numbers#numbers-in-dates 4 | level: error 5 | nonword: true 6 | ignorecase: true 7 | raw: 8 | - \b(?:Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)|May|Jun(?:e)|Jul(?:y)|Aug(?:ust)|Sep(?:tember)?|Oct(?:ober)|Nov(?:ember)?|Dec(?:ember)?)\b\s* 9 | tokens: 10 | - first 11 | - second 12 | - third 13 | - fourth 14 | - fifth 15 | - sixth 16 | - seventh 17 | - eighth 18 | - ninth 19 | - tenth 20 | - eleventh 21 | - twelfth 22 | - thirteenth 23 | - fourteenth 24 | - fifteenth 25 | - sixteenth 26 | - seventeenth 27 | - eighteenth 28 | - nineteenth 29 | - twentieth 30 | - twenty-first 31 | - twenty-second 32 | - twenty-third 33 | - twenty-fourth 34 | - twenty-fifth 35 | - twenty-sixth 36 | - twenty-seventh 37 | - twenty-eighth 38 | - twenty-ninth 39 | - thirtieth 40 | - thirty-first 41 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/DateOrder.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Always spell out the name of the month." 3 | link: https://docs.microsoft.com/en-us/style-guide/numbers#numbers-in-dates 4 | ignorecase: true 5 | level: error 6 | nonword: true 7 | tokens: 8 | - '\b\d{1,2}/\d{1,2}/(?:\d{4}|\d{2})\b' 9 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/Ellipses.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "In general, don't use an ellipsis." 3 | link: https://docs.microsoft.com/en-us/style-guide/punctuation/ellipses 4 | nonword: true 5 | level: warning 6 | action: 7 | name: remove 8 | tokens: 9 | - '\.\.\.' 10 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/FirstPerson.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Use first person (such as '%s') sparingly." 3 | link: https://docs.microsoft.com/en-us/style-guide/grammar/person 4 | ignorecase: true 5 | level: warning 6 | nonword: true 7 | tokens: 8 | - (?:^|\s)I\s 9 | - (?:^|\s)I,\s 10 | - \bI'd\b 11 | - \bI'll\b 12 | - \bI'm\b 13 | - \bI've\b 14 | - \bme\b 15 | - \bmy\b 16 | - \bmine\b 17 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/Foreign.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | message: "Use '%s' instead of '%s'." 3 | link: https://docs.microsoft.com/en-us/style-guide/word-choice/use-us-spelling-avoid-non-english-words 4 | ignorecase: true 5 | level: error 6 | nonword: true 7 | action: 8 | name: replace 9 | swap: 10 | '\b(?:eg|e\.g\.)[\s,]': for example 11 | '\b(?:ie|i\.e\.)[\s,]': that is 12 | 13 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/Gender.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't use '%s'." 3 | link: https://github.com/MicrosoftDocs/microsoft-style-guide/blob/master/styleguide/grammar/nouns-pronouns.md#pronouns-and-gender 4 | level: error 5 | ignorecase: true 6 | tokens: 7 | - he/she 8 | - s/he 9 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/GeneralURL.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "For a general audience, use 'address' rather than 'URL'." 3 | link: https://docs.microsoft.com/en-us/style-guide/urls-web-addresses 4 | level: warning 5 | action: 6 | name: replace 7 | params: 8 | - URL 9 | - address 10 | tokens: 11 | - URL 12 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/HeadingAcronyms.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Avoid using acronyms in a title or heading." 3 | link: https://docs.microsoft.com/en-us/style-guide/acronyms#be-careful-with-acronyms-in-titles-and-headings 4 | level: warning 5 | scope: heading 6 | tokens: 7 | - '[A-Z]{2,4}' 8 | exceptions: 9 | - API 10 | - AWS 11 | - CLI 12 | - CSS 13 | - GCP 14 | - JSON 15 | - RBAC 16 | - SCSS 17 | - XRD 18 | - XRDs -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/HeadingColons.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Capitalize '%s'." 3 | link: https://docs.microsoft.com/en-us/style-guide/punctuation/colons 4 | nonword: true 5 | level: error 6 | scope: heading 7 | tokens: 8 | - ':\s[a-z]' 9 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/HeadingPunctuation.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't use end punctuation in headings." 3 | link: https://docs.microsoft.com/en-us/style-guide/punctuation/periods 4 | nonword: true 5 | level: warning 6 | scope: heading 7 | action: 8 | name: edit 9 | params: 10 | - remove 11 | - '.?!' 12 | tokens: 13 | - '[a-z][.?!](?:\s|$)' 14 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/Headings.yml: -------------------------------------------------------------------------------- 1 | extends: capitalization 2 | message: "'%s' should use sentence-style capitalization." 3 | link: https://docs.microsoft.com/en-us/style-guide/capitalization 4 | level: suggestion 5 | scope: heading 6 | match: $sentence 7 | indicators: 8 | - ':' 9 | exceptions: 10 | - Azure 11 | - CLI 12 | - Code 13 | - Cosmos 14 | - Docker 15 | - Emmet 16 | - I 17 | - Kubernetes 18 | - Linux 19 | - macOS 20 | - Marketplace 21 | - MongoDB 22 | - REPL 23 | - Studio 24 | - TypeScript 25 | - URLs 26 | - Visual 27 | - VS 28 | - Windows 29 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/Hyphens.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' doesn't need a hyphen." 3 | link: https://docs.microsoft.com/en-us/style-guide/punctuation/dashes-hyphens/hyphens 4 | level: warning 5 | ignorecase: false 6 | nonword: true 7 | action: 8 | name: edit 9 | params: 10 | - replace 11 | - '-' 12 | - ' ' 13 | tokens: 14 | - '\s[^\s-]+ly-' 15 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/Negative.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Form a negative number with an en dash, not a hyphen." 3 | link: https://docs.microsoft.com/en-us/style-guide/numbers 4 | nonword: true 5 | level: error 6 | action: 7 | name: edit 8 | params: 9 | - replace 10 | - '-' 11 | - '–' 12 | tokens: 13 | - '\s-\d+\s' 14 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/Ordinal.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't add -ly to an ordinal number." 3 | link: https://docs.microsoft.com/en-us/style-guide/numbers 4 | level: error 5 | action: 6 | name: edit 7 | params: 8 | - trim 9 | - ly 10 | tokens: 11 | - firstly 12 | - secondly 13 | - thirdly 14 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/OxfordComma.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Use the Oxford comma in '%s'." 3 | link: https://docs.microsoft.com/en-us/style-guide/punctuation/commas 4 | scope: sentence 5 | level: suggestion 6 | nonword: true 7 | tokens: 8 | - '(?:[^\s,]+,){1,} \w+ (?:and|or) \w+[.?!]' 9 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/Percentages.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Use a numeral plus the units." 3 | link: https://docs.microsoft.com/en-us/style-guide/numbers 4 | nonword: true 5 | level: error 6 | tokens: 7 | - '\b[a-zA-z]+\spercent\b' 8 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/Quotes.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: 'Punctuation should be inside the quotes.' 3 | link: https://docs.microsoft.com/en-us/style-guide/punctuation/quotation-marks 4 | level: error 5 | nonword: true 6 | tokens: 7 | - '["“][^"”“]+["”][.,]' 8 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/RangeFormat.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Use an en dash in a range of numbers." 3 | link: https://docs.microsoft.com/en-us/style-guide/numbers 4 | nonword: true 5 | level: error 6 | action: 7 | name: edit 8 | params: 9 | - replace 10 | - '-' 11 | - '–' 12 | tokens: 13 | - '\b\d+\s?[-]\s?\d+\b' 14 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/RangeTime.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Use 'to' instead of a dash in '%s'." 3 | link: https://docs.microsoft.com/en-us/style-guide/numbers 4 | nonword: true 5 | level: error 6 | action: 7 | name: edit 8 | params: 9 | - replace 10 | - '[-–]' 11 | - 'to' 12 | tokens: 13 | - '\b(?:AM|PM)\s?[-–]\s?.+(?:AM|PM)\b' 14 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/Ranges.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "In most cases, use 'from' or 'through' to describe a range of numbers." 3 | link: 'https://docs.microsoft.com/en-us/style-guide/numbers' 4 | nonword: true 5 | level: warning 6 | tokens: 7 | - '\b\d+\s?[-–]\s?\d+\b' 8 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/Semicolon.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Try to simplify this sentence." 3 | link: https://docs.microsoft.com/en-us/style-guide/punctuation/semicolons 4 | nonword: true 5 | scope: sentence 6 | level: suggestion 7 | tokens: 8 | - ';' 9 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/SentenceLength.yml: -------------------------------------------------------------------------------- 1 | extends: occurrence 2 | message: "Try to keep sentences short (< 30 words)." 3 | scope: sentence 4 | level: suggestion 5 | max: 30 6 | token: \b(\w+)\b 7 | 8 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/Spacing.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' should have one space." 3 | link: https://docs.microsoft.com/en-us/style-guide/punctuation/periods 4 | level: error 5 | nonword: true 6 | tokens: 7 | - '[a-z][.?!] {2,}[A-Z]' 8 | - '[a-z][.?!][A-Z]' 9 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/Suspended.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't use '%s' unless space is limited." 3 | link: https://docs.microsoft.com/en-us/style-guide/punctuation/dashes-hyphens/hyphens 4 | ignorecase: true 5 | level: warning 6 | tokens: 7 | - '\w+- and \w+-' 8 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/URLFormat.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | message: "Use '%s' instead of '%s'." 3 | ignorecase: true 4 | level: error 5 | action: 6 | name: replace 7 | swap: 8 | URL for: URL of 9 | an URL: a URL 10 | 11 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/Units.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't spell out the number in '%s'." 3 | link: https://docs.microsoft.com/en-us/style-guide/a-z-word-list-term-collections/term-collections/units-of-measure-terms 4 | level: error 5 | raw: 6 | - '[a-zA-Z]+\s' 7 | tokens: 8 | - '(?:centi|milli)?meters' 9 | - '(?:kilo)?grams' 10 | - '(?:kilo)?meters' 11 | - '(?:mega)?pixels' 12 | - cm 13 | - inches 14 | - lb 15 | - miles 16 | - pounds 17 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/Vocab.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Verify your use of '%s' with the A-Z word list." 3 | link: 'https://docs.microsoft.com/en-us/style-guide' 4 | level: suggestion 5 | ignorecase: true 6 | tokens: 7 | - above 8 | - accessible 9 | - actionable 10 | - against 11 | - alarm 12 | - alert 13 | - alias 14 | - allows? 15 | - and/or 16 | - as well as 17 | - assure 18 | - author 19 | - avg 20 | - beta 21 | - ensure 22 | - he 23 | - insure 24 | - sample 25 | - she 26 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/We.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Try to avoid using first-person plural like '%s'." 3 | link: https://docs.microsoft.com/en-us/style-guide/grammar/person#avoid-first-person-plural 4 | level: warning 5 | ignorecase: true 6 | tokens: 7 | - we 8 | - we'(?:ve|re) 9 | - ours? 10 | - us 11 | - let's 12 | -------------------------------------------------------------------------------- /utils/vale/styles/Microsoft/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "feed": "https://github.com/errata-ai/Microsoft/releases.atom", 3 | "vale_version": ">=1.0.0" 4 | } 5 | -------------------------------------------------------------------------------- /utils/vale/styles/alex/Condescending.yml: -------------------------------------------------------------------------------- 1 | --- 2 | extends: existence 3 | message: Using '%s' may come across as condescending. 4 | link: https://css-tricks.com/words-avoid-educational-writing/ 5 | level: error 6 | ignorecase: true 7 | tokens: 8 | - obvious 9 | - obviously 10 | - simple 11 | - simply 12 | - easy 13 | - easily 14 | - of course 15 | - clearly 16 | - everyone knows 17 | -------------------------------------------------------------------------------- /utils/vale/styles/alex/Press.yml: -------------------------------------------------------------------------------- 1 | --- 2 | extends: substitution 3 | message: Consider using '%s' instead of '%s'. 4 | ignorecase: true 5 | level: warning 6 | action: 7 | name: replace 8 | swap: 9 | islamist: muslim|person of Islamic faith|fanatic|zealot|follower of islam|follower 10 | of the islamic faith 11 | islamists: muslims|people of Islamic faith|fanatics|zealots 12 | -------------------------------------------------------------------------------- /utils/vale/styles/alex/Suicide.yml: -------------------------------------------------------------------------------- 1 | --- 2 | extends: substitution 3 | message: When referring to a person, consider using '%s' instead of '%s'. 4 | ignorecase: true 5 | level: warning 6 | action: 7 | name: replace 8 | swap: 9 | commit suicide: die by suicide 10 | committed suicide: died by suicide 11 | complete suicide: die by suicide 12 | completed suicide: died by suicide 13 | epidemic of suicides: rise in suicides 14 | failed attempt: suicide attempt|attempted suicide 15 | failed suicide: suicide attempt|attempted suicide 16 | hang: the app froze|the app stopped responding|the app stopped responding to events|the 17 | app became unresponsive 18 | hanged: the app froze|the app stopped responding|the app stopped responding to events|the 19 | app became unresponsive 20 | successful suicide: die by suicide 21 | suicide epidemic: rise in suicides 22 | suicide failure: suicide attempt|attempted suicide 23 | suicide note: a note from the deceased 24 | suicide pact: rise in suicides 25 | -------------------------------------------------------------------------------- /utils/vale/styles/alex/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "feed": "https://github.com/errata-ai/alex/releases.atom", 3 | "vale_version": ">=1.0.0" 4 | } -------------------------------------------------------------------------------- /utils/vale/styles/gitlab/AlertBoxStyle.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # Error: gitlab.AlertBoxStyle 3 | # 4 | # Makes sure alert boxes are used with block quotes. Checks for 3 formatting issues: 5 | # 6 | # - Alert boxes inside a block quote ('>') 7 | # - Alert boxes with the note text on the same line 8 | # - Alert boxes using words other than 'NOTE' or 'WARNING' 9 | # 10 | # For a list of all options, see https://vale.sh/docs/topics/styles/ 11 | extends: existence 12 | message: "Update the format of the '%s' alert box. View the style guide for details." 13 | link: https://docs.gitlab.com/ee/development/documentation/styleguide/index.html#alert-boxes 14 | level: error 15 | nonword: true 16 | scope: raw 17 | raw: 18 | - '(\n *\> *(?:NOTE|WARNING)|' 19 | - '\n\n(NOTE|WARNING):[^\n]|' 20 | - '\n\n *(?:> )?\**(Note|note|TIP|Tip|tip|CAUTION|Caution|caution|DANGER|Danger|danger|Warning|warning):.*)' 21 | -------------------------------------------------------------------------------- /utils/vale/styles/gitlab/BadPlurals.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # Warning: gitlab.BadPlurals 3 | # 4 | # Don't write plural words with the '(s)' construction. 'HTTP(S)' is acceptable. 5 | # 6 | # For a list of all options, see https://vale.sh/docs/topics/styles/ 7 | extends: existence 8 | message: "Rewrite '%s' to be plural without parentheses." 9 | link: https://docs.gitlab.com/ee/development/documentation/styleguide/word_list.html#s 10 | level: warning 11 | ignorecase: true 12 | raw: 13 | - '\b\w+\(s\)(?>>>>>> .+\n' 14 | -------------------------------------------------------------------------------- /utils/vale/styles/gitlab/MultiLineLinks.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # Error: gitlab.MultiLineLinks 3 | # 4 | # Checks that links are all on a single line. 5 | # 6 | # For a list of all options, see https://vale.sh/docs/topics/styles/ 7 | extends: existence 8 | message: "Put the full link on one line, even if the link is very long." 9 | link: https://docs.gitlab.com/ee/development/documentation/styleguide/index.html#links 10 | level: error 11 | scope: raw 12 | raw: 13 | - '\[[^\[\]]*?\n[^\[\]]*?\]\([^\)]*?\)|' 14 | - '\[[^\[\]]*?\]\([^\)]*?\n[^\)]*\)' 15 | -------------------------------------------------------------------------------- /utils/vale/styles/gitlab/NonStandardQuotes.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # Warning: gitlab.NonStandardQuotes 3 | # 4 | # Use only standard single and double quotes, not left or right quotes. 5 | # 6 | # For a list of all options, see https://vale.sh/docs/topics/styles/ 7 | extends: existence 8 | message: "Use standard single quotes or double quotes only. Do not use left or right quotes." 9 | level: warning 10 | ignorecase: true 11 | link: https://docs.gitlab.com/ee/development/documentation/styleguide/index.html#punctuation 12 | scope: raw 13 | raw: 14 | - '[‘’“”]' 15 | -------------------------------------------------------------------------------- /utils/vale/styles/gitlab/Normal.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # Warning: gitlab.Normal 3 | # 4 | # Suggests alternatives for 'normal'. 5 | # 6 | # For a list of all options, see https://vale.sh/docs/topics/styles/ 7 | extends: substitution 8 | message: "Use '%s' instead of '%s'." 9 | link: https://docs.gitlab.com/ee/development/documentation/styleguide/word_list.html 10 | level: warning 11 | ignorecase: true 12 | swap: 13 | normally: "usually' or 'typically" 14 | normal: "typical' or 'standard" 15 | -------------------------------------------------------------------------------- /utils/vale/styles/gitlab/OutdatedVersions.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # Suggestion: gitlab.OutdatedVersions 3 | # 4 | # Checks for references to versions of GitLab that are no longer supported. 5 | # 6 | # For a list of all options, see https://vale.sh/docs/topics/styles/ 7 | extends: existence 8 | message: "If possible, remove the reference to '%s'." 9 | link: https://docs.gitlab.com/ee/development/documentation/versions.html 10 | level: suggestion 11 | nonword: true 12 | ignorecase: true 13 | tokens: 14 | - "GitLab (v)?2." 15 | - "GitLab (v)?3." 16 | - "GitLab (v)?4." 17 | - "GitLab (v)?5." 18 | - "GitLab (v)?6." 19 | - "GitLab (v)?7." 20 | - "GitLab (v)?8." 21 | - "GitLab (v)?9." 22 | - "GitLab (v)?10." 23 | - "GitLab (v)?11." 24 | - "GitLab (v)?12." 25 | - "GitLab (v)?13." 26 | -------------------------------------------------------------------------------- /utils/vale/styles/gitlab/OxfordComma.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # Warning: gitlab.OxfordComma 3 | # 4 | # Checks for the lack of an Oxford comma. In some cases, will catch overly complex sentence structures with lots of commas. 5 | # 6 | # For a list of all options, see https://vale.sh/docs/topics/styles/ 7 | extends: existence 8 | message: "Use a comma before the last 'and' or 'or' in a list of four or more items." 9 | link: https://docs.gitlab.com/ee/development/documentation/styleguide/index.html#punctuation 10 | level: warning 11 | raw: 12 | - '(?:[\w-_` ]+,){2,}(?:[\w-_` ]+) (and |or )' 13 | -------------------------------------------------------------------------------- /utils/vale/styles/gitlab/Possessive.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # Error: gitlab.Possessive 3 | # 4 | # The word GitLab should not be used in the possessive form. 5 | # 6 | # For a list of all options, see https://vale.sh/docs/topics/styles/ 7 | extends: existence 8 | message: "Remove 's from %s." 9 | level: error 10 | ignorecase: true 11 | link: https://docs.gitlab.com/ee/development/documentation/styleguide/word_list.html#gitlab 12 | tokens: 13 | - GitLab's 14 | -------------------------------------------------------------------------------- /utils/vale/styles/gitlab/ReadingLevel.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # Suggestion: gitlab.ReadingLevel 3 | # 4 | # Checks the Flesch-Kincaid reading level. 5 | # 6 | # https://docs.errata.ai/vale/styles#metric 7 | # 8 | # For a list of all options, see https://vale.sh/docs/topics/styles/ 9 | extends: metric 10 | message: "The grade level is %s. Aim for 8th grade or lower by using shorter sentences and words." 11 | link: https://docs.gitlab.com/ee/development/documentation/testing.html#vale-readability-score 12 | level: suggestion 13 | formula: | 14 | (0.39 * (words / sentences)) + (11.8 * (syllables / words)) - 15.59 15 | condition: "> 1" 16 | -------------------------------------------------------------------------------- /utils/vale/styles/gitlab/ReferenceLinks.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # Error: gitlab.ReferenceLinks 3 | # 4 | # Checks for reference-style links that should be converted to inline links. 5 | # 6 | # For a list of all options, see https://vale.sh/docs/topics/styles/ 7 | extends: existence 8 | message: "Put this link inline with the rest of the text." 9 | link: https://docs.gitlab.com/ee/development/documentation/styleguide/index.html#links 10 | level: error 11 | scope: raw 12 | raw: 13 | - '\n\[[^\]]*\]: .*' 14 | -------------------------------------------------------------------------------- /utils/vale/styles/gitlab/RelativeLinks.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # Error: gitlab.RelativeLinks 3 | # 4 | # Checks for the presence of absolute hyperlinks that should be relative. 5 | # 6 | # For a list of all options, see https://vale.sh/docs/topics/styles/ 7 | extends: existence 8 | message: "Use a relative link instead of a URL, and ensure the file name ends in .md and not .html." 9 | link: https://docs.gitlab.com/ee/development/documentation/styleguide/index.html#links 10 | level: error 11 | scope: raw 12 | raw: 13 | - '\[[^\]]+\]\(https?:\/\/docs\.gitlab\.com\/[ce]e.*?\)' 14 | -------------------------------------------------------------------------------- /utils/vale/styles/gitlab/RelativeLinksDoubleSlashes.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # Error: gitlab.RelativeLinksDoubleSlashes 3 | # 4 | # Checks for the presence of double slashes in relative URLs. 5 | # 6 | # For a list of all options, see https://vale.sh/docs/topics/styles/ 7 | extends: existence 8 | message: "Remove the double slash from this relative link." 9 | link: https://docs.gitlab.com/ee/development/documentation/styleguide/index.html#links 10 | level: error 11 | scope: raw 12 | raw: 13 | - '\.//' 14 | -------------------------------------------------------------------------------- /utils/vale/styles/gitlab/Repetition.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # Error: gitlab.Repetition 3 | # 4 | # Checks for duplicate words, like `the the` or `and and`. 5 | # 6 | # For a list of all options, see https://vale.sh/docs/topics/styles/ 7 | extends: repetition 8 | message: "Remove this duplicate word: '%s'." 9 | level: error 10 | alpha: true 11 | tokens: 12 | - '[^\s]+' 13 | -------------------------------------------------------------------------------- /utils/vale/styles/gitlab/SentenceLength.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # Suggestion: gitlab.SentenceLength 3 | # 4 | # Counts words in a sentence and alerts if a sentence exceeds 25 words. 5 | # 6 | # For a list of all options, see https://vale.sh/docs/topics/styles/ 7 | extends: occurrence 8 | message: "Improve readability by using fewer than 25 words in this sentence." 9 | scope: sentence 10 | link: https://docs.gitlab.com/ee/development/documentation/styleguide/index.html#language 11 | level: suggestion 12 | max: 25 13 | token: \b(\w+)\b 14 | -------------------------------------------------------------------------------- /utils/vale/styles/gitlab/SentenceSpacing.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # Error: gitlab.SentenceSpacing 3 | # 4 | # Checks for incorrect spacing (no spaces, or more than one space) around punctuation. 5 | # 6 | # For a list of all options, see https://vale.sh/docs/topics/styles/ 7 | extends: existence 8 | message: "Remove the extra space: '%s'" 9 | link: https://docs.gitlab.com/ee/development/documentation/styleguide/index.html#punctuation 10 | level: error 11 | nonword: true 12 | tokens: 13 | - '[a-z][.?!,][A-Z]' 14 | - '[\w.?!,\(\)\-":] {2,}[\w.?!,\(\)\-":]' 15 | -------------------------------------------------------------------------------- /utils/vale/styles/gitlab/Simplicity.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # Warning: gitlab.Simplicity 3 | # 4 | # Checks for words implying ease of use, to avoid cognitive dissonance for frustrated users. 5 | # 6 | # For a list of all options, see https://vale.sh/docs/topics/styles/ 7 | extends: existence 8 | message: "Remove '%s'. Be precise instead of subjective." 9 | level: warning 10 | ignorecase: true 11 | link: https://docs.gitlab.com/ee/development/documentation/styleguide/word_list.html 12 | tokens: 13 | - easy 14 | - easily 15 | - handy 16 | - simple 17 | - simply 18 | - useful 19 | -------------------------------------------------------------------------------- /utils/vale/styles/gitlab/Spelling.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # Warning: gitlab.Spelling 3 | # 4 | # Checks for possible spelling mistakes in content, not code. Results from links using angle brackets () should be corrected. 5 | # 6 | # If a word is flagged as a spelling mistake incorrectly, such as a product name, 7 | # you can submit an MR to update `spelling-exceptions.txt` with the missing word. 8 | # Commands, like `git clone` must use backticks, and must not be added to the 9 | # exceptions. 10 | # 11 | # For a list of all options, see https://vale.sh/docs/topics/styles/ 12 | extends: spelling 13 | message: "Check the spelling of '%s'. If the spelling is correct, ask a Technical Writer to add this word to the spelling exception list." 14 | level: warning 15 | ignore: 16 | - gitlab/spelling-exceptions.txt 17 | -------------------------------------------------------------------------------- /utils/vale/styles/gitlab/TabsLinks.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # Error: gitlab.TabsLinks 3 | # 4 | # Checks for the presence of links to individual GitLab UI tabs. 5 | # 6 | # For a list of all options, see https://vale.sh/docs/topics/styles/ 7 | extends: existence 8 | message: "Do not include tabs query parameters in links." 9 | link: https://docs.gitlab.com/ee/development/documentation/styleguide/index.html#tabs 10 | level: error 11 | scope: raw 12 | raw: 13 | - '\[[^\]]+\]\(.*?\.md\?tab=.*?\)' 14 | -------------------------------------------------------------------------------- /utils/vale/styles/gitlab/ToDo.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # Warning: gitlab.ToDo 3 | # 4 | # You should not use "To Do", unless it refers to the UI element. 5 | # 6 | # For a list of all options, see https://vale.sh/docs/topics/styles/ 7 | extends: substitution 8 | message: "Use 'to-do item' in most cases, or 'Add a to do' if referring to the UI button." 9 | link: https://docs.gitlab.com/ee/development/documentation/styleguide/word_list.html#to-do-item 10 | level: warning 11 | ignorecase: false 12 | swap: 13 | '[Tt]o [Dd]o [Ii]tems?': to-do item 14 | '\w* [Aa] [Tt]o [Dd]o': Add a to do 15 | -------------------------------------------------------------------------------- /utils/vale/styles/gitlab/UnclearAntecedent.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # Warning: gitlab.UnclearAntecedent 3 | # 4 | # Checks for words that need a noun for clarity. 5 | # 6 | # For a list of all options, see https://vale.sh/docs/topics/styles/ 7 | extends: existence 8 | message: "Instead of '%s', try starting this sentence with a specific subject and verb." 9 | link: https://docs.gitlab.com/ee/development/documentation/styleguide/word_list.html#this-these-that-those 10 | level: warning 11 | ignorecase: false 12 | tokens: 13 | - 'That is' 14 | - 'That was' 15 | - 'These are' 16 | - 'These were' 17 | - 'There are' 18 | - 'There were' 19 | - 'This is' 20 | - 'This was' 21 | - 'Those are' 22 | - 'Those were' 23 | -------------------------------------------------------------------------------- /utils/vale/styles/gitlab/Units.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # Warning: gitlab.Units 3 | # 4 | # Recommends a space between a number and a unit of measure. 5 | # 6 | # For a list of all options, see https://vale.sh/docs/topics/styles/ 7 | extends: existence 8 | message: "Add a space between the number and the unit in '%s'." 9 | link: 'https://docs.gitlab.com/ee/development/documentation/styleguide/' 10 | nonword: true 11 | level: warning 12 | ignorecase: true 13 | tokens: 14 | - \d+(?:B|kB|KiB|MB|MiB|GB|GiB|TB|TiB) 15 | - \d+(?:ns|ms|μs|s|min|h|d) 16 | -------------------------------------------------------------------------------- /utils/vale/styles/gitlab/VersionText.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # Error: gitlab.VersionText 3 | # 4 | # Checks that multi-line version text is formatted correctly. 5 | # 6 | # Specifically, looks for multi-line version text that doesn't use `-` to make it a list. 7 | # For example: 8 | # 9 | # - `> Introduced in GitLab 14.0. 10 | # - `> Removed in GitLab 15.0. 11 | # 12 | # For a list of all options, see https://vale.sh/docs/topics/styles/ 13 | extends: existence 14 | message: "Start each entry with `> -`. Keep long entries on one line." 15 | link: https://docs.gitlab.com/ee/development/documentation/versions.html 16 | level: error 17 | scope: raw 18 | raw: 19 | - '\n#.*\n\n> [^-].+\n[^\n`]' 20 | -------------------------------------------------------------------------------- /utils/vale/styles/gitlab/VersionTextSingleLine.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # Error: gitlab.VersionTextSingleLine 3 | # 4 | # Verifies that single-item version notes don't have a hyphen. 5 | # 6 | # For a list of all options, see https://vale.sh/docs/topics/styles/ 7 | extends: existence 8 | message: "Do not use a hyphen '-' in version text if there is only a single item." 9 | link: https://docs.gitlab.com/ee/development/documentation/versions.html#add-a-version-history-item 10 | level: error 11 | scope: raw 12 | raw: 13 | - '(\r|\n|\r\n){2}(> - .*)(\r|\n|\r\n){2}' 14 | -------------------------------------------------------------------------------- /utils/vale/styles/gitlab/Wordy.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # Suggestion: gitlab.Wordy 3 | # 4 | # Suggests shorter versions of wordy phrases. 5 | # 6 | # For a list of all options, see https://vale.sh/docs/topics/styles/ 7 | extends: substitution 8 | message: "%s" 9 | link: https://docs.gitlab.com/ee/development/documentation/styleguide/word_list.html 10 | level: suggestion 11 | ignorecase: true 12 | swap: 13 | as well as: "Use 'and' instead of 'as well as'." 14 | note that: "Remove the phrase 'note that'." 15 | please: "Use 'please' only if we've inconvenienced the user." 16 | respectively: "Remove 'respectively' and list each option instead." 17 | and so on: "Remove 'and so on'. Try to use 'like' and provide examples instead." 18 | in order to: "Remove 'in order' and leave 'to'." 19 | -------------------------------------------------------------------------------- /utils/vale/styles/gitlab/Zip.yml: -------------------------------------------------------------------------------- 1 | --- 2 | # Warning: gitlab.Zip 3 | # 4 | # Recommends all instances of something.zip be wrapped in backticks 5 | # due to the .zip top-level domain 6 | # 7 | # For a list of all options, see https://vale.sh/docs/topics/styles/ 8 | extends: existence 9 | message: "Wrap '%s' in backticks to prevent unintentional links to .zip domain names." 10 | link: 'https://docs.gitlab.com/ee/development/documentation/styleguide/index.md#backticks-in-markdown' 11 | nonword: true 12 | level: error 13 | ignorecase: true 14 | tokens: 15 | - '\b\w*\.zip' 16 | -------------------------------------------------------------------------------- /utils/vale/styles/proselint/Airlinese.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' is airlinese." 3 | ignorecase: true 4 | level: error 5 | tokens: 6 | - enplan(?:e|ed|ing|ement) 7 | - deplan(?:e|ed|ing|ement) 8 | - taking off momentarily 9 | -------------------------------------------------------------------------------- /utils/vale/styles/proselint/Annotations.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' left in text." 3 | ignorecase: false 4 | level: error 5 | tokens: 6 | - XXX 7 | - FIXME 8 | - TODO 9 | - NOTE 10 | -------------------------------------------------------------------------------- /utils/vale/styles/proselint/Apologizing.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Excessive apologizing: '%s'" 3 | ignorecase: true 4 | level: error 5 | action: 6 | name: remove 7 | tokens: 8 | - More research is needed 9 | -------------------------------------------------------------------------------- /utils/vale/styles/proselint/Archaisms.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' is archaic." 3 | ignorecase: true 4 | level: error 5 | tokens: 6 | - alack 7 | - anent 8 | - begat 9 | - belike 10 | - betimes 11 | - boughten 12 | - brocage 13 | - brokage 14 | - camarade 15 | - chiefer 16 | - chiefest 17 | - Christiana 18 | - completely obsolescent 19 | - cozen 20 | - divers 21 | - deflexion 22 | - fain 23 | - forsooth 24 | - foreclose from 25 | - haply 26 | - howbeit 27 | - illumine 28 | - in sooth 29 | - maugre 30 | - meseems 31 | - methinks 32 | - nigh 33 | - peradventure 34 | - perchance 35 | - saith 36 | - shew 37 | - sistren 38 | - spake 39 | - to wit 40 | - verily 41 | - whilom 42 | - withal 43 | - wot 44 | - enclosed please find 45 | - please find enclosed 46 | - enclosed herewith 47 | - enclosed herein 48 | - inforce 49 | - ex postfacto 50 | - foreclose from 51 | - forewent 52 | - for ever 53 | -------------------------------------------------------------------------------- /utils/vale/styles/proselint/But.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Do not start a paragraph with a 'but'." 3 | level: error 4 | scope: paragraph 5 | action: 6 | name: remove 7 | tokens: 8 | - ^But 9 | -------------------------------------------------------------------------------- /utils/vale/styles/proselint/CorporateSpeak.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' is corporate speak." 3 | ignorecase: true 4 | level: error 5 | tokens: 6 | - at the end of the day 7 | - back to the drawing board 8 | - hit the ground running 9 | - get the ball rolling 10 | - low-hanging fruit 11 | - thrown under the bus 12 | - think outside the box 13 | - let's touch base 14 | - get my manager's blessing 15 | - it's on my radar 16 | - ping me 17 | - i don't have the bandwidth 18 | - no brainer 19 | - par for the course 20 | - bang for your buck 21 | - synergy 22 | - move the goal post 23 | - apples to apples 24 | - win-win 25 | - circle back around 26 | - all hands on deck 27 | - take this offline 28 | - drill-down 29 | - elephant in the room 30 | - on my plate 31 | -------------------------------------------------------------------------------- /utils/vale/styles/proselint/Currency.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Incorrect use of symbols in '%s'." 3 | ignorecase: true 4 | raw: 5 | - \$[\d]* ?(?:dollars|usd|us dollars) 6 | -------------------------------------------------------------------------------- /utils/vale/styles/proselint/Cursing.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Consider replacing '%s'." 3 | level: error 4 | ignorecase: true 5 | tokens: 6 | - shit 7 | - piss 8 | - fuck 9 | - cunt 10 | - cocksucker 11 | - motherfucker 12 | - tits 13 | - fart 14 | - turd 15 | - twat 16 | -------------------------------------------------------------------------------- /utils/vale/styles/proselint/DateCase.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: With lowercase letters, the periods are standard. 3 | ignorecase: false 4 | level: error 5 | nonword: true 6 | tokens: 7 | - '\d{1,2} ?[ap]m\b' 8 | -------------------------------------------------------------------------------- /utils/vale/styles/proselint/DateMidnight.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Use 'midnight' or 'noon'." 3 | ignorecase: true 4 | level: error 5 | nonword: true 6 | tokens: 7 | - '12 ?[ap]\.?m\.?' 8 | -------------------------------------------------------------------------------- /utils/vale/styles/proselint/DateRedundancy.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'a.m.' is always morning; 'p.m.' is always night." 3 | ignorecase: true 4 | level: error 5 | nonword: true 6 | tokens: 7 | - '\d{1,2} ?a\.?m\.? in the morning' 8 | - '\d{1,2} ?p\.?m\.? in the evening' 9 | - '\d{1,2} ?p\.?m\.? at night' 10 | - '\d{1,2} ?p\.?m\.? in the afternoon' 11 | -------------------------------------------------------------------------------- /utils/vale/styles/proselint/DateSpacing.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "It's standard to put a space before '%s'" 3 | ignorecase: true 4 | level: error 5 | nonword: true 6 | tokens: 7 | - '\d{1,2}[ap]\.?m\.?' 8 | -------------------------------------------------------------------------------- /utils/vale/styles/proselint/Hedging.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' is hedging." 3 | ignorecase: true 4 | level: error 5 | tokens: 6 | - I would argue that 7 | - ', so to speak' 8 | - to a certain degree 9 | -------------------------------------------------------------------------------- /utils/vale/styles/proselint/Hyperbole.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' is hyperbolic." 3 | level: error 4 | nonword: true 5 | tokens: 6 | - '[a-z]+[!?]{2,}' 7 | -------------------------------------------------------------------------------- /utils/vale/styles/proselint/Jargon.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' is jargon." 3 | ignorecase: true 4 | level: error 5 | tokens: 6 | - in the affirmative 7 | - in the negative 8 | - agendize 9 | - per your order 10 | - per your request 11 | - disincentivize 12 | -------------------------------------------------------------------------------- /utils/vale/styles/proselint/LGBTOffensive.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' is offensive. Remove it or consider the context." 3 | ignorecase: true 4 | tokens: 5 | - fag 6 | - faggot 7 | - dyke 8 | - sodomite 9 | - homosexual agenda 10 | - gay agenda 11 | - transvestite 12 | - homosexual lifestyle 13 | - gay lifestyle 14 | -------------------------------------------------------------------------------- /utils/vale/styles/proselint/LGBTTerms.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | message: "Consider using '%s' instead of '%s'." 3 | ignorecase: true 4 | action: 5 | name: replace 6 | swap: 7 | homosexual man: gay man 8 | homosexual men: gay men 9 | homosexual woman: lesbian 10 | homosexual women: lesbians 11 | homosexual people: gay people 12 | homosexual couple: gay couple 13 | sexual preference: sexual orientation 14 | (?:admitted homosexual|avowed homosexual): openly gay 15 | special rights: equal rights 16 | -------------------------------------------------------------------------------- /utils/vale/styles/proselint/Malapropisms.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' is a malapropism." 3 | ignorecase: true 4 | level: error 5 | tokens: 6 | - the infinitesimal universe 7 | - a serial experience 8 | - attack my voracity 9 | -------------------------------------------------------------------------------- /utils/vale/styles/proselint/Oxymorons.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' is an oxymoron." 3 | ignorecase: true 4 | level: error 5 | tokens: 6 | - amateur expert 7 | - increasingly less 8 | - advancing backwards 9 | - alludes explicitly to 10 | - explicitly alludes to 11 | - totally obsolescent 12 | - completely obsolescent 13 | - generally always 14 | - usually always 15 | - increasingly less 16 | - build down 17 | - conspicuous absence 18 | - exact estimate 19 | - found missing 20 | - intense apathy 21 | - mandatory choice 22 | - organized mess 23 | -------------------------------------------------------------------------------- /utils/vale/styles/proselint/P-Value.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "You should use more decimal places, unless '%s' is really true." 3 | ignorecase: true 4 | level: suggestion 5 | tokens: 6 | - 'p = 0\.0{2,4}' 7 | -------------------------------------------------------------------------------- /utils/vale/styles/proselint/RASSyndrome.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' is redundant." 3 | level: error 4 | action: 5 | name: edit 6 | params: 7 | - split 8 | - ' ' 9 | - '0' 10 | tokens: 11 | - ABM missile 12 | - ACT test 13 | - ABM missiles 14 | - ABS braking system 15 | - ATM machine 16 | - CD disc 17 | - CPI Index 18 | - GPS system 19 | - GUI interface 20 | - HIV virus 21 | - ISBN number 22 | - LCD display 23 | - PDF format 24 | - PIN number 25 | - RAS syndrome 26 | - RIP in peace 27 | - please RSVP 28 | - SALT talks 29 | - SAT test 30 | - UPC codes 31 | -------------------------------------------------------------------------------- /utils/vale/styles/proselint/Skunked.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' is a bit of a skunked term — impossible to use without issue." 3 | ignorecase: true 4 | level: error 5 | tokens: 6 | - bona fides 7 | - deceptively 8 | - decimate 9 | - effete 10 | - fulsome 11 | - hopefully 12 | - impassionate 13 | - Thankfully 14 | -------------------------------------------------------------------------------- /utils/vale/styles/proselint/Spelling.yml: -------------------------------------------------------------------------------- 1 | extends: consistency 2 | message: "Inconsistent spelling of '%s'." 3 | level: error 4 | ignorecase: true 5 | either: 6 | advisor: adviser 7 | centre: center 8 | colour: color 9 | emphasise: emphasize 10 | finalise: finalize 11 | focussed: focused 12 | labour: labor 13 | learnt: learned 14 | organise: organize 15 | organised: organized 16 | organising: organizing 17 | recognise: recognize 18 | -------------------------------------------------------------------------------- /utils/vale/styles/proselint/Typography.yml: -------------------------------------------------------------------------------- 1 | extends: substitution 2 | message: Consider using the '%s' symbol instead of '%s'. 3 | level: error 4 | nonword: true 5 | swap: 6 | '\.\.\.': … 7 | '\([cC]\)': © 8 | '\(TM\)': ™ 9 | '\(tm\)': ™ 10 | '\([rR]\)': ® 11 | '[0-9]+ ?x ?[0-9]+': × 12 | -------------------------------------------------------------------------------- /utils/vale/styles/proselint/Uncomparables.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "'%s' is not comparable" 3 | ignorecase: true 4 | level: error 5 | action: 6 | name: edit 7 | params: 8 | - split 9 | - ' ' 10 | - '1' 11 | raw: 12 | - \b(?:absolutely|most|more|less|least|very|quite|largely|extremely|increasingly|kind of|mildy|hardly|greatly|sort of)\b\s* 13 | tokens: 14 | - absolute 15 | - adequate 16 | - complete 17 | - correct 18 | - certain 19 | - devoid 20 | - entire 21 | - 'false' 22 | - fatal 23 | - favorite 24 | - final 25 | - ideal 26 | - impossible 27 | - inevitable 28 | - infinite 29 | - irrevocable 30 | - main 31 | - manifest 32 | - only 33 | - paramount 34 | - perfect 35 | - perpetual 36 | - possible 37 | - preferable 38 | - principal 39 | - singular 40 | - stationary 41 | - sufficient 42 | - 'true' 43 | - unanimous 44 | - unavoidable 45 | - unbroken 46 | - uniform 47 | - unique 48 | - universal 49 | - void 50 | - whole 51 | -------------------------------------------------------------------------------- /utils/vale/styles/proselint/Very.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Remove '%s'." 3 | ignorecase: true 4 | level: error 5 | tokens: 6 | - very 7 | -------------------------------------------------------------------------------- /utils/vale/styles/proselint/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "author": "jdkato", 3 | "description": "A Vale-compatible implementation of the proselint linter.", 4 | "email": "support@errata.ai", 5 | "lang": "en", 6 | "url": "https://github.com/errata-ai/proselint/releases/latest/download/proselint.zip", 7 | "feed": "https://github.com/errata-ai/proselint/releases.atom", 8 | "issues": "https://github.com/errata-ai/proselint/issues/new", 9 | "license": "BSD-3-Clause", 10 | "name": "proselint", 11 | "sources": [ 12 | "https://github.com/amperser/proselint" 13 | ], 14 | "vale_version": ">=1.0.0", 15 | "coverage": 0.0, 16 | "version": "0.1.0" 17 | } 18 | -------------------------------------------------------------------------------- /utils/vale/styles/write-good/E-Prime.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Try to avoid using '%s'." 3 | ignorecase: true 4 | level: suggestion 5 | tokens: 6 | - am 7 | - are 8 | - aren't 9 | - be 10 | - been 11 | - being 12 | - he's 13 | - here's 14 | - here's 15 | - how's 16 | - i'm 17 | - is 18 | - isn't 19 | - it's 20 | - she's 21 | - that's 22 | - there's 23 | - they're 24 | - was 25 | - wasn't 26 | - we're 27 | - were 28 | - weren't 29 | - what's 30 | - where's 31 | - who's 32 | - you're 33 | -------------------------------------------------------------------------------- /utils/vale/styles/write-good/Illusions.yml: -------------------------------------------------------------------------------- 1 | extends: repetition 2 | message: "'%s' is repeated!" 3 | level: warning 4 | alpha: true 5 | action: 6 | name: edit 7 | params: 8 | - truncate 9 | - " " 10 | tokens: 11 | - '[^\s]+' 12 | -------------------------------------------------------------------------------- /utils/vale/styles/write-good/So.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't start a sentence with '%s'." 3 | level: error 4 | raw: 5 | - '(?:[;-]\s)so[\s,]|\bSo[\s,]' 6 | -------------------------------------------------------------------------------- /utils/vale/styles/write-good/ThereIs.yml: -------------------------------------------------------------------------------- 1 | extends: existence 2 | message: "Don't start a sentence with '%s'." 3 | ignorecase: false 4 | level: error 5 | raw: 6 | - '(?:[;-]\s)There\s(is|are)|\bThere\s(is|are)\b' 7 | -------------------------------------------------------------------------------- /utils/vale/styles/write-good/meta.json: -------------------------------------------------------------------------------- 1 | { 2 | "feed": "https://github.com/errata-ai/write-good/releases.atom", 3 | "vale_version": ">=1.0.0" 4 | } 5 | -------------------------------------------------------------------------------- /utils/webpack/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "scripts": { 3 | "prod": "webpack --mode=production", 4 | "dev": "webpack --mode=development" 5 | }, 6 | "devDependencies": { 7 | "@popperjs/core": "^2.11.6", 8 | "clipboard": "^2.0.11", 9 | "instant.page": "^5.1.1", 10 | "webpack": "^5.75.0", 11 | "webpack-cli": "^5.0.0", 12 | "webpack-manifest-plugin": "^5.0.0" 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /utils/webpack/src/js/globalScripts.js: -------------------------------------------------------------------------------- 1 | // The collection of things to load on all pages 2 | 3 | // Color mode switcher 4 | import ColorMode from './colorMode'; 5 | 6 | // Link pre-fetcher 7 | // https://instant.page/ 8 | import 'instant.page'; 9 | 10 | // Bootstrap JS libraries in use. 11 | // IF a new Bootstrap feature requires JS, add it here. 12 | import './bootstrap/src/base-component'; 13 | import './bootstrap/src/button'; 14 | import './bootstrap/src/collapse'; 15 | import './bootstrap/src/dropdown'; 16 | import './bootstrap/src/popover'; 17 | import './bootstrap/src/scrollspy'; 18 | import './bootstrap/src/tab'; 19 | import './bootstrap/src/offcanvas'; 20 | 21 | // If a link is to an anchor inside a tab, open the tab and go to the anchor 22 | import './tabDeepAnchor.js'; 23 | 24 | // Customize the clipboard to support the `copy-lines` function 25 | import './customClipboard.js'; 26 | 27 | // Hover to highlight function 28 | import './hoverHighlight.js'; 29 | 30 | // "Join Slack" notification bubble 31 | import './slackNotify.js'; -------------------------------------------------------------------------------- /utils/webpack/src/js/slackNotify.js: -------------------------------------------------------------------------------- 1 | /* 2 | * Create a PopperJS popover for the Join Slack notifications. 3 | */ 4 | 5 | import { createPopper } from '@popperjs/core'; 6 | 7 | const slackIcon = document.querySelector('#slack'); 8 | const tooltip = document.querySelector('#tooltip'); 9 | 10 | createPopper(slackIcon, tooltip, { 11 | modifiers: [ 12 | { 13 | name: 'offset', 14 | options: { 15 | offset: [0, 12], 16 | }, 17 | }, 18 | ], 19 | }); 20 | 21 | --------------------------------------------------------------------------------