Skip to content

Automatically sets up Butler 🎩 and provides a simple GitHub Action to publish releases to Itch.io οΈπŸ•ΉοΈ

License

Notifications You must be signed in to change notification settings

Oval-Tutu/publish-to-itch-with-butler

Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

2 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Publish to Itch.io οΈπŸ•ΉοΈ with Butler 🎩

Itch.ioGitHub Actions

The simplest way to publish your games to Itch.io directly from GitHub!

This GitHub Action automates the entire process of deploying your game to Itch.io by setting up Butler (the official Itch.io command-line tool) and handling the upload process - all with minimal configuration.

✨ Features

  • πŸ€– Automatic Butler Setup - No need to install or configure anything manually
  • ️πŸ–₯️ Cross-Platform Support - Works on Windows, macOS, and Linux runners
  • ️🏷️ Version Tagging - Optionally tag your releases with version numbers
  • πŸ”’ Secure - Uses GitHub Secrets for API key protection

πŸ”§ Usage

Add this to your workflow file:

- uses: Oval-Tutu/publish-to-itch-with-butler@v1
  with:
    api-key: ${{ secrets.BUTLER_API_KEY }}
    itch_user: your-itch-username
    itch_game: your-game-name
    channel: windows
    package: ./build/windows/
    version: 1.0.0

πŸ“‹ Parameters

Parameter Description Required Default
api-key Butler API key from Itch.io βœ… -
channel Channel name (e.g., android, html, linux, osx, windows) βœ… -
itch_user Your Itch.io username βœ… -
itch_game Your game's name on Itch.io βœ… -
package Directory or file to upload βœ… -
version Game version (will be shown on Itch.io) ❌ ""

πŸ” Getting Your Butler API Key

  1. Log in to itch.io
  2. Navigate to your API keys
  3. Generate a new API key
  4. Add it to your repository secrets as BUTLER_API_KEY

πŸ“š Example Workflow

name: Deploy Game

on:
  release:
    types: [published]

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4

      # Build your game...

      - uses: Oval-Tutu/publish-to-itch-with-butler@v1
        with:
          api-key: ${{ secrets.BUTLER_API_KEY }}
          itch_user: awesome-dev
          itch_game: awesome-game
          channel: windows
          package: ./build/
          version: ${{ github.event.release.tag_name }}

🌟 Supported Platforms

Only the x64 64-bit architecture is supported for Windows and Linux because Butler does provide builds for other architectures.

  • 🐧 Linux
  • 🍏 macOS
  • πŸͺŸ Windows

Get your games to your players faster than ever with automated Itch.io publishing!

About

Automatically sets up Butler 🎩 and provides a simple GitHub Action to publish releases to Itch.io οΈπŸ•ΉοΈ

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Sponsor this project