Skip to main content

No project description provided

Project description

Ziggy Pydust

A framework for writing and packaging native Python extension modules written in Zig.

Actions Package version Python version License


Documentation: https://pydust.fulcrum.so/latest

API: https://pydust.fulcrum.so/latest/zig

Source Code: https://github.com/fulcrum-so/ziggy-pydust

Template: https://github.com/fulcrum-so/ziggy-pydust-template


Ziggy Pydust is a framework for writing and packaging native Python extension modules written in Zig.

  • Package Python extension modules written in Zig.
  • Pytest plugin to discover and run Zig tests.
  • Comptime argument wrapping / unwrapping for interop with native Zig types.
const py = @import("pydust");

pub fn fibonacci(args: struct { n: u64 }) u64 {
    if (args.n < 2) return args.n;

    var sum: u64 = 0;
    var last: u64 = 0;
    var curr: u64 = 1;
    for (1..args.n) {
        sum = last + curr;
        last = curr;
        curr = sum;
    }
    return sum;
}

comptime {
    py.module(@This());
}

Compatibility

Pydust supports:

Please reach out if you're interested in helping us to expand compatibility.

Getting Started

Pydust docs can be found here. Zig documentation (beta) can be found here.

There is also a template repository including Poetry build, Pytest and publishing from Github Actions.

Contributing

We welcome contributions! Pydust is in its early stages so there is lots of low hanging fruit when it comes to contributions.

  • Assist other Pydust users with GitHub issues or discussions.
  • Suggest or implement features, fix bugs, fix performance issues.
  • Improve our documentation.
  • Write articles or other content demonstrating how you have used Pydust.

License

Pydust is released under the Apache-2.0 license.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ziggy_pydust-0.3.2.tar.gz (36.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ziggy_pydust-0.3.2-py3-none-any.whl (55.7 kB view details)

Uploaded Python 3

File details

Details for the file ziggy_pydust-0.3.2.tar.gz.

File metadata

  • Download URL: ziggy_pydust-0.3.2.tar.gz
  • Upload date:
  • Size: 36.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.5

File hashes

Hashes for ziggy_pydust-0.3.2.tar.gz
Algorithm Hash digest
SHA256 5af6bdf44c817e1f14d149a70d3eba38f42b794d860de3180623412143679292
MD5 6e7e952e8568bda33439c6ef0f33ea99
BLAKE2b-256 640be8836b89bc737f2f1a07602c6612f1afc71a4fee5da0f0df63cb5dc46cd8

See more details on using hashes here.

File details

Details for the file ziggy_pydust-0.3.2-py3-none-any.whl.

File metadata

  • Download URL: ziggy_pydust-0.3.2-py3-none-any.whl
  • Upload date:
  • Size: 55.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/4.0.2 CPython/3.11.5

File hashes

Hashes for ziggy_pydust-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f31e8dc5bf6328747587910d56c615de0425d15effb0c8d2f20570e7d744c302
MD5 5620b04e19f8a3ec2ccb1c27d7816dc7
BLAKE2b-256 6b2014cfe030fda7fc93d02605a0e09b6c5ac9cf02410ad14f5be2a121188e19

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page