{"id":27203568,"url":"https://github.com/cometbft/cometbft-docs","last_synced_at":"2025-04-09T22:40:19.218Z","repository":{"id":74810601,"uuid":"591407130","full_name":"cometbft/cometbft-docs","owner":"cometbft","description":"Documentation config, theme and build workflows for CometBFT","archived":false,"fork":false,"pushed_at":"2024-12-19T22:15:00.000Z","size":3929,"stargazers_count":9,"open_issues_count":14,"forks_count":6,"subscribers_count":5,"default_branch":"main","last_synced_at":"2024-12-19T23:20:59.908Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"SCSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cometbft.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2023-01-20T17:23:00.000Z","updated_at":"2024-12-19T22:15:03.000Z","dependencies_parsed_at":"2023-12-12T21:26:02.482Z","dependency_job_id":"f469a477-0172-449c-b99f-f30c0948f8d9","html_url":"https://github.com/cometbft/cometbft-docs","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cometbft%2Fcometbft-docs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cometbft%2Fcometbft-docs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cometbft%2Fcometbft-docs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cometbft%2Fcometbft-docs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cometbft","download_url":"https://codeload.github.com/cometbft/cometbft-docs/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248124840,"owners_count":21051757,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-04-09T22:40:15.548Z","updated_at":"2025-04-09T22:40:19.194Z","avatar_url":"https://github.com/cometbft.png","language":"SCSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CometBFT Documentation\n\nThis repository contains the logic to build the CometBFT documentation site\n(\u003chttps://docs.cometbft.com\u003e)\n\nIt uses [Jekyll](https://jekyllrb.com/) framework to the site structure and\ntemplating.\n\n## Documentation Content Updates\n\nThe technical content for the documentation is retrieved from the\n[CometBFT](https://github.com/cometbft/cometbft) repository, more specifically\nthe `/docs` and `/spec` folders.\n\nWe are constantly updating the documentation, but if you find any issues related\nto the documentation, such as inaccurate content or typos, please \ncreate a [new an issue](https://github.com/cometbft/cometbft/issues/new?assignees=\u0026labels=bug%2C+needs-triage\u0026template=bug-report.md) \nin the `cometbft` repository. \n\n\u003e **NOTE**: For any issue that might be related to the UI/UX of the documentation website, please [open an issue](https://github.com/cometbft/cometbft-docs/issues/new) in this repository\n\n## Configuring versions\n\nThe [`VERSIONS`](./VERSIONS) file controls which versions of the documentation\nare built, their output paths/URLs, and whether or not they are visible in the\ndropdown selector in the documentation.\n\nThe format of the `VERSIONS` file is as follows:\n\n```\nbranch    output_path    visible_in_menu\n```\n\nThe number of spaces between each column does not matter, as long as there are\nspaces. Comments within the file itself are **not** supported. The\n`visible_in_menu` field is a YAML boolean value, meaning that it can be either\n`true`, `false`, `yes` or `no`. There must be **no** newline at the end of the\n`VERSIONS` file.\n\nFor example, the following `VERSIONS` file:\n\n```\nmain      main    false\nv0.37.x   v0.37   true\nv0.34.x   v0.34   true\n```\n\nwill result in the following:\n\n- The `main` branch's docs will be built to `https://docs.cometbft.com/main`,\n  but will **not** be visible in the version selector dropdown menu.\n- The `v0.37.x` branch's docs will be built to\n  `https://docs.cometbft.com/v0.37`, and the `v0.37` version **will** be visible\n  in the version selector dropdown menu.\n- The `v0.34.x` branch's docs will be built to\n  `https://docs.cometbft.com/v0.34`, and the `v0.34` version **will** be visible\n  in the version selector dropdown menu.\n\nThe **last** entry in the `VERSIONS` file will be configured as the default\nlanding page when users navigate to the root of the documentation site at\n`https://docs.cometbft.com/`.\n\n## Building the site\n\nIn order to build the website locally, please run the following command:\n\n```bash\n# Fetch the different branches' documentation into the local \"build/\" directory.\nmake fetch\n\n# Build the documentation in a Docker container using the latest stable Jekyll\n# release.\nmake build\n```\n\nIf everything runs correctly, a new folder will be created `_site`. This folder\ncontains the website files built by Jekyll.\n\n### Building for local development\n\nIf you want to add a `dev` version that fetches the `/docs` and `/specs` folder from a local branch of `cometbft`,\nyou can specify an environment variable `LOCAL_DOCS_REPO` pointing to the `cometbft` repo location. For example:\n\n```\nmake LOCAL_DOCS_REPO=../cometbft fetch\n```\n\nThis will add a `dev` option to the dropdown versions control on the website, and it will make it the default version. \n\nThis is helpful when \nyou need to update content in the `docs` or `spec` folder and test them locally before committing the changes\nto the `cometbft` repo.\n\n## Running the site locally\n\nIf you want to run the site locally you can run the follow command:\n\n```\nmake serve\n```\n\nThis will run a docker container with Jekyll to host the website locally. \n\n```\n---\u003e Preparing to host documentation site locally\n---\u003e This might take a few seconds...\n---\u003e If the site was not built with 'make build', this will take a bit longer...\n...\n Auto-regeneration: enabled for '/srv/jekyll'\n    Server address: http://0.0.0.0:8088/\n  Server running... press ctrl-c to stop.\n\n```\n\nRunning it with Jekyll offers hot-reloading and any modifications to local files \n(e.g. '.md' documents will automatically rebuild the website and changes will show in the browser)\n\nNavigate to `http://0.0.0.0:8088` to see the website in your local browser.\n\n\u003e **Note**: the `make build` and `make serve` assumes you have [Docker](https://www.docker.com/) properly installed in your machine.\n\n## Checking for broken links\n\nIf you want to check for any broken links locally on the documentation site, \nyou can run the `make check-broken-links` command. This will go through all \nthe pages a look for links that return a `404` error.\n\nThis command leverages a tool called [muffet](https://github.com/raviqqe/muffet). \nThis tool will be installed if you don't have it yet \n(this assumes you have `Golang` properly installed in your machine)\n\n\u003e **NOTE**: Before you run the command to check for broken links, \n\u003e open a terminal window and run `make serve` first. \n\u003e This will run the website locally as per instructions above\n\nOpen another terminal window and run:\n```\nmake check-broken-links\n```\n\nThis will go through each release and check the links, for example:\n```\n---\u003e Checking for broken link on the pages...\n---\u003e Installing \"muffet\" tool to check links if not already installed...\n------\u003e Checking broken links for release main\n------\u003e Saved broken links for release main in broken_links_main.txt\n------\u003e Checking broken links for release v0.37-rc2\n------\u003e Saved broken links for release v0.37-rc2 in broken_links_v0.37-rc2.txt\n------\u003e Checking broken links for release v0.34\n------\u003e Saved broken links for release v0.34 in broken_links_v0.34.txt\n```\n\nOnce the command finishes, you can see the broken links information for each release \nwill be stored in the `broken_links_[version].txt` generated files.\n\n\u003e **NOTE**: Every time you run this command, the files `broken_links_[version].txt` \n\u003e will be removed before the command runs\n\n## Troubleshooting\n\n### Unauthorized error in Docker\nIf you run the `make build` or `make serve` command and get a message like the one below:\n\n```\nError response from daemon: Head \"https://registry-1.docker.io/v2/jekyll/builder/manifests/latest\": \nunauthorized: please use personal access token to login\n```\n\nPlease ensure you [login in Docker using your Personal Access Token](https://docs.docker.com/docker-hub/access-tokens/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcometbft%2Fcometbft-docs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcometbft%2Fcometbft-docs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcometbft%2Fcometbft-docs/lists"}