m3m0r7/pnl

PHP native-library extension manager: FFI runtime SDK plus the pnl/pnlx CLI built from the bundled Rust sources on install.

Maintainers

Package info

github.com/m3m0r7/pnl

Language:Rust

pkg:composer/m3m0r7/pnl

Statistics

Installs: 1

Dependents: 0

Suggesters: 0

Stars: 5

Open Issues: 0

v0.1.8 2026-06-11 03:22 UTC

This package is auto-updated.

Last update: 2026-06-11 08:59:18 UTC


README

日本語版

pnl makes it easy to use C libraries from PHP. It installs library "packages", finds the C library and headers already on your machine, generates PHP wrappers plus a small Rust bridge, compiles the bridge, and exposes everything through the Pnlx PHP SDK — think Composer, but for C libraries.

pnl init
pnl find 'lib*'      # browse available packages (default repo + your own)
pnl install libc
pnl list 'lib*'      # show what you have installed

See the Quick Start to call C printf from PHP in a minute.

Table of Contents

Documentation

  • Overview — What pnl is, how it works, and project status.
  • Quick Start — Call C printf from PHP in a few commands.
  • Installation — Requirements and building/installing the binaries.
  • Configuration — Project layout and writing pnl.json.
  • Install Sources — URLs, paths, bare names, archives, and native discovery.
  • Commandspnl and pnlx command reference.
  • PHP Usage — Loading extensions and the generated files.
  • Development — Validation, testing, and the JSON schemas.

The default package repository is https://github.com/m3m0r7/pnl-packages, which publishes a repository-index.json so pnl find can browse it without cloning.

License

This repository is currently marked as MIT in composer.json. The bundled C libraries keep their own upstream licenses; see the package manifests and READMEs at https://github.com/m3m0r7/pnl-packages.