Skip to main content

Weavly Compiler

Compiler for the Weavly dialogue scripting language. Parses .wvl files and compiles them to JSON for the Weavly Godot runtime.

Language documentation: https://weavly-lang.github.io/weavly-docs/

Install

Install uv, then:

uv tool install weavly

uv installs a suitable Python if needed and puts weavly on your PATH (run uv tool update-shell if it isn't). Upgrade with uv tool upgrade weavly.

With Python 3.11+ already installed, pipx install weavly works too.

Usage

weavly init my-project   # creates my-project/src/nodes.wvl
cd my-project
weavly build             # compiles src/**/*.wvl into build/
weavly build --pretty    # same, with indented JSON
weavly --version         # installed compiler version

weavly init without a name sets up src/ in the current directory.

The build writes:

  • build/<path>.wvl.json for each source file, containing its nodes
  • build/env.json with every @env declaration in the project

Syntax errors, duplicate variable declarations, number declarations whose min, max or default don't fit together, duplicate node ids and @goto targets with no matching node fail the build with exit code 1. A failed build leaves the previous build/ untouched.

Development

git clone https://github.com/weavly-lang/weavly-compiler.git
cd weavly-compiler
uv sync --group dev

See CONTRIBUTING.md for the workflow and release steps.

License

MIT

Release files for weavly 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for weavly 0.2.0
File Size Uploaded
weavly-0.2.0.tar.gz 18.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for weavly 0.2.0
File Interpreter ABI Platform
weavly-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 32.2 kB

Release files / weavly-0.2.0.tar.gz

Download URL weavly-0.2.0.tar.gz
Size 18.1 kB
Tags Source
SHA-256 checksum
How to use checksums
4d1395c798e1ea926689029610363ae8f81918cee247d696594de8afe903c8ec
BLAKE2b-256 checksum
How to use checksums
e33b63bdc1c9f239010dd1ed6c1c151a067c28a33d4933cb66756a45cc1d2587
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 22, 2026.

Transparency log

Release files / weavly-0.2.0-py3-none-any.whl

Download URL weavly-0.2.0-py3-none-any.whl
Size 14.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0ec6df03d5de2f9ce3a64708724b7f70caea2054a286533663e89b9216498ccb
BLAKE2b-256 checksum
How to use checksums
0e1e93140305feeeb535c2b80d383831717cc018a1f71d5dccca64fe4f051269
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 22, 2026.

Transparency log

Release history Release notifications | RSS feed

0.4.0

2 release files

0.3.0

2 release files

This release

0.2.0 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page