skillfed

pysimstring

Easy to install clone of simstring

pysimstring v1.3.0 75.8K downloads/30d#14,676 on PyPI2
License unclear AGING released

What it is and what it does

pysimstring is a Python wrapper around the SimString approximate string matching algorithm, designed to find strings similar to a query within a pre-built database. It solves the problem of fuzzy string matching—finding close matches even when the input is misspelled, truncated, or slightly different from the stored strings. The package is a fork that removes the libiconv dependency, making it easier to install on Windows without requiring conda.

The library works by building an index of strings and then retrieving candidates that fall within a specified similarity threshold. It's useful for tasks like entity matching, typo correction, and deduplication where exact string matching is too strict. The package has no runtime dependencies and ships as pre-compiled wheels for multiple Python versions and platforms, reducing installation friction compared to building from source.

Use it for:

  • Matching user-entered names or addresses against a reference database despite typos or formatting differences.
  • Deduplicating records in a dataset where identifiers may be slightly different across sources.
  • Autocomplete or search suggestions that tolerate minor spelling variations.
  • Entity linking in NLP pipelines where mention strings must match against a knowledge base.
  • Fuzzy matching of product codes or SKUs in e-commerce systems.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides fast approximate string matching and similarity search using the SimString algorithm, enabling fuzzy matching of strings against a database.

Yes, if you need fast approximate string matching and can verify the license terms in the repository. The package is straightforward to install across multiple Python versions and has no external dependencies. However, the unclear license status and minimal repository activity (aging status, 2 stars) mean you should confirm licensing and maintenance expectations before adopting it in production systems.

Install

pysimstring on PyPI

pip

pip install pysimstring

uv

uv add pysimstring

poetry

poetry add pysimstring

Installing pysimstring

Before you install

Medium install friction due to compiled wheels, but well-supported across multiple Python versions and major platforms (Windows, macOS, Linux). Last release was recent (2025-04-06), though the repository shows minimal activity (2 stars, aging status).

License in practice

License status is unclear—no SPDX identifier or raw license text is declared. Before relying on this package in a production or commercial context, verify the actual license terms in the repository.

Quickstart

pip install pysimstring

import pysimstring

No explicit Python version requirement declared; verify compatibility with your target Python version before deployment.

Verify before relying

  • Exact license terms and attribution requirements—license_treatment is marked unclear and no SPDX identifier is present.
  • Whether the package is actively maintained—repository has only 2 stars and status is 'aging' despite recent release date.
  • Python version support boundaries—requires_python is unspecified in the metadata.
  • Specific API and usage patterns—the fact sheet does not detail the module's public interface or methods.

Package facts

License not declared (unclear)
Python support not specified
Install friction medium — platform-specific wheel
Runtime dependencies none
Maintenance aging — 495 days since the last release
Last repo commit
First released
Downloads 75,836/month — #14,676 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: pysimstring-1.3.0-cp310-cp310-macosx_10_9_x86_64.whl; pysimstring-1.3.0-cp310-cp310-macosx_11_0_arm64.whl; pysimstring-1.3.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; pysimstring-1.3.0-cp310-cp310-win_amd64.whl; pysimstring-1.3.0-cp311-cp311-macosx_10_9_x86_64.whl; pysimstring-1.3.0-cp311-cp311-macosx_11_0_arm64.whl; pysimstring-1.3.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; pysimstring-1.3.0-cp311-cp311-win_amd64.whl; pysimstring-1.3.0-cp312-cp312-macosx_10_13_x86_64.whl; pysimstring-1.3.0-cp312-cp312-macosx_11_0_arm64.whl; pysimstring-1.3.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; pysimstring-1.3.0-cp312-cp312-win_amd64.whl; pysimstring-1.3.0-cp313-cp313-macosx_10_13_x86_64.whl; pysimstring-1.3.0-cp313-cp313-macosx_11_0_arm64.whl; pysimstring-1.3.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; pysimstring-1.3.0-cp313-cp313-win_amd64.whl; pysimstring-1.3.0-cp37-cp37m-macosx_10_9_x86_64.whl; pysimstring-1.3.0-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl; pysimstring-1.3.0-cp37-cp37m-win_amd64.whl; pysimstring-1.3.0-cp38-cp38-macosx_10_9_x86_64.whl

Tags

approximate string matchingfuzzy string searchstring similaritysimstring algorithmstring matching databasesimilarity searchfuzzy matching
string-matchingfuzzy-searchnlp

More Text Processing packages