{"id":14961373,"url":"https://github.com/godotengine/godot-interactive-changelog","last_synced_at":"2025-08-02T00:05:00.051Z","repository":{"id":152041528,"uuid":"620453293","full_name":"godotengine/godot-interactive-changelog","owner":"godotengine","description":"An interactive tool to view a changelog for each version of Godot Engine","archived":false,"fork":false,"pushed_at":"2025-01-16T23:28:03.000Z","size":42585,"stargazers_count":33,"open_issues_count":9,"forks_count":16,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-29T10:51:29.797Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://godotengine.github.io/godot-interactive-changelog/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/godotengine.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","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,"publiccode":null,"codemeta":null},"funding":{"custom":"https://fund.godotengine.org/"}},"created_at":"2023-03-28T17:59:09.000Z","updated_at":"2025-01-18T18:44:45.000Z","dependencies_parsed_at":"2024-11-07T21:29:01.220Z","dependency_job_id":null,"html_url":"https://github.com/godotengine/godot-interactive-changelog","commit_stats":{"total_commits":130,"total_committers":4,"mean_commits":32.5,"dds":0.4,"last_synced_commit":"2eb05c005c6aa75f3a3b97217dcfe46d271634fc"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/godotengine%2Fgodot-interactive-changelog","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/godotengine%2Fgodot-interactive-changelog/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/godotengine%2Fgodot-interactive-changelog/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/godotengine%2Fgodot-interactive-changelog/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/godotengine","download_url":"https://codeload.github.com/godotengine/godot-interactive-changelog/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":237092263,"owners_count":19254181,"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":"2024-09-24T13:24:55.271Z","updated_at":"2025-08-02T00:05:00.031Z","avatar_url":"https://github.com/godotengine.png","language":"JavaScript","funding_links":["https://fund.godotengine.org/"],"categories":[],"sub_categories":[],"readme":"# Godot Interactive Changelog\n\nThis project is provided for Godot Engine users and contributors to document\nin a complete and comprehensive manner changes that go into each release and\ndeveloper preview of the engine. This project aims to largely remove the manual\nlabor from creating and maintaining a project changelog, and provides tools\nto generate static information, such as CHANGELOG.md and release notes for the blog.\n\nThe benefit of this automated system is that it allows to track PRs as well as\nindividual commits, preserving important context for the work that goes into\neach release. For example, it can also detect commits that were cherry-picked,\nand identify their original PRs.\n\nLive website: https://godotengine.github.io/godot-interactive-changelog/\n\n## Contributing\n\nThis project is written in JavaScript and is built using Node.JS. HTML and CSS are\nused for the presentation. The end result of the build process is completely static\nand can be server from any web server, no Node.JS required.\n\nFront-end is designed in a reactive manner using industry standard Web Components\n(powered by `lit-element`). This provides native browser support, and results in a\nsmall overhead from the build process.\n\nTo build the project locally you need to have Node.JS installed (12.x and newer\nshould work just fine).\n\nThis project uses GitHub's GraphQL API. To fetch live data you need to generate\na [personal OAuth token](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token).\nYou can supply your token to the scripts using the `GRAPHQL_TOKEN` environment\nvariable. Note, that if you don't have member access to the organization, you\nmay not be able to access all the information used when generating the database.\n\n\u003e [!TIP]\nFor convenience, it's recommended to store the `GRAPHQL_TOKEN` environment variable\nin a `.env` file at the repository root.\n\n### Building the website\n\n1. Clone or download the project.\n2. From the project root run `npm install` or `yarn` to install dependencies.\n3. Run `npm run build` or `yarn run build` to build the pages.\n4. Run `npm run publish-db` or `yarn run publish-db` to prepare and copy configs and data.\n5. Serve the `out/` folder with your method of choice (e.g. using Python 3:\n   `python -m http.server 8080 -d ./out`).\n\n`rollup` is used for browser packing of scripts and copying of static assets. The\ndata fetching script is plain JavaScript with `node-fetch` used to polyfill\n`fetch()`-like API.\n\n### Adding a new version\n\n1. Add a config file under the `./configs` folder.\n  - It must follow this format: `\u003cREPO_OWNER\u003e.\u003cREPO_NAME\u003e.\u003cVERSION\u003e.json`,\n    e.g. `godotengine.godot.1.2.3.json`.\n2. Run `npm run compose-db version:\u003cVERSION\u003e` or `yarn run compose-db version:\u003cVERSION\u003e`\n   to fetch the data from GitHub.\n  - This project defaults to `godotengine/godot`, but you can also customize it\n    with `owner:\u003cREPO_OWNER\u003e` and `repo:\u003cREPO_NAME\u003e`.\n  - By default the repo is checked out to the `./temp` folder, you can skip this step\n    with `skip-checkout`.\n  - GitHub API is very flaky and requests can fail from time to time due to the\n    server-side issues; the compose script has a few tricks to mitigate that, but\n    ultimately it can still randomly fail on bigger changelogs. Just run it again.\n3. Run `npm run publish-db` or `yarn run publish-db` to prepare and copy configs and data.\n\n## License\n\nThis project is provided under the [MIT License](LICENSE.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgodotengine%2Fgodot-interactive-changelog","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgodotengine%2Fgodot-interactive-changelog","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgodotengine%2Fgodot-interactive-changelog/lists"}