Atlas VTT

by Fabian Urbanek
5
4
3
2
1
Score: 39/100

Description

Open Source virtual tabletop for Obsidian: battle maps, tokens, fog of war, dice, initiative and a separate player view.

Reviews

No reviews yet.

Stats

596
stars
14,599
downloads
78
forks
25
days
0
days
2
days
232
total PRs
38
open PRs
31
closed PRs
163
merged PRs
226
total issues
155
open issues
71
closed issues
142
commits

Latest Version

2 days ago

Changelog

Atlas VTT 0.8.0 — Online play and native statblocks

2026-10-14

What's New

New Feature: Online Play

  • Online play (closed beta): host a table that your players join in their web browser. It is off until you turn it on under Experimental features in the command palette.
  • Campaigns on the dashboard: create and search campaigns, and play one to track its scenes and player characters.
  • Right-click a token to make it a player character. Player characters have their own Players tab in the asset manager.
  • A campaign keeps one set of values for each player character. Hit points changed on one scene show on every scene and sync to your other devices.
  • The token and map creators have a From vault tab, so you can use images already in your vault.
  • Dice formulas support the notation of Foundry and Roll20: keep and drop (2d20kh1), rerolls, explosions, success counts, d%, Fate dice, labels and brackets. Dropped and rerolled dice are shown struck through.
  • Initiative rolls add each creature's modifier from its statblock. With a contribution by anacletoTM.

New Feature: Native Statblocks

  • Atlas draws statblocks itself, so they show without the Fantasy Statblocks plugin.
  • Statblock templates for 5E (2014 and 2024), Cairn, Draw Steel and Fate, plus general ones for creatures, NPCs and hazards.
  • A template value can be limited to a list of choices, picked from a dropdown.
  • A template value can be shown in a box, with a small label over a large number, like hit points in a printed statblock.

General

  • The Loot Feature is now "Random Tables": roll on tables in your notes and on your loot bases.
  • Each collection sets its item rarities and their colours in its Random tables settings.
  • New table: paste a table from a PDF, web page or spreadsheet and save it as a file.
  • You can give a combatant your own initiative modifier in its edit dialog, which replaces the statblock's modifier until you clear it. With a contribution by anacletoTM.
  • The initial opening of scenes is now faster. The Spectral Engine now visualises grid detection with an animation
  • Added Toggle to turn off Grid Detection in the Grid Settings

What's Fixed / Improved

  • The asset manager's Characters tab is now called Tokens.
  • Tokens no longer snap to a default hidden grid if no grid was found during automatic detection
  • Improved UX for Grid Alignment panel
  • Atlas' toast messages now match the look of your theme.
  • Several tokens can share one statblock, for example colour variants of a creature.
  • Linking a token no longer replaces a statblock's own picture. A token copied to another collection keeps its statblock.
  • The creature filter Layout is now called Template. layout: still works in the search.
  • Fixed bug where note pin and statblock previews would open in a shifted position while an Obsidian sidebar was open
  • Measured distances show one decimal place, so a 1.5 m cell reads 1.5 m. Contributed by giopalma.
  • The fog brush draws an even stroke while you drag it. Contributed by MavethGH.
  • The first fog stroke after deleting all fog shows while you draw it. Contributed by MavethGH.
  • Saving an encounter from the asset manager or scene browser no longer opens the name dialog behind it.
  • Cmd+A (Ctrl+A) in an asset manager text field selects the text, not every asset.
  • Creating maps, tokens and scenes only offers the tags of the chosen collection.
  • A fixed value such as armour class now shows on its token when it is 0.
  • A ring colour picked from the right-click menu colours all selected tokens, in one undo step.
  • Resource wheels that players may see now show in the player window. Every resource has its own switch in the player view settings.

README file from

Github

AtlasVTT

A game system agnostic virtual tabletop for tabletop RPGs that runs inside Obsidian.

The guides, with screenshots and clips of every feature, are on atlas-vtt.dev.

I built Atlas as part of my bachelor's thesis to give the TTRPG community a virtual tabletop that's open source, hackable, and free to use. Every file Atlas creates, every token, every map, every world you build, stays yours and stays local. It follows the same philosophy as Obsidian: your work lives on your machine, in formats you control, with no account and no server in between. Atlas VTT also has an online play service, Atlas Online, to share your maps with players over the internet. Atlas Online requires an account and an internet connection.

TTRPG worlds in my opinion are something very personal and players and DMs get attached to them. That attachment deserves better than a subscription and someone else's database. Atlas makes sure your creative output stays yours, just like a sheet of paper would.

Ease of use matters just as much to me. Atlas aims for a minimal, streamlined interface that feels native to Obsidian, with clear controls and simple workflows that keep your attention on the game.

AtlasVTT is desktop only for now

Documentation at: atlas-vtt.dev

Atlas VTT showing a battle map, character tokens, a linked statblock, and the initiative tracker

At the table

  • Maps and grids: Build scenes from your own map images. Align square or hex grids manually or with automatic detection.
  • Tokens and encounters: Import characters, move and resize tokens, and save groups as reusable encounters. Link creature notes with the optional Fantasy Statblocks plugin. Simple die syntax like 2d8+2 will be turned into a clickable dice roll.
  • Fog and player view: Reveal the map as your players explore. Show a separate player window on a second screen while keeping GM information hidden.
  • Drawing and notes: Sketch, add text, measure distances, and pin Markdown notes or other Atlas maps to locations.
  • Dice and initiative: Roll dice, review the roll log, track turns, and keep counters and timers close at hand.
  • Music and controls: Play audio from your vault, customise map hotkeys, and undo or redo map edits.
  • Online play (closed beta): Host a table that your players join from their web browsers. It is off until you turn it on, and hosting needs an Atlas account with closed beta access.

Your notes, right on the map

Pin an Obsidian markdown note or even another Atlas map to a location, then read and edit it in a floating panel without leaving the map. Keep room descriptions, session prep, and character details close at hand, with Obsidian's familiar note linking built in.

Atlas VTT showing the note picker beside a linked note open on the map, with editing and Obsidian link suggestions

Organise your campaign

Keep scenes, maps, encounters, and characters together in collections. Use folders and tags to find what you need, then bring it onto the map.

Atlas VTT collection manager with character tokens, folders, tags, and actions for spawning tokens and linking statblocks

Atlas Sidebar

Atlas Sidebar is an optional companion plugin. It turns Obsidian's tabs into a vertical list with pinned tabs, folders, essentials and spaces, and keeps a pin at the top that takes you back to your scene in one click.

Atlas Sidebar, vertical tabs for Atlas VTT. The sidebar with the Atlas pin and the open notes beside a world map in Atlas.

Install

Requires Obsidian 1.8.7 or newer on desktop. Atlas VTT is available through Obsidian's community plugins.

  1. Open Settings → Community plugins and turn off Restricted mode if it is enabled.
  2. Select Browse and search for Atlas VTT.
  3. Select Install, then Enable.

Check for updates under Settings → Community plugins.

New to Atlas? Start here takes you from installing it to showing your first map to your players.

Want to try upcoming features early? Beta builds are available through BRAT, see docs/beta-testing.md.

In the beta, Random tables → New table turns pasted text into a Markdown table in your collection. Copy a table from a PDF, spreadsheet, website or Markdown note, enter its name and review the preview before choosing Save and roll.

The imports stay on your device. The XLSX reader uses the http://schemas.openxmlformats.org XML namespace identifiers locally and makes no requests to that address.

Download main.js, manifest.json, and styles.css from a GitHub release. Place them in <your vault>/.obsidian/plugins/atlas-vtt/, then enable Atlas VTT under Settings → Community plugins.

Your first scene

  1. Run Atlas VTT: Open dashboard from the command palette.
  2. Use the + button in the asset manager to import a map image, then create a scene using that map.
  3. Align the grid with automatic detection or the manual alignment tool.
  4. Import tokens and place them on your scene.
  5. For a local game, open the player view and move it to your second screen.

Privacy and network use

Atlas works offline with files in your vault. It has no telemetry or ads, and you need no account to use it. Scenes are saved as .atlasmap files, and the rest of your library (tokens, encounters, collection settings, game system presets) as JSON files in the atlas-vtt folder, so it syncs with your vault. With Obsidian Sync, turn on "Sync all other types".

If you use an external image URL for a token or map background, or copy an externally hosted image from a note, Atlas downloads that image from the supplied address. Vault images require no network access. When you explicitly submit an issue report, Atlas sends it to https://srv1871379.hstgr.cloud/atlas/reports, which creates a public GitHub issue. Online play (closed beta) is off until you turn it on in the command palette's Experimental features page. Hosting a table needs an Atlas account: you sign in at https://api.atlas-vtt.dev, and a running table connects to https://play.atlas-vtt.dev, which passes the scene your players may see on to their browsers and keeps none of it. Players need no account. See PRIVACY.md for details.

Help and contributing

Found a bug or have an idea? Run the Report an issue command inside Obsidian or use Settings → Atlas VTT → Help and feedback. Atlas fills in your versions and submits your report directly, without a GitHub account or a second form; see docs/reporting-issues.md. To contribute code, see CONTRIBUTING.md.

Requires Node.js 22 or newer.

npm ci
npm run build   # production build into ./dist
npm run dev     # watch build
npm test

The build also copies the plugin into local test vaults when they are present.

Game system templates

Atlas VTT comes with statblock templates for 5E, Cairn, Draw Steel and Fate. Each holds the fields and layout of a statblock, not rules text or creatures. Atlas VTT arranged the stat block structure as an editable template.

The Draw Steel statblock template and system preset in Atlas VTT are an independent product published under the DRAW STEEL Creator License and are not affiliated with MCDM Productions, LLC. DRAW STEEL © 2026 MCDM Productions, LLC.

Credits and license

Widget icons, map pin icons, light marker icons, the dashboard's icons, the token icon and the end-combat icon are by Lorc, Delapouite, Skoll, sbed, Carl Olsen, and Caro Asercion from game-icons.net, under CC BY 3.0. Their backgrounds were removed and glyphs recoloured. The starter class tokens are icons by Sketch Studio, commissioned by Maatlock of maatlockstavern.com, under CC BY 4.0, redrawn as pencil sketches on parchment. Other asset and library credits are in THIRD_PARTY_NOTICES.md.

Atlas VTT is free software. Copyright (C) 2025-2026 Fabian Urbanek.

You can use it for any purpose, including streamed, recorded, and paid games. You can redistribute and modify it under the terms of the GNU Affero General Public License, version 3 (AGPL-3.0-only) as published by the Free Software Foundation. If you distribute Atlas VTT or a modified version, or let others use a modified version over a network, you must make the complete source code available under the same license. It is distributed in the hope that it will be useful, but without any warranty; see the license for details.

Additional permission under GNU AGPL version 3 section 7: if you modify this program, or any covered work, by linking or combining it with Obsidian (or a modified version of that program), the licensors of this program grant you additional permission to convey the resulting work.

Releases up to and including 0.1.6 were published under the PolyForm Noncommercial License 1.0.0. If you want to use the code under different terms, contact Fabian Urbanek.

Your campaign content remains yours. Third-party components retain their own licenses.