Skip to main content

Vulkan Object Python Package

Parsing the vk.xml in Vulkan is easy, processing it is hard!

It is very easy for people to mess up trying to process the vk.xml file, so we created VulkanObject

VulkanObject is just a python dataclass that is defined in Vulkan-Headers/registry/vulkan_object.py. It uses the reg.py framework that the Vulkan Spec is generated with in order to populate the VulkanObject data structure.

This python package makes it super easy to get going.

pip install vulkan-object

and then it is as simple as

#!/usr/bin/env python3
from vulkan_object import get_vulkan_object

# This builds the VulkanObject that is populated and ready to be used
vk = get_vulkan_object()

print(f'There are now {len([x for x in vk.extensions.values()])} extensions in Vulkan')

print(f'Built with the {vk.headerVersion} headers')

longest_count = 0
for struct in vk.structs.values():
    if len(struct.name) > longest_count:
        longest_count = len(struct.name)
        longest_struct = struct
print(f'Longest Struct name is {longest_struct.name} at {longest_count} characters')

Quick query from the terminal

Just run the following and you can quickly use vk in your terminal for some quick query

python -i -c "from vulkan_object import get_vulkan_object;vk = get_vulkan_object()"

Vulkan Video

Added in 1.4.342 release

By default, the video.xml file is not parsed, but can be turned on. (example: video_example.py)

vk = get_vulkan_object(video=True)

More example

example.py has more in depth ways to use this

What is this package/repo actually?

The Vulkan-Headers contain a bunch of scripts in the Vulkan-Headers/registry/ directory that repos can use to help generate code.

The main issue is the delivery mechanism for python projects. This package/repo just grabs the Vulkan-Headers scripts (not the C header files themselves!) and make it easier to integrate with projects.

Updating this repo

run python update.py /path/to/Vulkan-Headers and it will do everything to sync this package up with the new headers

Metadata

Release files for vulkan-object 1.4.366

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

Source distribution (sdist)

Source distribution for vulkan-object 1.4.366
File Size Uploaded Provenance
vulkan_object-1.4.366.tar.gz 419.8 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for vulkan-object 1.4.366
File Interpreter ABI Platform
vulkan_object-1.4.366-py3-none-any.whl Python 3 none any Details

Total release size: 849.2 kB

Release files / vulkan_object-1.4.366.tar.gz

Download URL vulkan_object-1.4.366.tar.gz
Size 419.8 kB
Tags Source
SHA-256 checksum
How to use checksums
a8e62976dd7d4d54fe3b5dfc96887f0cbd76648dbd70eeb937193c9542a0746f
BLAKE2b-256 checksum
How to use checksums
cc3546eaad223b20353f7a72d069ca471c51e268ac99efb543874899a3c21642
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Oct 23, 2026.

Transparency log

Release files / vulkan_object-1.4.366-py3-none-any.whl

Download URL vulkan_object-1.4.366-py3-none-any.whl
Size 429.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
66101cd7f17b1f0b501fbdbf05421fa7b5d7c3b77971e4f9346713be5b870ef1
BLAKE2b-256 checksum
How to use checksums
dd47f5bd7047c65d7bd451eeba16e6e85524a9441ea14a970bca093b43f66fa5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.16

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 Oct 23, 2026.

Transparency log

Security for vulkan-object 1.4.366

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.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for vulkan_object-1.4.366.tar.gz

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 Oct 23, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

1.4.366 This release

2 release files Full provenance

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