4 releases

0.3.11 Jan 23, 2024
0.3.11-alpha.1 Jan 18, 2024
0.3.10 Jan 18, 2024
0.1.7 Sep 29, 2023

#326 in FFI

28 downloads per month
Used in 3 crates (via libpt-net)

MIT license

426 lines

pt / libpt


pt stands for either one of "personal tool", "plex tool", "pete" or something among those lines. It is a collection of tools that i might or might not use. The intended purpose of this repo is that I program whatever i feel is worth having in a personal thing into it, then use it as either a lib, crate, python module or executable.

Let's see if I make it a bloated mess or stop committing after 30 hello worlds.


Compiling & Installing from source

If you only want the rust library, you can simply build it with cargo build. Add it to your project like any other local dependency.

If you want to use the python variant too, you need to compile with maturing.

  • Install in venv: maturin develop --release
  • Install in system: maturin build --release && pip install target/wheels/libpt-x.x.x-*

Installing from pypi

libpt has been packaged for pypi.org.

You can install it with pip install libpt

Installing from crates.io

libpt has been packaged for crates.io.

You can add the library to your project with cargo add libpt.

Installing from my personal package registry

libpt has been packaged for git.cscherr.de.

You can add the registry to your config.toml and then cargo add libpt



Testing needs to be done separately for the rust and python parts:

  • Rust testing with cargo test
  • Python testing with ./scripts/pytests.sh or python -m unittest discover -fs tests/python


The documentation can be automatically generated with cargo doc --open.

An up to date version of the Documentation can be found here


The origin of this repository is git.cscherr.de

It is mirrored to:


Pt is MIT Licensed


~332K SLoC