Open-source virtual tabletop · 0.1.1

Gravewright

Your worlds deserve more than a grid and a character sheet.

Set the scene, bring your characters to life and keep the story moving. A tabletop in your browser. A world under your control.

Complete source ZIP with the Windows Runner · Windows x64

Gravewright tabletop showing a lava-filled dungeon, a large dragon token, character tokens, lighting and the tabletop toolbars.
Gravewright at the table

More atmosphere. More room for your story.

From the first room to the last roll of the night, keep the places, characters and discoveries of your campaign together.

Maps that tell a story

Build scenes with walls, lighting and fog. Choose what the players can see and when to reveal it.

Characters at the center

Connect actors and tokens with the PDF sheets your table already knows.

A place for every discovery

Keep journals, quests, handouts and compendiums close to the action.

Tools for game night

Roll dice, share audio, draw cards and track combat without leaving the table.

Enter the dragon’s lair.

Watch The Dragon’s Legacy: a lava-filled battlefield, lighting and fog controls, and characters moving through the scene. A real capture of Gravewright, set to an orchestral battle soundtrack.

The Dragon’s Legacy · Battle showcase Read the transcriptMusic: Volatile Reaction — Kevin MacLeod · CC BY 4.0
For the GM

Prepare your next reveal

Organize the campaign, set permissions and broadcast the scene when the party is ready.

For the players

Meet in the browser

Join a network-hosted campaign, open your character and take your place at the table.

For the campaign

Carry the story forward

Keep characters, journals and shared discoveries together from one session to the next.

A familiar sheet. A place in the world.

The native Gravewright PDF System connects character actors, PDF sheets and field mapping with tokens on the map. Keep your character close to the story.

The original Seren Ashford PDF character sheet open in Gravewright, with editable health, energy, defense and attribute fields, abilities, equipment and notes.
Your character, close to the story

Meet 0.1.1.

The first release of the Django implementation brings the tabletop, campaign tools, extension interfaces and a native Windows Runner together.

Release notes ↗
Gravewright campaign dashboard with The Verdant Vigil, The Drowned Crown and Ashfall Citadel, illustrated covers, participant icons and a control to create a campaign.
A home for your campaigns

A native Windows Runner

Checks uv, Python and Node.js/npm, prepares dependencies and builds the frontend before opening your browser.

Your campaigns, kept separately

The Runner stores personal data outside the source folder and reuses unchanged tools and frontend builds.

An open foundation

Documented Python, HTTP, WebSocket and browser interfaces help developers understand and extend the project.

Documentation in two languages

Getting started, architecture, APIs, modules and deployment guides in English and Brazilian Portuguese.

From download to your first table.

On Windows, start with the complete project ZIP. The Runner takes care of the tools and dependencies it needs.

Windows 10 (1803+) or Windows 11 · x64 · Browser with WebGL

  1. 01

    Download & extract

    Extract the entire ZIP to a folder you can write to. Keep the project files together.

  2. 02

    Run Gravewright

    Double-click Gravewright Runner.bat. Missing tools and packages need an internet connection.

  3. 03

    Make it yours

    Wait for the browser to open, then create your first owner account. Keep the console open while playing.

Prefer to run from source?

Use Python 3.14 or newer and uv. These commands use a POSIX shell and preserve an existing .env file.

Terminal · source setup
git clone https://github.com/Gravewright/gravewright.git
cd gravewright
uv sync --locked
cp -n .env.example .env
uv run --locked python manage.py migrate
uv run --locked python main.py

An open core. Room for your ideas.

Build integrations, explore browser modules or contribute to the tabletop itself. Follow the documented interfaces, contracts and module lifecycle.

GPL-3.0-only core. Independent modules, any license.

The section 7 Independent Module Permission allows independently written modules to use any license, including proprietary licenses, whether or not they use the provided APIs. Copies and modifications of core implementation code remain subject to its license.

Read the licensing policy ↗

Before your first session.

Where does the Runner keep my campaigns?

Under %LOCALAPPDATA%\Gravewright\data, including settings, database, media and logs. Stop the server and back up the whole data folder before replacing source files or applying updates.

Is the application available in Portuguese?

The application UI currently supports English. The website and project documentation are available in English and Brazilian Portuguese.

Can I install an update automatically?

Updates are manual. Download the new source after backing up your data. Release discovery does not install an update automatically.

What should I know about 0.1.1?

Keep backups of important campaigns and check the user guide for current limits. The native PDF ruleset does not include a complete item editor or catalog.

Are browser modules isolated?

Browser modules run in the main page. Install code you trust; package signatures do not provide a sandbox.

Bring your experience to the table.

Report a reproducible bug, share feedback from a session, improve accessibility or help with code and documentation. Small, thoughtful contributions make a difference.

Set the scene. Gather the party.

Download for Windows