gw-dsl-parser
gw_dsl_parser: Convert your graphic-walker workflow to sql
What it is and what it does
gw-dsl-parser converts graphic-walker workflow definitions—JSON payloads describing visual query operations like aggregations and grouping—into SQL statements executable against a database table. It bridges the gap between visual query builders and SQL databases by translating declarative workflow objects into standard SQL.
The package wraps a WebAssembly module (via wasmtime) to perform the DSL parsing. You provide a workflow payload, a table name, and the package returns the corresponding SQL string. It's designed as a backend utility for tools that let users build queries visually and need to execute them as SQL.
Use it for:
- Export visual queries built in graphic-walker as executable SQL for database execution
- Build a backend API that converts user-drawn query workflows into SQL without exposing raw SQL to the frontend
- Generate SQL from workflow definitions stored in JSON for batch processing or audit logging
- Integrate visual query builders into data applications that require SQL-based query execution
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Converts graphic-walker workflow definitions into SQL queries by parsing a DSL payload and generating executable SQL for the specified table.
Yes, if you are building on graphic-walker and need to translate visual workflows to SQL. The package has low install friction and permissive licensing. However, maintenance is dormant (last release 2024-07-31), so verify that the DSL subset and SQL generation match your use case before committing to a dependency on it.
Install
gw-dsl-parser on PyPI
pip
pip install gw-dsl-parseruv
uv add gw-dsl-parserpoetry
poetry add gw-dsl-parserInstalling gw-dsl-parser
Before you install
Low install friction with a single runtime dependency (wasmtime). Package is dormant—last release was over a year ago with no recent commits, though the repository remains active and unarchived.
License in practice
Licensed under Apache Software License (permissive), allowing commercial and private use with minimal restrictions beyond attribution and liability disclaimers.
Quickstart
pip install gw-dsl-parser
from gw_dsl_parser import get_sql_from_payload
payload = {"workflow": [{"type": "view", "query": [{"op": "aggregate", "groupBy": [], "measures": [{"field": "*", "agg": "count", "asFieldKey": "count"}]}]}]}
sql = get_sql_from_payload("test_table", payload)
print(sql)
wasmtime runtime dependency must be available; verify wasm module is downloaded via scripts/download_wasm.py if not automatic
Verify before relying
- Whether wasmtime must be pre-installed on the system or is automatically provisioned by the package
- Whether the wasm module download (scripts/download_wasm.py) is required before first use or happens automatically
- Scope and limitations of the DSL subset supported—which workflow operations and query types are actually parseable
Package facts
| License | not declared (permissive) |
| Python support | supports the current Python release (>=3.6) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — wasmtime |
| Maintenance | dormant — 744 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 123,123/month — #11,923 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: gw_dsl_parser-0.1.49.1-py3-none-any.whl
Keywords: graphic-walker, pygwalker
Tags
More Database packages
psycopg2-binary is a PostgreSQL database…
copyleft · top 1,000 on PyPI
redisPython client library for connecting to and…
permissive · top 1,000 on PyPI
ydbYDB Python SDK is the official client library…
permissive · top 1,000 on PyPI
snowflake-connector-pythonConnects Python applications to Snowflake data…
permissive · top 1,000 on PyPI
sqlparsesqlparse tokenizes SQL text into a tree of…
permissive · top 1,000 on PyPI
dbt-adaptersProvides base adapter protocols and shared…
permissive · top 1,000 on PyPI
mo-sql-parsingParses SQL queries into JSON-serializable parse…
copyleft · top 15,000 on PyPI
moz-sql-parserParses SQL queries into JSON-serializable parse…
copyleft · top 15,000 on PyPI
qpdQPD translates SQL SELECT statements into…
permissive · top 15,000 on PyPI
python-sqlConstructs SQL queries programmatically using…
permissive · top 15,000 on PyPI
graphql-queryBuilds GraphQL query strings programmatically…
permissive · top 15,000 on PyPI
django-sql-utilsProvides simplified APIs for Django querysets…
permissive · top 15,000 on PyPI
fugue-sql-antlrParses Fugue SQL dialect into an abstract…
permissive · top 5,000 on PyPI
simple-ddl-parserParses SQL DDL statements and their dialect…
permissive · top 15,000 on PyPI
pygwalkerTurns pandas DataFrames into interactive…
permissive · top 15,000 on PyPI