https://github.com/nozwock/steam-workshop-uploader
https://github.com/nozwock/steam-workshop-uploader
cli rust steam steam-workshop steamworks
Last synced: 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/nozwock/steam-workshop-uploader
- Owner: nozwock
- Created: 2025-01-05T04:04:46.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2025-01-10T19:50:47.000Z (4 months ago)
- Last Synced: 2025-01-29T22:03:45.212Z (4 months ago)
- Topics: cli, rust, steam, steam-workshop, steamworks
- Language: Rust
- Homepage:
- Size: 104 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Steam Workshop Uploader
It was primarily created to easily exclude files or folders from being uploaded.
You 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.
I resisted the urge to name it 'Yet Another Workshop Uploader'...
~~And, I'm not planning to have a GUI for now.~~ I lied.
Btw, don't tell me someone's already made one with the feature to exclude stuff? I couldn't find any when I needed it.
### Unimplemented
- Setting language/locale for the items' title and description
- 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?
- Paid items for a Curated Workshop## Creating a Workshop Item
You can create a workshop item using the following command:
```shell
workshop create --content 'path/to/workshop/content/folder' --app-id 0 # App ID of the game
```Currently, all arguments for the `create` command are optional, and you will be prompted interactively for any required inputs.
To disable prompts for scripting purposes, use the `--no-prompt` flag.
To see all available options, use the `--help` flag.
## Updating a Workshop Item
A file like the one below should be located in the root of the workshop item's content folder:
##### `workshop.toml`
```toml
app_id = 0 # App ID of the game
item_id = 0 # Workshop item ID
tags = ["mytag"] # Item tags
```This file is automatically generated when a workshop item is created using this tool.
You can then update the item using the following command:
```shell
workshop update --content 'path/to/workshop/content/folder'
```To see all available options, use the `--help` flag.
## Settings
The 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.
You can disable the automatic opening of the workshop item page after creating or updating an item in the config file.
Support for predefined tags is available for workshop items based on the App ID, defined in the config file:
```toml
[valid_tags]
# App ID = List of Tags
0000 = ["overhaul", "skins", "map", "etc"]
0001 = ["mod"]
```### Related Projects
- [SteamWorkshopUploader](https://github.com/nihilocrat/SteamWorkshopUploader)
- [steamws](https://github.com/wyozi/steamws)