Gravewright v2.0.0-alpha.0 — SDK Freeze
Gravewright v2.0.0-alpha.0 — SDK Freeze
Gravewright v2.0.0-alpha.0 freezes SDK 1 as the supported package extension contract.
This release turns Gravewright into a system-agnostic, package-first VTT platform. Rulesets and addons are now expected to ship as SDK packages instead of being baked into the core.
This release also includes a built package artifact that can be installed through the package manager UI or validated and installed manually.
Highlights
- Freezes SDK 1 as the supported package extension contract.
- Removes pre-SDK-1 legacy compatibility surfaces.
- Keeps the core platform system-agnostic.
- Removes bundled DnD5e from the core.
- Ships ruleset support as external SDK packages.
- Includes a built package artifact for installation and validation.
- Supports external ruleset packages through the grouped package layout.
- Stabilizes package validation, install, update, and diagnostics.
- Stabilizes managed package storage via
storage.sqlite. - Stabilizes package interop via
sdk.bus. - Stabilizes declarative sheets and HTML/runtime sheet support.
- Updates the package manager UI for ruleset inspection and installation.
- Adds one-click setup scripts for Windows, macOS, and Linux.
- Adds Docker deployment support.
- Verifies package-aware backup and restore coverage.
SDK 1 frozen surface
SDK 1 now includes the following supported extension surfaces:
- manifest v1;
- grouped package layout:
data/packages/{kind_plural}/{id}; - declarative JSON package model;
- actor and item registration;
- declarative sheets;
- HTML sheets;
- sheet runtime behavior through
sheets.runtime; - combat runtime behavior through
combat.runtime; - package-to-package messaging through
sdk.bus; - managed package storage through
storage.sqlite; - package settings;
- package content packs;
- package validation and diagnostics;
- package-aware backup and restore.
System-agnostic core
Gravewright core no longer bundles DnD5e as a built-in ruleset.
5e support is distributed separately as an SDK package:
When included with this release, the built package artifact can be installed directly through the Gravewright package manager UI.
This keeps the core platform clean and lets game systems ship independently as packages.
Installing Gravewright
Windows
Download the release archive, extract it, and run:
install-windows.bat
macOS / Linux
Download the release archive, extract it, then run:
bash install-macos-linux.shOr:
chmod +x install-macos-linux.sh
./install-macos-linux.shManual setup
uv sync --frozen
uv run python scripts/setup_local_env.py
uv run python -m app.cli doctor
uv run python -m app.cli run --openThen open:
http://127.0.0.1:8000
Docker
docker compose up -d --buildThen open:
http://localhost:8000
Installing rulesets
Rulesets are installed as packages.
Recommended: use the Gravewright web UI.
- Open Gravewright.
- Go to Sistemas de Regras / Rulesets.
- Click Enviar e instalar.
- Select a ruleset package
.zip. - Review package details.
- Click Instalar.
If you are using the package artifact included with this release, select the provided built package .zip during installation.
Manual package installation is also supported:
uv run python -m app.cli package validate data/packages/rulesets/my-rpg
uv run python -m app.cli package install my-rpg --enable
uv run python -m app.cli doctorValidation
This release was validated with:
unit test suite
e2e test suite
compileall
SDK reference check
alembic upgrade head
doctor --strict --json
backup --include-assets --include-packages --verify
restore --dry-run
The included built package artifact was also validated against the SDK 1 package contract.
Expected doctor output may include a development warning if SESSION_SECRET is still set to the default value.
Alpha status
This is still an Alpha release, not LTS.
Real campaign use is no longer discouraged when backups are used, but you should still:
- back up before upgrading;
- test upgrades before important sessions;
- keep export/backup copies of campaign data;
- expect possible breaking changes before LTS, especially outside the frozen SDK 1 package contract.
Notes for package authors
Package authors should target SDK 1 and use the documented extension surfaces.
Do not depend on removed pre-SDK-1 compatibility APIs.
Use:
sheets.runtimeinstead of old sheet hook naming;combat.runtimeinstead of old combat hook naming;sdk.busfor package-to-package integration;storage.sqlitefor managed package storage;- grouped package layout under
data/packages/{kind_plural}/{id}.
Upgrade notes
If you were using an earlier Alpha with bundled DnD5e, install the external 5e SRD package instead:
If a built package artifact is included with this release, install that package through the package manager UI or through the CLI before running campaigns that depend on it.
If your local database references the old bundled DnD5e package, remove or update that package reference before running campaigns.
Known limitations
- Gravewright is not LTS yet.
- Marketplace/premium package distribution is not implemented yet.
- Cards/deck support is not part of core in this release.
- Some package ecosystems are still being developed externally.
Summary
Gravewright v2.0.0-alpha.0 is the SDK Freeze release.
It establishes Gravewright as a self-hostable, server-authoritative, SDK-driven VTT where game systems and extensions ship as packages instead of being baked into the core.
This release also provides a built package artifact so the SDK package workflow can be installed, inspected, validated, and tested immediately.