{"id":24258206,"url":"https://github.com/teamstep/glitch-deploy-tool","last_synced_at":"2025-07-30T10:34:43.879Z","repository":{"id":40705576,"uuid":"308308522","full_name":"TeamSTEP/glitch-deploy-tool","owner":"TeamSTEP","description":"CLI tool for deploying files to Glitch.com","archived":false,"fork":false,"pushed_at":"2023-12-25T21:03:27.000Z","size":1431,"stargazers_count":2,"open_issues_count":8,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-17T12:30:00.200Z","etag":null,"topics":["ci","deployment","glitch"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","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/TeamSTEP.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"github":null,"patreon":"teamstep","open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":"teamstep","issuehunt":null,"otechie":null,"custom":null}},"created_at":"2020-10-29T11:36:25.000Z","updated_at":"2022-11-18T07:26:18.000Z","dependencies_parsed_at":"2025-07-30T10:34:42.414Z","dependency_job_id":null,"html_url":"https://github.com/TeamSTEP/glitch-deploy-tool","commit_stats":null,"previous_names":[],"tags_count":12,"template":false,"template_full_name":null,"purl":"pkg:github/TeamSTEP/glitch-deploy-tool","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TeamSTEP%2Fglitch-deploy-tool","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TeamSTEP%2Fglitch-deploy-tool/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TeamSTEP%2Fglitch-deploy-tool/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TeamSTEP%2Fglitch-deploy-tool/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/TeamSTEP","download_url":"https://codeload.github.com/TeamSTEP/glitch-deploy-tool/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/TeamSTEP%2Fglitch-deploy-tool/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267851224,"owners_count":24154573,"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","status":"online","status_checked_at":"2025-07-30T02:00:09.044Z","response_time":70,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ci","deployment","glitch"],"created_at":"2025-01-15T05:31:54.661Z","updated_at":"2025-07-30T10:34:43.848Z","avatar_url":"https://github.com/TeamSTEP.png","language":"TypeScript","readme":"# Glitch Deploy Tool\n\n![cover](img/banner.jpg)\n\n[![NPM](https://nodei.co/npm/glitch-deploy-tool.png?downloads=true)](https://www.npmjs.com/package/glitch-deploy-tool)\n\n[![Support me on Patreon](https://img.shields.io/endpoint.svg?url=https%3A%2F%2Fshieldsio-patreon.vercel.app%2Fapi%3Fusername%3Dteamstep%26type%3Dpatrons\u0026style=for-the-badge)](https://patreon.com/teamstep)\n\n[![GitHub license](https://img.shields.io/github/license/TeamSTEP/glitch-deploy-tool.svg)](https://github.com/TeamSTEP/glitch-deploy-tool/blob/main/LICENSE)\n\n\u003e A tool that makes Glitch a bit more convenient\n\n## Introduction\n\n[Glitch](https://glitch.com/) is great.\nBut for people who use Glitch to deploy their applications, it could be better.\n\nGlitch supports importing projects from Github, but this only allows you to import from the default branch.\nThere are tools like [Sync Glitch CLI](https://github.com/glitch-tools/sync-glitch-cli) which allows you to import your Github repo to Glitch via a API call.\n\nBut what if you want to import your *local files* in a specific folder?\nWhat if you can build on the fly and use Glitch as a production server for your bots?\n\nThis is the tool for you.\n\nPlease note that this tool is still under heavy development.\nYou can expect things to not work as the should.\n\n## Features\n\nAt the moment, there are two ways to upload your work to Glitch with this tool:\n\n1. Import from Github\n2. Upload local files\n\n### Import from Github\n\nYou can automatically import your Github repository to your Glitch project.\nThis is done by passing the project id, Glitch user token, and the Github repository name as a query to the `/project/githubImport` endpoint.\n\n**Pros:**\n\n- You can start a project without cloning anything on your local machine\n- You can specify a subdirectory within your repo\n- Works out of the box without any configuration to your project\n- Bidirectional integration if you integrate it with Github\n\n**Cons:**\n\n- You can't publish local builds\n- You have to build everything from Glitch\n- Too much bloat and CPU overhead\n- You need both the project ID and the user token\n\n### Upload local content\n\nAll Glitch projects are encapsulated in their own git repository.\nWith a bit of configuration, you can use your Glitch project as a remote upstream for your project.\nThis tool allows you to clone the project, remove everything inside, replace it with your own files and push it to origin.\n\n**Pros:**\n\n- Only upload the distribution build for maximum efficiency\n- Works well as part of your CI workflow\n- You only need your Glitch project repo URL. No tokens required\n- Use your custom build script for distributing it to different servers\n\n**Cons:**\n\n- You need to configure your Glitch project's git settings\n- It may not work well when you're interacting with the project from the browser before the local changes are pushed\n- Potentially tamper your `.env` if your local changes does not include a `.ignore` file with `.env`\n- You may need to create your own build script\n\n## Installation\n\nThis is a CLI tool, so you can install it globally to use it with:\n\n```sh\n# install globally\nnpm install -g glitch-deploy-tool\n\n# install locally\nnpm install --save glitch-deploy-tool\nyarn add glitch-deploy-tool\n```\n\nInstalling this as part of your project's dependency will allow you to directly interact with the `GlitchGit` and `GlitchProject` class.\n\n### Usage\n\nThe base command for the CLI is `glitch-deploy-tool` with two sub-commands: `from-local` and `github`.\n\nThis tool can read parameters as an environmental variable.\n\n```\nusage: glitch-deploy-tool from-local [OPTIONS]\noptions:\n  Upload Local Folder Options:\n    -r \u003cglitch git url\u003e, --remote=\u003cglitch git url\u003e\n                                        Glitch project repository's remote URL.\n                                        Environment: REPO_SOURCE=\u003cglitch git\n                                        url\u003e\n    -v, --verbose                       Verbose output. This will log all debug\n                                        messages.\n    -p PATH, --path=PATH                Folder to upload to Glitch.\n\n  Tool Information:\n    --version                           Print tool version and exit.\n    -h, --help                          Print this help and exit.\n\n```\n\n```\nusage: glitch-deploy-tool github [OPTIONS]\noptions:\n  Import from Github Options:\n    -t \u003cglitch user token\u003e, --token=\u003cglitch user token\u003e\n                                        Glitch user API token used to access the\n                                        account. Environment:\n                                        GLITCH_USER_TOKEN=\u003cglitch user token\u003e\n    -i \u003cglitch user token\u003e, --glitch-id=\u003cglitch user token\u003e\n                                        Glitch project ID that will.\n                                        Environment: GLITCH_PROJ_ID=\u003cglitch user\n                                        token\u003e\n    -r \u003cuser name/project name\u003e, --repo=\u003cuser name/project name\u003e\n                                        Github repository name that will be\n                                        imported to Glitch. Environment:\n                                        REPO_SOURCE=\u003cuser name/project name\u003e\n    -p PATH, --path=PATH                Folder to upload to Glitch.\n\n  Tool Information:\n    --version                           Print tool version and exit.\n    -h, --help                          Print this help and exit.\n\n```\n\n## Prerequisite\n\n### Obtaining Glitch User Token\n\nGlitch user tokens are essentially API tokens for making requests to Glitch.\nWhen you log in and edit a project, your token string will be saved in your browser local storage.\nSo obtaining them is quite easy.\n\nFirst, go to your Glitch project editor.\n\nSecond, open the developer console on your browser (either press `f12` or navigate through the settings).\n\nThird, paste the following line of code to the console.\n\n```js\n(JSON.parse(localStorage.getItem('cachedUser'))).persistentToken\n```\n\nYou should see your token being printed.\n\n### Enable pushing to your project\n\nBefore you start using this tool, first, you need to allow pushes to your Glitch repository.\nDetails about this process can be found from [here](https://glitch.happyfox.com/kb/article/85-how-do-i-push-code-that-i-created-locally-to-my-project-on-glitch/).\n\nBut in short, you just have to type `git config receive.denyCurrentBranch updateInstead` on your Glitch project terminal and copy the repository link.\n\n## Contributing\n\nIf you have suggestions for how Unity Push Checker could be improved, or want to report a bug, open an issue! We'd love all and any contributions.\n\nFor more, check out the [Contributing Guide](CONTRIBUTING.md).\n\n## License\n\n[MIT](LICENSE) © 2020 Hoon Kim \u003choonkim@teamstep.io\u003e","funding_links":["https://patreon.com/teamstep","https://liberapay.com/teamstep"],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fteamstep%2Fglitch-deploy-tool","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fteamstep%2Fglitch-deploy-tool","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fteamstep%2Fglitch-deploy-tool/lists"}