ControllerKeys vs GameFlow
ControllerKeys
kevintang.xyzGameFlow
github.comSide by side
| Figure | ControllerKeys | GameFlow |
|---|---|---|
| Price from | — | Free |
| Free plan | — | Yes |
| Free trial | Yes | — |
| Open source | — | Yes |
| Web | — | Yes |
| Windows | — | Yes |
| macOS | Yes | Yes |
| Linux | — | Yes |
| Self-hosted | — | Yes |
| Plans published | 1 | 1 |
| Spec score · Game Controller Mapper Software | 7.9 (#11) | 8.9 (#1) |
| Audience | The maker describes the app as designed for productivity, coding, browsing, accessibility, presentations, and general Mac use. | The project describes itself as cross-platform gamepad tooling for anyone. |
| Profiles | Profiles can switch automatically based on the active app, be imported from GitHub or Stream Deck V2, and be exported and shared. | Profiles are human-editable JSON documents that can be created, duplicated, renamed, imported and exported. |
| Purpose | ControllerKeys turns game controllers or an Apple TV Siri Remote into keyboard and mouse input for a Mac. | GameFlow is cross-platform gamepad tooling that transforms gamepad, keyboard, mouse or phone input through saved profiles into virtual-controller output. |
Plans
In their own words
ControllerKeys
ControllerKeys has no write-up on Specifiction yet; its figures are above.
GameFlow
GameFlow is free, cross-platform gamepad tooling that routes gamepad, keyboard, mouse, or phone input through saved profiles to virtual-controller output. Mapping options include autofire, remapping, shift layers, SOCD cleaning, stick trim, gyro aiming, touchpad mapping, button combos, and freeze macros. Custom control logic can be written in sandboxed Lua through MoonSharp. Profiles are editable JSON documents that users can create, duplicate, rename, import, and export. A phone browser on the same local network can act as a controller without an installed app, with support for up to 16 phones. GameFlow can generate a transparent controller-overlay URL for an OBS Browser source, and its motion server exposes DSU/Cemuhook over UDP for Cemu, Dolphin, Yuzu, and Ryujinx. The application requires .NET SDK 10.0 or later and uses SDL3 for gamepad and joystick input on Windows, Linux, and macOS. Windows virtual output uses HIDMaestro in user mode; Linux and macOS virtual gamepad output are not built yet.