Skip to main content

pylibfinder (supports Python 3.10 to 3.14 on POSIX)

  • pylibfinder is a Python library that allows you to spot a keyword as a python object inside the Python standard library.

  • It provides a convenient way to search for objects that match a given keyword within the standard library modules.

  • With pylibfinder, you can easily identify the modules and objects that are available in Python and gain insights into their usage and availability.

  • This library is designed to assist developers in finding relevant objects and understanding the Python standard library better.

https://img.shields.io/pypi/v/pylibfinder CI Tests https://img.shields.io/pypi/pyversions/pylibfinder.svg https://img.shields.io/pypi/wheel/pylibfinder.svg https://img.shields.io/badge/C%20Extension-yes-brightgreen.svg https://img.shields.io/badge/platform-macOS-blue.svg https://img.shields.io/badge/platform-Linux-blue.svg https://img.shields.io/badge/License-MIT-blue.svg https://pepy.tech/badge/pylibfinder

Installation

For stable version

  • pip install pylibfinder

For development

Recommended (Easy setup):

  • git clone https://github.com/Agent-Hellboy/pylibfinder

  • cd pylibfinder

  • pip install -e . (installs in editable mode with proper Python headers detection)

  • make changes to src/pylibfinder.c

  • reinstall with pip install -e . to rebuild

  • open repl and test

Manual compilation:

macOS:

  • Install Homebrew Python: brew install python@3.13

  • Find Python include path: python3.13 -c "import sysconfig; print(sysconfig.get_path('include'))"

  • Compile: gcc -shared -o pylibfinder.so -fPIC -I /opt/homebrew/opt/python@3.13/Frameworks/Python.framework/Versions/3.13/include/python3.13 src/pylibfinder.c src/module_scanner.c -lpython3.13

  • It will generate pylibfinder.so

  • Test in Python REPL: python3.13 -c "import pylibfinder; print(pylibfinder.find_similar('power'))

Linux:

  • Install Python dev package: sudo apt-get install python3.13-dev

  • Compile: gcc -shared -o pylibfinder.so -fPIC -I /usr/include/python3.13 src/pylibfinder.c src/module_scanner.c

  • It will generate pylibfinder.so

  • Test in Python REPL: python3.13 -c "import pylibfinder; print(pylibfinder.find_similar('power'))

Example

Semantic similarity search - Find similar functions:

>>> import pylibfinder
>>>
>>> # Search for 'power' to find math functions (default threshold 0.5)
>>> pylibfinder.find_similar('power')
[{'Module': 'builtins', 'Function': 'pow', 'Similarity': 0.6}, ...]
>>>
>>> # Search for 'print' with custom threshold
>>> result = pylibfinder.find_similar('print', 0.5)
>>> result[0]
{'Module': 'builtins', 'Function': 'print', 'Similarity': 1.0}
>>>
>>> # Find functions similar to 'parseInt' (Java function) with higher threshold
>>> pylibfinder.find_similar('parseInt', 0.6)
[{'Module': 're._parser', 'Function': '_parse_sub', 'Similarity': 0.6}]
>>>
>>> # Include private APIs (functions starting with _) in search results
>>> pylibfinder.find_similar('parse', 0.5, include_private=True)
[{'Module': 'builtins', 'Function': 'compile', 'Similarity': 0.5}, {'Module': 're._parser', 'Function': '_parse_sub', 'Similarity': 0.8}, ...]
>>>

Terminal User Interface (TUI)

Interactive Search with Beautiful UI:

pylibfinder TUI Demo

To use the interactive terminal interface, install with the TUI extra:

pip install pylibfinder[tui]

Then launch the interactive TUI:

pylibfinder-tui

Features:

  • Beautiful Interactive Interface - Built with Textual for a modern TUI experience

  • Keyboard Navigation - Smooth and responsive controls

  • Color-Coded Results - Visual indicators for match quality:

    • Green: Excellent match (90%+)

    • Cyan: Good match (70%+)

    • Yellow: Fair match (50%+)

    • Red: Low match (<50%)

  • Progress Bars - Visual representation of similarity scores

  • Real-time Search - Search directly in the TUI interface

Usage:

  1. Start the TUI: pylibfinder-tui

  2. Type your keyword in the search box (e.g., power, print, parseInt)

  3. Every keyword event sends request to the backend

  4. View results in the formatted table

  5. Press Ctrl+L to clear results or Ctrl+C to exit

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Metadata

Release files for pylibfinder 0.2.4

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

Source distribution (sdist)

Source distribution for pylibfinder 0.2.4
File Size Uploaded
pylibfinder-0.2.4.tar.gz 9.4 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for pylibfinder 0.2.4
File
pylibfinder-0.2.4-cp314-cp314t-musllinux_1_2_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ x86-64 Details
pylibfinder-0.2.4-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.14 CPython 3.14 free-threading Linux glibc 2.5+ x86-64, Linux glibc 2.28+ x86-64 Details
pylibfinder-0.2.4-cp314-cp314t-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64 Details
pylibfinder-0.2.4-cp314-cp314-musllinux_1_2_x86_64.whl CPython 3.14 CPython 3.14 Linux musl 1.2+ x86-64 Details
pylibfinder-0.2.4-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.5+ x86-64, Linux glibc 2.28+ x86-64 Details
pylibfinder-0.2.4-cp314-cp314-macosx_11_0_arm64.whl CPython 3.14 CPython 3.14 macOS 11.0+ ARM64 Details
pylibfinder-0.2.4-cp313-cp313-musllinux_1_2_x86_64.whl CPython 3.13 CPython 3.13 Linux musl 1.2+ x86-64 Details
pylibfinder-0.2.4-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.5+ x86-64, Linux glibc 2.28+ x86-64 Details
pylibfinder-0.2.4-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
pylibfinder-0.2.4-cp312-cp312-musllinux_1_2_x86_64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ x86-64 Details
pylibfinder-0.2.4-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.5+ x86-64, Linux glibc 2.28+ x86-64 Details
pylibfinder-0.2.4-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
pylibfinder-0.2.4-cp311-cp311-musllinux_1_2_x86_64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ x86-64 Details
pylibfinder-0.2.4-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64, Linux glibc 2.5+ x86-64 Details
pylibfinder-0.2.4-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
pylibfinder-0.2.4-cp310-cp310-musllinux_1_2_x86_64.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ x86-64 Details
pylibfinder-0.2.4-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.5+ x86-64, Linux glibc 2.28+ x86-64 Details
pylibfinder-0.2.4-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details

Total release size: 412.2 kB

Release files / pylibfinder-0.2.4.tar.gz

Download URL pylibfinder-0.2.4.tar.gz
Size 9.4 kB
Tags Source
SHA-256 checksum
How to use checksums
e153609a92d7a97aacbf3d7b56e64a136c2d6728872337abc53837ddde410491
BLAKE2b-256 checksum
How to use checksums
7cfb99a43bd0fa1a44490d3ebab7574097b8c44b98d07f2d1530feeafbf3d7a8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.24

Release files / pylibfinder-0.2.4-cp314-cp314t-musllinux_1_2_x86_64.whl

Download URL pylibfinder-0.2.4-cp314-cp314t-musllinux_1_2_x86_64.whl
Size 29.7 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
b82715f92290017817c8ee625cc45580b8b8a95514c141fc1eb8594ce8d9cc86
BLAKE2b-256 checksum
How to use checksums
2d15155e3b0d6230b7dab4c112693568401094abf1e18c1db7077b2b2dfd9d1e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.24

Release files / pylibfinder-0.2.4-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL pylibfinder-0.2.4-cp314-cp314t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 30.8 kB
Tags CPython 3.14 CPython 3.14 free-threading Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
de3d1aea3461f9f6cf3cf8d5736f8405fdf16f7ec1281b139281a83b2a6031e8
BLAKE2b-256 checksum
How to use checksums
631aa25bac5ad84fd36b7241303d59d4bb479b526c1ed75cf62b81b39db68254
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.24

Release files / pylibfinder-0.2.4-cp314-cp314t-macosx_11_0_arm64.whl

Download URL pylibfinder-0.2.4-cp314-cp314t-macosx_11_0_arm64.whl
Size 12.3 kB
Tags CPython 3.14 CPython 3.14 free-threading macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
58222ed04d10148bcafe82f43b5237db9e0ec96dbd2bf83da04b8bc64d752a43
BLAKE2b-256 checksum
How to use checksums
19dedcfbdf8fac35821d8f41fea8c3e3fee2ce247b710a528f4dbc0e7d42d27b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.24

Release files / pylibfinder-0.2.4-cp314-cp314-musllinux_1_2_x86_64.whl

Download URL pylibfinder-0.2.4-cp314-cp314-musllinux_1_2_x86_64.whl
Size 27.0 kB
Tags CPython 3.14 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
a84a449ef83f92f901a1ffa13d8891f515cbf74a856e67d51439a1414397630f
BLAKE2b-256 checksum
How to use checksums
00354b80bdd2b23c27d60b8555ecc3936e752a8eb880bbfa28f6b6a318fd564b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.24

Release files / pylibfinder-0.2.4-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL pylibfinder-0.2.4-cp314-cp314-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 28.3 kB
Tags CPython 3.14 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
3d991957b16b0e74600803a99f7b831438f5fb8f9dd50697947504c78ba828a4
BLAKE2b-256 checksum
How to use checksums
995ac46e17267076696b8a126b9b65465c7f4cbe1dc266db8d65923edc9daed4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.24

Release files / pylibfinder-0.2.4-cp314-cp314-macosx_11_0_arm64.whl

Download URL pylibfinder-0.2.4-cp314-cp314-macosx_11_0_arm64.whl
Size 12.1 kB
Tags CPython 3.14 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
79f4fa2d8baab887bc47d3e89fc9a42819b5686657bd1fbd19f5c97601c49bf3
BLAKE2b-256 checksum
How to use checksums
9874789b0f053559708d3e9c1a6bb48e59aed151cbe510eb21797f016a457cfb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.24

Release files / pylibfinder-0.2.4-cp313-cp313-musllinux_1_2_x86_64.whl

Download URL pylibfinder-0.2.4-cp313-cp313-musllinux_1_2_x86_64.whl
Size 27.0 kB
Tags CPython 3.13 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
90cadb9472ab4921a9601c8d8f4191e2468cde8f568238dbc99184d33329d219
BLAKE2b-256 checksum
How to use checksums
4a23dc075bcb2f4b612df24d117e67c4d82e0cef257b1c5c2698aa7541a7ecf6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.24

Release files / pylibfinder-0.2.4-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL pylibfinder-0.2.4-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 28.0 kB
Tags CPython 3.13 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
fde618a0cf0e5519cd95a22b20e67c61dde33b5f7e1e0edd9e041d701233868c
BLAKE2b-256 checksum
How to use checksums
756d7660c461873b3c6cb65b03e5c6aa775f7b9b3f52ba3b3c4bc09d7254263f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.24

Release files / pylibfinder-0.2.4-cp313-cp313-macosx_11_0_arm64.whl

Download URL pylibfinder-0.2.4-cp313-cp313-macosx_11_0_arm64.whl
Size 12.1 kB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
838f9e262981427a93737a6b712ff5a29f635ff577b9f1fe1b7659c8af1fe8ab
BLAKE2b-256 checksum
How to use checksums
f2e4f2cca365a2cb963dd8fe8d7995e1c6d438f8c029ba88365ecc829b70c451
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.24

Release files / pylibfinder-0.2.4-cp312-cp312-musllinux_1_2_x86_64.whl

Download URL pylibfinder-0.2.4-cp312-cp312-musllinux_1_2_x86_64.whl
Size 27.0 kB
Tags CPython 3.12 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
1ad2a77e146c492aa92d76f516abacfe2e7de1d087dd8f803c66851f6c0ac410
BLAKE2b-256 checksum
How to use checksums
056c610604df55a9097842dff4c03ba1d4588c51b0c478776edc083286667bdc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.24

Release files / pylibfinder-0.2.4-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL pylibfinder-0.2.4-cp312-cp312-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 27.6 kB
Tags CPython 3.12 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
132335f562a731c6f9859d913071d0f52f01f9384fcc7451ae970f1ea5bdf3e8
BLAKE2b-256 checksum
How to use checksums
df442c8f1a5c385cfc193cfb2cec3a948636863d8ac12d67618c887a116a200e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.24

Release files / pylibfinder-0.2.4-cp312-cp312-macosx_11_0_arm64.whl

Download URL pylibfinder-0.2.4-cp312-cp312-macosx_11_0_arm64.whl
Size 12.1 kB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
db5d4e948bddd706c48046980f95b2937e51f093781296a593ef991eb19779c4
BLAKE2b-256 checksum
How to use checksums
afd8a4c1d9dda1c3740b531a1afff836d3a16cc76d1f632252e0074bc60a0dda
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.24

Release files / pylibfinder-0.2.4-cp311-cp311-musllinux_1_2_x86_64.whl

Download URL pylibfinder-0.2.4-cp311-cp311-musllinux_1_2_x86_64.whl
Size 26.1 kB
Tags CPython 3.11 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
2f38b12846ee77aad588c309253ae4db07867d26ff3e0217c91903cb85457bfb
BLAKE2b-256 checksum
How to use checksums
f4ab84fd4888b406b40e78d3abc0bf9a883832800dc388b96cf08d27d4d26fdd
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.24

Release files / pylibfinder-0.2.4-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL pylibfinder-0.2.4-cp311-cp311-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 26.8 kB
Tags CPython 3.11 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
3f575cf3437e467d6ef2a7bfce67c90d2f7aa4e63d02d55da6889ab670210819
BLAKE2b-256 checksum
How to use checksums
a169001fd07c8da617fbb6213bf5fd04c671b6044ef0c0316f56b2f461e8eaf0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.24

Release files / pylibfinder-0.2.4-cp311-cp311-macosx_11_0_arm64.whl

Download URL pylibfinder-0.2.4-cp311-cp311-macosx_11_0_arm64.whl
Size 12.0 kB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
eb2c09517ac9c11669e275304dee3362e24959042c16093fa3f10ec41103efb8
BLAKE2b-256 checksum
How to use checksums
6454dcf7e7c5606c405bba150c8452d13e4d19dc65fc23bf7ebe2b3763c5acd7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.24

Release files / pylibfinder-0.2.4-cp310-cp310-musllinux_1_2_x86_64.whl

Download URL pylibfinder-0.2.4-cp310-cp310-musllinux_1_2_x86_64.whl
Size 25.8 kB
Tags CPython 3.10 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
a732bdec744ee70e9be14b748747bd8788e1c2ceb00f66107eecebfde7219c4f
BLAKE2b-256 checksum
How to use checksums
52f843a75dcb0418e86b1a118ebc6b2c8e4311e4cab19659aa04f03bbcf62029
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.24

Release files / pylibfinder-0.2.4-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl

Download URL pylibfinder-0.2.4-cp310-cp310-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl
Size 26.2 kB
Tags CPython 3.10 Linux glibc 2.28+ x86-64 Linux glibc 2.5+ x86-64
SHA-256 checksum
How to use checksums
59e34eefb68dc4d61237959a94ac668b854ea4da1b3c29ea353e789d6ad653be
BLAKE2b-256 checksum
How to use checksums
863d426839e127c74794b504f341e4a9b419602dff65fa83d87d1f852c8d88df
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.24

Release files / pylibfinder-0.2.4-cp310-cp310-macosx_11_0_arm64.whl

Download URL pylibfinder-0.2.4-cp310-cp310-macosx_11_0_arm64.whl
Size 12.0 kB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
dd8d576e5a32639883a488c31ae2fd67a344d69c1676af941fe50fb323f0fc65
BLAKE2b-256 checksum
How to use checksums
5fda65f1617abe2da03d49a07b10163a8da598f564da0ffe2c1c750815dccc1d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.24

Release history Release notifications | RSS feed

This release

0.2.4 This release

19 release files

0.2.3

19 release files

0.2.2

19 release files

0.2.1

19 release files

0.2.0

19 release files

0.1.1

1 release file

0.1.0

1 release file

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