Skip to main content

CLI to generate and maintain pybind11 bindings

Project description

LibGen CLI

LibGen is a CLI that scaffolds and maintains Python bindings for C++ modules using pybind11.

Features

  • libgen create <name>: create a Python + C++ project skeleton.
  • libgen update <path>: regenerate bindings.cpp, __init__.py, README and basic tests from C++ sources.
  • libgen validate <path>: validate that discovered C++ functions match exported bindings.
  • libgen compile <path> --release: build wheel and verify Python import.
  • libgen list-templates: show embedded templates.

Installation

pip install sflibgen

Usage

libgen create mylib
libgen update mylib
libgen validate mylib
libgen compile mylib --release

PyPI Publishing (GitHub Actions)

This repository includes a workflow at .github/workflows/publish.yml that publishes to PyPI when a GitHub release is published.

Required setup on GitHub/PyPI:

  1. In PyPI, create a Trusted Publisher for this repository.
  2. In GitHub, ensure main/pypi branch protections and release permissions are configured.
  3. Create a release in GitHub; the workflow builds and uploads sdist + wheel to PyPI.

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

sflibgen-0.1.0.tar.gz (7.1 kB view details)

Uploaded Source

Built Distribution

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

sflibgen-0.1.0-py3-none-any.whl (9.6 kB view details)

Uploaded Python 3

File details

Details for the file sflibgen-0.1.0.tar.gz.

File metadata

  • Download URL: sflibgen-0.1.0.tar.gz
  • Upload date:
  • Size: 7.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for sflibgen-0.1.0.tar.gz
Algorithm Hash digest
SHA256 507116ed699d0fc18cb6c5df9cfb5a2e37e9ab54459e4a05386675d0dc40c4f7
MD5 8232ffec975e2d4d84484df88c4f48a7
BLAKE2b-256 0568a9345955575785b5ca9ef83c2726244d3ab09b56f5e15dde3a82cc8d19c9

See more details on using hashes here.

File details

Details for the file sflibgen-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: sflibgen-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 9.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for sflibgen-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e9590415a7251469876d72f11c166919e810475b51f0f1deb1c4833663fc2fd5
MD5 9cc4427ed4e84a65603b4db6bfffbb13
BLAKE2b-256 c73912095e8c0ea5234c22ee25ae994567af417322a216c961ddbe1bafca1f25

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