QuickFire
Turn a touchscreen (such as a 12.3" bar display under your main monitor) into a Stream Deck-style control surface for Foundry VTT v12+ (verified up to v14). Pages of buttons and toggles run macros, core Foundry actions and other modules' APIs.
Using it
Two buttons appear in the token controls:
- Open QuickFire deck opens the deck in a popout window. Drag it onto the touchscreen and tap the fullscreen button.
- Edit QuickFire decks opens the editor on the main monitor. Build decks of pages; each page has its own grid. Click an empty cell to add a control, drag to move, drag the corner to span. Changes save as you go and appear on the deck straight away.
With no decks of your own, the deck shows a read-only Starter deck built live from the world. Duplicate it in the editor to make it yours. Decks can be exported and imported as JSON. The first deck will attempt to put a lot of your macros together, so if you have a lot, it may look a bit busy. For some light entertainment I've added somr 707 drum samples.
Control types. A button runs an action, a toggle also shows its on/off state, and a stat tile shows a live value (for example D&D 5e HP, with a fill bar, or AC and spell slots) that follows the selected token. A choice button looks like a button, but a tap opens a row of options (the selected character's spells, a skill, a save) and the pick runs the action. Choose which param is offered in the editor; the options are built at tap time, so they follow the selected token.
A slider is dragged along the tile (up the tile if it is taller than wide) to set a value: scene darkness, a playing sound's volume, or the master volume.
Shared decks. A GM can set a deck's "Shared with" to all players or chosen players. Players see it under "Shared decks", read-only, and can duplicate it to change their own copy.
Permissions. Every action runs as the user who taps it, so Foundry's own permissions decide what works. QuickFire only hides things: GM-only actions from players, and (unless the GM allows it in settings) advanced actions such as inline scripts and module function calls.
System support. Built-in actions (rolls, item or spell use, conditions, stat tiles) that target your selected tokens, or your character if none is selected:
| System | Status |
|---|---|
| D&D 5e | Tested in V12/13/14 |
| Cyberpunk RED | Tested in V12/13 |
| Call of Cthulhu 7e | Tested in V12/13 |
| Pathfinder 2e, Starfinder 2e | In progress |
| World of Darkness 5e | In progress |
Other systems get the core actions plus module function calls.
If you have a particular system you'd like involved in this, or your a mod author that wants to either support or would like more integrated support, drop a ticket on the glab repo or come find me on Discord.
AI Disclaimer
I used this project as a way of tagging on some more learning to the Typescript course I'm doing. Whilst not alien to me, this project goes a bit past the scope of what I'm learning. The initial development progress, ideas, structure, theories and API communication is my own, Claude helped out with the Discovery mode, the translation layers (getting game systems in there based off their source code) and a whole bunch of testing.