Skip to content

Packaging and publishing

You author a bundle as a folder and publish it to the Steam Workshop from inside the app. The app packages and uploads the folder for you, and other users install it by subscribing. There is no file to copy or send by hand.

Before you publish

Get the bundle right in preview first:

  • The manifest validates and the overlay loads. See Manifest reference.
  • Every capability you use is in permissions, and the reasons are honest. See Permissions.
  • Remote URLs are covered by network.* permissions. See Assets and networking.
  • A thumbnail is set, since it represents the bundle in the library and the Workshop.
  • version reflects this release.

Keep development files out

A development folder often holds files that should not ship: source folders before a build, node_modules, build output, source maps. Use the ignore field in the manifest to leave them out of the published bundle.

jsonc
"ignore": ["node_modules", "src/**", "*.map", "*.ts"]
  • * matches within a path segment, ** across segments, ? a single character.
  • A pattern with no slash matches at any depth, like a .gitignore rule.
  • desktop-overlays.config.json is always kept.

Anything that the running overlay needs at runtime must not be ignored. Ignore sources and tooling, not the assets your index.html actually loads.

Publish

Publish to the Steam Workshop from inside the app. The app packages your folder, applying ignore, and uploads it as a Workshop item with your name, description, and thumbnail.

Update

To release a new version, bump version in the manifest and publish again from the same folder. The existing Workshop item is updated in place rather than creating a new one. Subscribers receive the update.

If an update changes permissions to request new capabilities, each user is shown the consent screen again before the update applies, so a new capability is never granted silently. See Permissions.

How users install your bundle

From a user's side:

  1. They browse the Workshop inside the app and subscribe to your bundle.
  2. Steam downloads it.
  3. The app shows the consent screen with your requested permissions and reasons.
  4. If they approve, the bundle is installed and appears in their overlay list. If they decline, nothing is installed and the subscription is undone.

On later launches, the app keeps installed bundles in sync with the user's Workshop subscriptions.