{"id":24793542,"url":"https://github.com/nozwock/steam-workshop-uploader","last_synced_at":"2025-07-02T13:05:28.982Z","repository":{"id":271075398,"uuid":"912261545","full_name":"nozwock/steam-workshop-uploader","owner":"nozwock","description":null,"archived":false,"fork":false,"pushed_at":"2025-01-10T19:50:47.000Z","size":107,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-29T22:03:45.212Z","etag":null,"topics":["cli","rust","steam","steam-workshop","steamworks"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nozwock.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2025-01-05T04:04:46.000Z","updated_at":"2025-01-10T19:49:45.000Z","dependencies_parsed_at":null,"dependency_job_id":"812b17d2-2ff2-4b99-b493-a645d91267a7","html_url":"https://github.com/nozwock/steam-workshop-uploader","commit_stats":null,"previous_names":["nozwock/steam-workshop-uploader"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nozwock%2Fsteam-workshop-uploader","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nozwock%2Fsteam-workshop-uploader/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nozwock%2Fsteam-workshop-uploader/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nozwock%2Fsteam-workshop-uploader/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nozwock","download_url":"https://codeload.github.com/nozwock/steam-workshop-uploader/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245315292,"owners_count":20595217,"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","rust","steam","steam-workshop","steamworks"],"created_at":"2025-01-29T21:59:45.616Z","updated_at":"2025-07-02T13:05:28.950Z","avatar_url":"https://github.com/nozwock.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Steam Workshop Uploader\n\nIt was primarily created to easily exclude files or folders from being uploaded.\n\nYou can use the `--glob` and `--ignore-file` options to specify files or folders to exclude (case-sensitive). By default, files and directories matching ignore patterns from files like `.ignore` and `.gitignore` are automatically excluded.\n\nI resisted the urge to name it 'Yet Another Workshop Uploader'...\n\n### Unimplemented\n- Setting language/locale for the items' title and description\n- Item Metadata. Not sure how to implement this since metadata is dynamic. Maybe a plugin system where you could use contained scripts to derive them with read-only access to the mod and game folder?\n- Paid items for a Curated Workshop\n\n## Creating a Workshop Item\n\nYou can create a workshop item using the following command:\n\n```shell\nworkshop create --content 'path/to/workshop/content/folder' --app-id 0 # App ID of the game\n```\n\nCurrently, all arguments for the `create` command are optional, and you will be prompted interactively for any required inputs.\n\nTo disable prompts for scripting purposes, use the `--no-prompt` flag.\n\nTo see all available options, use the `--help` flag.\n\n## Updating a Workshop Item  \n\nA file like the one below should be located in the root of the workshop item's content folder:  \n\n##### `workshop.toml`  \n```toml  \napp_id = 0          # App ID of the game  \nitem_id = 0         # Workshop item ID  \ntags = [\"mytag\"]    # Item tags  \n```  \n\nThis file is automatically generated when a workshop item is created using this tool.\n\nYou can then update the item using the following command:\n\n```shell\nworkshop update --content 'path/to/workshop/content/folder'\n```\n\nTo see all available options, use the `--help` flag.\n\n## Settings\n\nThe config file is located at `$XDG_CONFIG_HOME/io.github.nozwock.steam-workshop-uploader/config.toml`. Or, you can place `config.toml` next to the executable, which will take priority.\n\nYou can disable the automatic opening of the workshop item page after creating or updating an item in the config file.\n\nSupport for predefined tags is available for workshop items based on the App ID, defined in the config file:\n```toml\n[valid_tags]\n# App ID = List of Tags\n0000 = [\"overhaul\", \"skins\", \"map\", \"etc\"]\n0001 = [\"mod\"]\n```\n\n### Related Projects\n\n- [SteamWorkshopUploader](https://github.com/nihilocrat/SteamWorkshopUploader)\n- [steamws](https://github.com/wyozi/steamws)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnozwock%2Fsteam-workshop-uploader","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnozwock%2Fsteam-workshop-uploader","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnozwock%2Fsteam-workshop-uploader/lists"}