{"id":26579677,"url":"https://github.com/igorbayerl/gdcli","last_synced_at":"2025-06-29T13:03:03.325Z","repository":{"id":275220427,"uuid":"925364396","full_name":"IgorBayerl/gdcli","owner":"IgorBayerl","description":"Cli tool similar to npm but for godot projects","archived":false,"fork":false,"pushed_at":"2025-02-06T20:25:54.000Z","size":6369,"stargazers_count":6,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-12T02:54:33.741Z","etag":null,"topics":["cli","command-line-tool","godot","godot-engine","godot4","godotengine","tool"],"latest_commit_sha":null,"homepage":"https://igorbayerl.github.io/gdcli/","language":"Go","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/IgorBayerl.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,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-01-31T18:30:57.000Z","updated_at":"2025-03-25T09:32:37.000Z","dependencies_parsed_at":"2025-06-12T02:42:24.887Z","dependency_job_id":"6fff2e0f-3cfb-4456-9eda-35ea47f61004","html_url":"https://github.com/IgorBayerl/gdcli","commit_stats":null,"previous_names":["igorbayerl/gdcli"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/IgorBayerl/gdcli","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IgorBayerl%2Fgdcli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IgorBayerl%2Fgdcli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IgorBayerl%2Fgdcli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IgorBayerl%2Fgdcli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/IgorBayerl","download_url":"https://codeload.github.com/IgorBayerl/gdcli/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/IgorBayerl%2Fgdcli/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262598139,"owners_count":23334667,"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":["cli","command-line-tool","godot","godot-engine","godot4","godotengine","tool"],"created_at":"2025-03-23T06:18:55.468Z","updated_at":"2025-06-29T13:03:03.260Z","avatar_url":"https://github.com/IgorBayerl.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# gdcli (Godot Project CLI)\n\nCli tool similar to npm but for Godot projects\n\n![Icon](\u003cicon.png\u003e)\n\n## Overview\n\n`gdcli` is a command-line interface tool for starting and managing Godot projects more efficiently. It simplifies the process of managing different Godot versions and setting up project structures.\n\n### Problems It Solves\n\nFor people experimenting with multiple Godot projects, managing Godot versions and starting repositories with the correct file structure can be cumbersome. `gdcli` addresses these issues with simple commands.\n\n### Features\n\n- **Initialize Projects**: With `gdcli init`, the tool prompts you with questions and creates a Godot project with a ready-to-use folder structure.\n- **Manage Godot Versions**: After cloning a project from a repository, you no longer need to manually find the correct Godot version. Simply use:\n  - `gdcli install`\n  - `gdcli open`\n\n## Getting Started\n\n1. Download the latest release from the [Releases](https://github.com/IgorBayerl/gdcli/releases) page.\n2. Place the downloaded file in a directory of your choice.\n3. Add the directory to your PATH environment variable.\n\nAn installer will be provided in future updates to automate the PATH addition.\n\n## Build from Source\n\nTo build the `gdcli` tool from source, run the following command:\n\n```sh\ngo build -o bin/gdcli.exe main.go\n```\n\nThis will compile the code and generate the `gdcli.exe` executable in the `bin` directory.\n\n## How to Create a New Release\n\nTo create a new release, follow these steps:\n\n1. **Create a new version tag** in the repository:\n   ```sh\n   git tag -a vX.Y.Z -m \"Release vX.Y.Z\"\n   git push origin vX.Y.Z\n   ```\n   Replace `X.Y.Z` with the new version number.\n\n2. **Trigger a release workflow manually** *(if needed)* from GitHub Actions:\n   - Go to the [Actions tab](https://github.com/IgorBayerl/gdcli/actions).\n   - Select **Release Workflow**.\n   - Click **Run Workflow** and provide a tag version (e.g., `vX.Y.Z`).\n\n## TODO\n\n- [ ] Add build script\n- [ ] Add custom scripts similar to npm options for Node.js\n- [ ] Add support for global extensions, allowing extensions to be installed globally for use in every project\n- [ ] Support more versions and variants, hopefully dynamic versions\n  - [ ] For now, just Godot 4.3 and 4.3 Mono\n  - [x] Support for Linux\n  - [ ] In the future, the objective is to support all versions dynamically\n- [ ] Support templates for starting projects\n  - [ ] example: menu, platformer, 2d, 3d, etc.\n- [ ] Add support for custom Godot versions\n  - [ ] example: custom Godot Steam version\n\n## How to Contribute\n\nWe aim to turn `gdcli` into a useful tool for Godot developers. Contributions are welcome!\n\n1. Fork the repository.\n2. Create a new branch for your feature or bugfix.\n3. Commit your changes.\n4. Open a pull request with a detailed description of your changes.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Figorbayerl%2Fgdcli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Figorbayerl%2Fgdcli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Figorbayerl%2Fgdcli/lists"}