# Zyntex - High-level Zig parser for Python
**Docs:** https://zyntex.readthedocs.io/en/latest
Zyntex is a Python package that allows you to parse Zig code and perform operations on
high-level language elements (functions, variables).
Function bodies and other low-level constructs are currently returned as raw strings.
Support for deeper elements is planned. Internally, it uses bindings to Zig's std AST parser,
making it both fast and memory-efficient.
Important: currently bindings are only available for `windows-x86_64`, `macos-x86_64`, and `linux-x86_64`.
On other architectures the library will not work. Support for additional targets is planned,
but low priority.
**Be aware that the project is at a very early stage of development
and is actively being developed.**
## Features
- Parse Zig source from strings or files.
- High-performance, low-memory parsing powered by Zig’s `std` parser.
- Easy-to-use, Pythonic API designed for inspection Zig code.
## Installation
```bash
pip install zyntex
```
## Minimal example
```python
from typing import cast
from zyntex.syntax import VariableDeclaration
from zyntex import SourceCode
src = SourceCode("const result: usize = 15 + 15;")
variable = cast(VariableDeclaration, src.content[0])
print(variable.name) # result
print(variable.const) # True
```
For questions or contributions, open an issue or PR on the project repository.
Raw data
{
"_id": null,
"home_page": "https://github.com/xXenvy/zyra",
"name": "zyntex",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "zig parser codegen",
"author": "xXenvy",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/32/9f/ebfc7939e629662858528227cc05b8fe67f52f295ef45fbb5fe99e9d4e2f/zyntex-0.0.3.tar.gz",
"platform": null,
"description": "# Zyntex - High-level Zig parser for Python\n**Docs:** https://zyntex.readthedocs.io/en/latest\n\nZyntex is a Python package that allows you to parse Zig code and perform operations on \nhigh-level language elements (functions, variables).\nFunction bodies and other low-level constructs are currently returned as raw strings.\nSupport for deeper elements is planned. Internally, it uses bindings to Zig's std AST parser,\nmaking it both fast and memory-efficient.\nImportant: currently bindings are only available for `windows-x86_64`, `macos-x86_64`, and `linux-x86_64`.\nOn other architectures the library will not work. Support for additional targets is planned, \nbut low priority.\n\n**Be aware that the project is at a very early stage of development\nand is actively being developed.**\n\n## Features\n\n- Parse Zig source from strings or files.\n- High-performance, low-memory parsing powered by Zig\u2019s `std` parser.\n- Easy-to-use, Pythonic API designed for inspection Zig code.\n\n## Installation\n\n```bash\npip install zyntex\n```\n\n## Minimal example\n```python\nfrom typing import cast\n\nfrom zyntex.syntax import VariableDeclaration\nfrom zyntex import SourceCode\n\nsrc = SourceCode(\"const result: usize = 15 + 15;\")\nvariable = cast(VariableDeclaration, src.content[0])\n\nprint(variable.name) # result\nprint(variable.const) # True\n```\n\nFor questions or contributions, open an issue or PR on the project repository.\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "A high-level Python package to parse Zig code.",
"version": "0.0.3",
"project_urls": {
"Homepage": "https://github.com/xXenvy/zyra",
"Source": "https://github.com/xXenvy/zyntex",
"Tracker": "https://github.com/xXenvy/zyntex/issues"
},
"split_keywords": [
"zig",
"parser",
"codegen"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "db1636da940134b3acd1f718284765364cb723e5b3460c5a66b9392b1fa38e1b",
"md5": "a279b79acfadb409f47549d4241fbde8",
"sha256": "91cbac3c812e1f71aacbc122fdb4af7f699ed4d1fddc18948020280de6d421a1"
},
"downloads": -1,
"filename": "zyntex-0.0.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "a279b79acfadb409f47549d4241fbde8",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 1249826,
"upload_time": "2025-09-01T18:30:21",
"upload_time_iso_8601": "2025-09-01T18:30:21.861220Z",
"url": "https://files.pythonhosted.org/packages/db/16/36da940134b3acd1f718284765364cb723e5b3460c5a66b9392b1fa38e1b/zyntex-0.0.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "329febfc7939e629662858528227cc05b8fe67f52f295ef45fbb5fe99e9d4e2f",
"md5": "9a5611bcf341a4eb462a79eed7939f34",
"sha256": "83450658600ddaaf2dd89b4ee9efc6c03eedec6b08e84f898499499d00f5e765"
},
"downloads": -1,
"filename": "zyntex-0.0.3.tar.gz",
"has_sig": false,
"md5_digest": "9a5611bcf341a4eb462a79eed7939f34",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 22585,
"upload_time": "2025-09-01T18:30:23",
"upload_time_iso_8601": "2025-09-01T18:30:23.377047Z",
"url": "https://files.pythonhosted.org/packages/32/9f/ebfc7939e629662858528227cc05b8fe67f52f295ef45fbb5fe99e9d4e2f/zyntex-0.0.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-09-01 18:30:23",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "xXenvy",
"github_project": "zyra",
"github_not_found": true,
"lcname": "zyntex"
}