Phaser games

Ship your Phaser game on Steam

Phaser builds for the browser. Deskifier turns that build into a desktop game for Windows, macOS and Linux, with Steamworks available from your scene code and every store one button away.

Phaser has no desktop export

Phaser is a web framework, so there is no “Export to Steam” button. The usual route is to assemble one yourself:

  • Wrap the build in Electron, NW.js or Tauri, and keep that wrapper current alongside Phaser.
  • Add a Steamworks binding such as steamworks.js, which is a native module: rebuilt per platform and per wrapper version.
  • Build, sign and upload for each OS, with steamcmd scripts for Steam and Apple notarisation for the Mac.

Plenty of successful Phaser games shipped this way. Deskifier gives you the same result without owning the wrapper, the binding or the pipeline.

What your Phaser game gets

Steam from your scenes
Unlock an achievement where the player earns it: deskifier.steam.activateAchievement({ name: 'ACH_FIRST_WIN' }). No plugin, no native module.
Cloud saves and stats
Write your save state to Steam Cloud and track stats with promise calls, or let Auto-Cloud sync the GameSaves folder.
Discord Rich Presence
Put the current level or mode on the player’s Discord profile with one setActivity call, in front of all their friends.
Your dist folder, offline
Upload the output of your Phaser build and it ships inside the game, loading assets from disk instead of the network.
Settings and saves handled
The in-game settings menu and save backup come built in, so you don’t write a window-mode screen or worry about localStorage.
Every store
Steam, Epic, itch.io, the Mac App Store, the Microsoft Store and signed direct downloads, all from the same Phaser build.

Phaser to Steam in three steps

  1. 1
    Build your game as usual
    Run your normal production build and upload the output folder (often dist), or point Deskifier at where it is hosted.
  2. 2
    Call Steam where it matters
    Add window.deskifier.steam calls for achievements, stats and saves. Off Steam they resolve with success: false, so the browser version keeps working.
  3. 3
    Build & push
    Test with a free dev build and App ID 480, then push depots to Steam and your other stores from the Builds page.

Frequently asked questions

Any. Deskifier wraps the built output of your game rather than hooking into Phaser itself, so it works the same for Phaser 3, Phaser 4 and games built on older versions.

No. The Steam, Discord and game APIs are on window.deskifier in the desktop build. Call them from any scene; there is nothing to register with Phaser.

Yes, if you guard the calls: window.deskifier only exists in the desktop build, so check for it (or use optional chaining) before calling. Inside the desktop build, features that aren’t available resolve with success: false instead of throwing.

Yes. Vite, webpack, Parcel or none at all: what Deskifier needs is the finished build, with an index.html and its assets.

Much the same, since the desktop build runs your game in a Chromium-based runtime with WebGL. Bundled builds usually start faster because assets load from disk.

From Phaser to their Steam library.

Build and test for free, no card required. Pay only for the places you ship.