Undeployed Adam

Project

TableSync

A Dungeon Master's screen for a table with a projector in it. Runs from a folder on your own machine; your players join from theirs.

Release 2026.09.11 Windows 36.3 MB Licence Code MIT · rules content CC BY 4.0 Content 2,711 records, SRD only

Download for Windows · 36.3 MB Join a session

The download is for the person running the game. If a DM sent you a code or a link, you want Join a session instead — there is nothing to install.

What it is

A projector points down at your table. TableSync puts the map under your miniatures, keeps the grid square to real inches, and gives you a DM screen on your laptop to drive it from. Your players open their own character sheets on their phones.

It is one folder. No installer, no account, no cloud: the app is a small server that runs on your machine and stops when you close it. Nothing about your campaign leaves the folder unless you choose to let players in.

The three screens

The TableSync home screen, showing
              server status, a progress bar, and three options for who can reach
              the table.
You open this first. Pick who can reach the table, and it tells you what it is doing while it gets there.
The DM screen: a battle map with
              a grid and labelled tokens, an order-of-battle list, and controls for
              lights and effects.
The DM screen. A live mirror of what the projector shows, initiative down the side, and the library, shops, loot and improv tools a tab away.
The projector view: a dark battle
              map with a calibrated grid and labelled tokens.
What the projector paints on the table. Calibrate the grid once and ten squares measure ten real inches.
The player app on a phone: a
              character's defence, hit points and roll button.
What a player sees. Tap a stat to roll it; the result shows up on your screen.

What it does

Maps under the minis

Still images or looping video, with an adjustable grid you calibrate to your own table once. No fog of war and no token layer — your miniatures are the tokens.

A DM screen worth looking at

Order of battle, conditions, lights and zone effects, a roll log, and the whole rules library: monsters, spells, items, shops and loot.

Character sheets that do the arithmetic

Guided character building, levelling, spell preparation and inventory. Tap any ability or skill to roll it, and hold for advantage.

Rolls that reach the table

A player's roll appears on your screen and on the projector, so the table sees it without anyone reading numbers aloud.

Your own content

Import your homebrew as content packs, or serve your own library to everyone at the table for as long as they are joined.

Nothing to sign up for

No account, no subscription, no telemetry. Delete the folder and it is gone.

Starting a session

  1. Extract the zip anywhere — your Desktop is fine.
  2. Double-click TableSync Desktop.bat. The home screen opens.
  3. Choose who can reach the table (below). The bar tells you when it is ready.
  4. Press Open the DM screen, and Open the table window.
  5. Drag the table window onto the projector and press F for fullscreen.
  6. Calibrate the grid once, from the DM screen, until ten squares measure ten inches on the actual table.
  7. Send your players the join link or the code from the home screen.

On first run it creates its own config.json with fresh access keys and a session/ folder, both inside the folder you extracted. Deleting that folder uninstalls it.

Who can reach your table

Three choices, on the home screen, switchable mid-session:

Just this computer Nothing leaves the machine. For prep, or when everyone is round one screen.
My network Players on the same Wi-Fi open a link you read out. Nothing is published.
Over the internet Players anywhere. Opens a Cloudflare tunnel and registers a short join code. Takes about a minute to become reachable, and the tunnel operator can see traffic in transit, as any relay can.

Joining as a player

Players install nothing. You need one of two things from your DM:

  • A link — open it. That is the whole process.
  • A join code, four to twelve characters — enter it at Join a session, and it sends you to whatever address that DM is currently hosting on.

Either way your sheet lives on your DM's machine, so the same character opens on any device you join from. A code keeps working when your DM's address changes; they re-point it and you do nothing.

Join a session

Verifying the download

The file is TableSync-2026.09.11.zip, 36.3 MB, built 2026-09-11.

Get-FileHash "TableSync-2026.09.11.zip" -Algorithm SHA256

It should print, exactly:

CA73F26455EEFCBC2AE909151F9014F993A68E8CC227965AC09E147DBB49AB13

This download is not code-signed. Verify it instead — the hash above is the check that means something. The programs that actually execute inside it are signed by their own publishers; what this project adds is Python source and a batch file, neither of which can carry a signature.

Licence & release

Release 2026.09.11 Built 2026-09-11 Code MIT Rules content CC BY 4.0

The rules content shipped in the download is the System Reference Document, 2,711 records, used under CC BY 4.0. No sourcebook content is distributed. The application code is MIT.

All releases and changelogs · Privacy policy