Releases: Adam-Analytics/tablesync-releases
Release list
TableSync 2026.09.11
TableSync for Windows — the DM's table, projected.
Extract anywhere and run TableSync.bat. No install, no Python needed, no admin
rights. The bundle carries its own Python runtime and cloudflared.
| Size | 33.8 MB (1,497 files) |
| Rules content | 2,711 records, SRD only, CC BY 4.0 — no campaign content |
| Runtime | CPython 3.11.9, signed by the Python Software Foundation |
| Tunnel | cloudflared 2026.8.3, signed by Cloudflare |
What is new since 2026.09.10
- The DM cockpit shows a player link. A "Player link" panel builds the URL
for whatever address you are reachable on — a tunnel, a Tailscale funnel, or
your own network — with a copy button and a QR code. It says plainly what each
address actually reaches, so a127.0.0.1link never gets sent to a phone. - Joining takes one tap. Following a DM's link used to land a player on a
sheet that still offered to "Join a table" — asking twice for something they
had already done. The app now recognises a keyed arrival. - The Abilities and Spells tabs read as one list. Every record's source line
sits under its name instead of wherever the name left room. - Edge-to-edge fixes and a build identity in About, on the phone app.
Verify the download
Get-FileHash "TableSync-2026.09.11.zip" -Algorithm SHA256It should match SHA256SUMS.txt, attached.
Not code-signed
A zip carries no Authenticode signature and neither does a batch file. The
programs that actually execute inside it are signed by their own publishers, so
Windows has nothing of ours to object to. Verify with the hash above.
TableSync 2026.09.10
The projector-table cockpit, as a folder you can move or delete.
TableSync-2026.09.10.zip — 33.8 MB
SHA-256 C226B67772A15797D5E766C010AF44AC4BD43AB8AB3194301AD6797F5BC01B98
Extract it, double-click TableSync.bat, click Start (this computer only).
Drag the Table window onto the projector and press F. On first start it mints
its own access keys into a config.json beside the app; nothing is written
anywhere else, and deleting the folder uninstalls it.
In this build
- Runs the server on
127.0.0.1by default, or on the LAN with a join URL you
read out. Start (Internet) raises a Cloudflare tunnel so players can join
from anywhere with nothing installed and no router touched — the server stays
bound to loopback and the DM seat is refused to anyone coming through it. - Ships CPython 3.11.9 and
cloudflared2026.8.3, both signed by their own
publishers, so the bundle needs no Python installed and no admin rights. - The openly licensed SRD — 2,711 records. No campaign content.
Not signed
This zip carries no Authenticode signature and cannot: a zip has no format for
one, and neither does a batch file. The programs inside are signed by Python
Software Foundation and Cloudflare. Verify the download with the SHA-256 above
rather than trusting the absence of a warning:
Get-FileHash "TableSync-2026.09.10.zip" -Algorithm SHA256There is no signed installer, and none is planned. Code signing would buy the
absence of a warning this download does not trigger: what we wrote is a batch
file and Python source, and the programs that actually execute are already
signed by their own publishers. The hash above is the check that means
something here.
TableSync for Android 1.3.1
The TableSync player app for Android — sideload build.
This is not the Play Store build. It is the same app, signed with the
TableSync sideload key, for installing directly from this page.
| Version | 1.3.1 (versionCode 8) |
| Package | style.tablesync.player |
| Targets | Android 16 (API 36) |
| Rules content | 370 monsters, 658 spells, 1298 items — SRD only, CC BY 4.0 |
| Permissions | INTERNET, and Capacitor's own receiver permission. Nothing else. |
Installing it
- Download the
.apkon the phone. - Android asks whether to allow installs from whatever app you downloaded it
with. That permission is per-app and you can turn it back off afterwards. - Play Protect will say the app was not recognised. Tap More details →
Install anyway. It says that about every app Google has not seen before.
Verify the download
Get-FileHash "TableSync-Player-1.3.1.apk" -Algorithm SHA256Compare with SHA256SUMS.txt attached to this release.
What it carries, and what it does not
The SRD rules only, under CC BY 4.0. Your own library, if you have one, reaches
the app from your table when you join it — it is not inside this file.
The app is signed with the TableSync sideload key. A later sideload installs over
this one and keeps your characters. A build installed from Google Play is signed
by a different key and cannot update this one; export your characters first if
you ever switch.
New in 1.3.1
- Joining now takes one tap. Following a DM's link, or joining from the app,
used to land you on a sheet that still offered to "Join a table" — you had to
ask twice for something you had already done. The app now recognises that you
arrived with a key. - WebView debugging is set explicitly off for this build rather than left to a
library default.
TableSync for Android 1.3.0
The TableSync player app for Android — sideload build.
This is not the Play Store build. It is the same app, signed with the
TableSync sideload key, for installing directly from this page.
| Version | 1.3.0 (versionCode 7) |
| Package | style.tablesync.player |
| Targets | Android 16 (API 36) |
| Rules content | 370 monsters, 658 spells, 1298 items — SRD only, CC BY 4.0 |
| Permissions | INTERNET, and Capacitor's own receiver permission. Nothing else. |
Installing it
- Download the
.apkon the phone. - Android asks whether to allow installs from whatever app you downloaded it
with. That permission is per-app and you can turn it back off afterwards. - Play Protect will say the app was not recognised. Tap More details →
Install anyway. It says that about every app Google has not seen before.
Verify the download
Get-FileHash "TableSync-Player-1.3.0.apk" -Algorithm SHA256Compare with SHA256SUMS.txt attached to this release.
What it carries, and what it does not
The SRD rules only, under CC BY 4.0. Your own library, if you have one, reaches
the app from your table when you join it — it is not inside this file.
The app is signed with the TableSync sideload key. A later sideload installs over
this one and keeps your characters. A build installed from Google Play is signed
by a different key and cannot update this one; export your characters first if
you ever switch.