fnvhash
Pure Python FNV hash implementation.
What it is and what it does
fnvhash is a pure Python implementation of the FNV (Fowler-Noll-Vo) hash family. It trades performance for portability—the pure Python approach means it runs anywhere without compiled dependencies, but will be slower than optimized alternatives for high-throughput hashing.
The package is useful when you need FNV hashing in environments where installing compiled extensions is difficult or when cross-platform compatibility matters more than speed. It has no runtime dependencies, installs cleanly, and has 100% test coverage. It is licensed under MIT.
Use it for:
- Computing checksums or hash table keys in pure Python environments where C extensions cannot be installed.
- Generating FNV hashes for data deduplication or content-addressed storage in portable Python code.
- Hashing datasets where compatibility is prioritized over performance.
- Educational purposes to understand FNV hash algorithm implementation.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Computes FNV hash values in pure Python, prioritizing portability over performance.
Yes, if you need FNV hashing and portability matters more than performance. The package is stable, has no dependencies, and installs easily. Skip it if you need high-speed hashing—the description itself recommends pyhash for performance-critical use cases. No known vulnerabilities.
Install
fnvhash on PyPI
pip
pip install fnvhashuv
uv add fnvhashpoetry
poetry add fnvhashInstalling fnvhash
Before you install
Low install friction with no runtime dependencies. Maintenance is aging—last commit was 2025-05-05 and the package is in Beta status, but the repository is not archived and receives occasional updates.
License in practice
MIT license is permissive; you can use, modify, and distribute this package freely with minimal restrictions.
Quickstart
pip install fnvhash
from fnvhash import fnv1a_32
hash_value = hex(fnv1a_32(b'foo'))
Requires Python 3.9 or later.
Verify before relying
- Whether FNV hashes are suitable for cryptographic purposes or only for non-security use cases.
- Performance characteristics compared to alternatives when speed is important.
- Which FNV variants (FNV-1, FNV-1a, bit widths) are supported beyond the fnv1a_32 example shown.
Package facts
| License | MIT (permissive) |
| Python support | supports the current Python release (>=3.9) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | none |
| Maintenance | aging — 466 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 862,284/month — #4,870 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: fnvhash-0.2.1-py3-none-any.whl
Keywords: fnv, fnv1, fnv1a, hash
Tags
More Software Development packages
Provides backported and experimental type hints…
permissive · top 100 on PyPI
numpyNumPy provides an N-dimensional array object…
permissive · top 100 on PyPI
fastapiFastAPI is a Python web framework for building…
permissive · top 100 on PyPI
annotated-docProvides a way to document function parameters,…
permissive · top 100 on PyPI
typerTyper builds command-line applications from…
permissive · top 1,000 on PyPI
distlibDistlib provides low-level packaging utilities…
permissive · top 1,000 on PyPI
fnv-hash-fastComputes FNV-1a 32-bit hashes using a C++…
permissive · top 15,000 on PyPI
murmurhashProvides fast MurmurHash2 hashing through…
permissive · top 1,000 on PyPI
simhashComputes Simhash fingerprints for text and…
permissive · top 15,000 on PyPI
clickhouse-cityhashProvides Python bindings to CityHash, a fast…
permissive · top 15,000 on PyPI
uhashringuhashring implements consistent hashing in pure…
permissive · top 15,000 on PyPI
siphashProvides a Python implementation of SipHash, a…
permissive · top 15,000 on PyPI
cityhashPython wrapper for Google's CityHash and…
permissive · top 15,000 on PyPI
dict-hashGenerates consistent hashes for Python…
permissive · top 15,000 on PyPI
ImageHashImageHash computes perceptual fingerprints of…
permissive · top 5,000 on PyPI
bbhashBuilds minimal perfect hash functions for…
unclear · top 15,000 on PyPI