bloomlib


Namebloomlib JSON
Version 0.0.2 PyPI version JSON
download
home_pagehttps://www.mikehuls.com
SummaryLibrary that offers all types of Bloom filters, implemented in Rust
upload_time2024-02-04 19:29:38
maintainer
docs_urlNone
authorMike Huls
requires_python>=3.9
licenseMIT
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            [//]: # (<div align="center">)
[//]: # (  <img src="https://pandas.pydata.org/static/img/pandas.svg"><br>)
[//]: # (</div>)

```commandline
______  ______                          ___________ ______  
___  /_ ___  /______ ______ _______ ___ ___  /___(_)___  /_ 
__  __ \__  / _  __ \_  __ \__  __ `__ \__  / __  / __  __ \
_  /_/ /_  /  / /_/ // /_/ /_  / / / / /_  /  _  /  _  /_/ /
/_.___/ /_/   \____/ \____/ /_/ /_/ /_/ /_/   /_/   /_.___/ 
```
-----------------

# bloomlib: superfast Bloom filters for Python, optimized in Rust

|         |                                                                                                                                                                                                                                      |
|---------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Package | [![PyPI Latest Release](https://img.shields.io/pypi/v/bloomlib.svg)](https://pypi.org/project/bloomlib/) [![PyPI Downloads](https://img.shields.io/pypi/dm/bloomlib.svg?label=PyPI%20downloads)](https://pypi.org/project/bloomlib/) |
| Meta    | ![GitHub License](https://img.shields.io/github/license/mike-huls/bloomlib)                                                                                                                                                          |

**bloomlib** is a Python package that provides superfast Bloom filters, designed to 
optimize your applications in an easy and intuitive way.
It aims to be the go-to package to build and use Bloom Filters that make your applications 
superfast, memory-efficient and user-friendly.
```shell
pip install bloomlib
```

## Table of Contents
- [Main Features](#main-features)
- [Usage Example](#usage-example)
- [Installation](#installation)
- [Dependencies](#dependencies)
- [License](#license)
- [Documentation](#documentation)
- [Development](#development)
- [Contributing to bloomlib](#contributing-to-bloomlib)

## Main Features
- 🦀 Built in Rust
- ⚡ Highly optimized for speed and memory-efficiency
- 👨‍🎨 User-friendly

## Usage Example
```python
from bloomlib import BloomFilter

# 1. Create the filter
bf = BloomFilter(expected_number_of_items=1_000, desired_false_positive_rate=0.05)

# 2. Add items
for i in range(100):
    bf.add(item=i)

# 3. Check if an item is contained; False means definitely not, True means "maybe" 
if (bf.contains(item=42)):
    print("This item may be in filter")
else:
    print("This item is definitely not in the filter")
```


## Installation
```sh
pip install bloomlib
```
The source code is currently hosted on GitHub at:
https://github.com/mike-huls/bloomlib

Binary installers for the latest released version are available at the [Python
Package Index (PyPI)](https://pypi.org/project/bloomlib).

## Dependencies
Bloomlib has no Python dependencies

## License
[MIT](LICENSE.txt)

## Documentation
🔨 Under construction

## Development
Find the changelog and list of upcoming features [here](doc/CHANGELOG.md).
<br>
**Contributions** are always welcome; feel free to submit bug reports, bug fixes, feature requests, documentation improvements or enhancements!

<hr>

[Go to Top](#table-of-contents)

            

Raw data

            {
    "_id": null,
    "home_page": "https://www.mikehuls.com",
    "name": "bloomlib",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": "",
    "keywords": "",
    "author": "Mike Huls",
    "author_email": "mikehuls42@gmail.com",
    "download_url": "",
    "platform": null,
    "description": "[//]: # (<div align=\"center\">)\r\n[//]: # (  <img src=\"https://pandas.pydata.org/static/img/pandas.svg\"><br>)\r\n[//]: # (</div>)\r\n\r\n```commandline\r\n______  ______                          ___________ ______  \r\n___  /_ ___  /______ ______ _______ ___ ___  /___(_)___  /_ \r\n__  __ \\__  / _  __ \\_  __ \\__  __ `__ \\__  / __  / __  __ \\\r\n_  /_/ /_  /  / /_/ // /_/ /_  / / / / /_  /  _  /  _  /_/ /\r\n/_.___/ /_/   \\____/ \\____/ /_/ /_/ /_/ /_/   /_/   /_.___/ \r\n```\r\n-----------------\r\n\r\n# bloomlib: superfast Bloom filters for Python, optimized in Rust\r\n\r\n|         |                                                                                                                                                                                                                                      |\r\n|---------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\r\n| Package | [![PyPI Latest Release](https://img.shields.io/pypi/v/bloomlib.svg)](https://pypi.org/project/bloomlib/) [![PyPI Downloads](https://img.shields.io/pypi/dm/bloomlib.svg?label=PyPI%20downloads)](https://pypi.org/project/bloomlib/) |\r\n| Meta    | ![GitHub License](https://img.shields.io/github/license/mike-huls/bloomlib)                                                                                                                                                          |\r\n\r\n**bloomlib** is a Python package that provides superfast Bloom filters, designed to \r\noptimize your applications in an easy and intuitive way.\r\nIt aims to be the go-to package to build and use Bloom Filters that make your applications \r\nsuperfast, memory-efficient and user-friendly.\r\n```shell\r\npip install bloomlib\r\n```\r\n\r\n## Table of Contents\r\n- [Main Features](#main-features)\r\n- [Usage Example](#usage-example)\r\n- [Installation](#installation)\r\n- [Dependencies](#dependencies)\r\n- [License](#license)\r\n- [Documentation](#documentation)\r\n- [Development](#development)\r\n- [Contributing to bloomlib](#contributing-to-bloomlib)\r\n\r\n## Main Features\r\n- \ud83e\udd80 Built in Rust\r\n- \u26a1 Highly optimized for speed and memory-efficiency\r\n- \ud83d\udc68\u200d\ud83c\udfa8 User-friendly\r\n\r\n## Usage Example\r\n```python\r\nfrom bloomlib import BloomFilter\r\n\r\n# 1. Create the filter\r\nbf = BloomFilter(expected_number_of_items=1_000, desired_false_positive_rate=0.05)\r\n\r\n# 2. Add items\r\nfor i in range(100):\r\n    bf.add(item=i)\r\n\r\n# 3. Check if an item is contained; False means definitely not, True means \"maybe\" \r\nif (bf.contains(item=42)):\r\n    print(\"This item may be in filter\")\r\nelse:\r\n    print(\"This item is definitely not in the filter\")\r\n```\r\n\r\n\r\n## Installation\r\n```sh\r\npip install bloomlib\r\n```\r\nThe source code is currently hosted on GitHub at:\r\nhttps://github.com/mike-huls/bloomlib\r\n\r\nBinary installers for the latest released version are available at the [Python\r\nPackage Index (PyPI)](https://pypi.org/project/bloomlib).\r\n\r\n## Dependencies\r\nBloomlib has no Python dependencies\r\n\r\n## License\r\n[MIT](LICENSE.txt)\r\n\r\n## Documentation\r\n\ud83d\udd28 Under construction\r\n\r\n## Development\r\nFind the changelog and list of upcoming features [here](doc/CHANGELOG.md).\r\n<br>\r\n**Contributions** are always welcome; feel free to submit bug reports, bug fixes, feature requests, documentation improvements or enhancements!\r\n\r\n<hr>\r\n\r\n[Go to Top](#table-of-contents)\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Library that offers all types of Bloom filters, implemented in Rust",
    "version": "0.0.2",
    "project_urls": {
        "Bug Tracker": "https://github.com/mike-huls/bloomlib/issues",
        "Documentation": "https://github.com/mike-huls/bloomlib/blob/main/README.md/",
        "Homepage": "https://github.com/mike-huls/bloomlib",
        "Say Thanks!": "https://www.buymeacoffee.com/mikehuls",
        "Source": "https://github.com/mike-huls/bloomlib/"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "818923b2326ee7aceb1f2548df7928e97ab812f7639c24d0717c083d7d6ef7c2",
                "md5": "fc9aea22c5235ae5394d718c078f1bb2",
                "sha256": "9e30b6475a424674d0bbc7a478979eb47f1222907bec19aaf81a1cfc689906e6"
            },
            "downloads": -1,
            "filename": "bloomlib-0.0.2-cp39-cp39-manylinux_2_31_x86_64.whl",
            "has_sig": false,
            "md5_digest": "fc9aea22c5235ae5394d718c078f1bb2",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 1083157,
            "upload_time": "2024-02-04T19:29:38",
            "upload_time_iso_8601": "2024-02-04T19:29:38.608945Z",
            "url": "https://files.pythonhosted.org/packages/81/89/23b2326ee7aceb1f2548df7928e97ab812f7639c24d0717c083d7d6ef7c2/bloomlib-0.0.2-cp39-cp39-manylinux_2_31_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "214a12ff8866dd8d4b0dfa8c3c4dbda7e737aab2c1218d2ed1153056d02b1f58",
                "md5": "e749f4b6277f1c07c998852076dc45f1",
                "sha256": "2a15e6847048dffb4625f64bb5a8c1463cfee499953b50606a79e8a62e31f578"
            },
            "downloads": -1,
            "filename": "bloomlib-0.0.2-cp39-none-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "e749f4b6277f1c07c998852076dc45f1",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 1490502,
            "upload_time": "2024-02-04T19:29:42",
            "upload_time_iso_8601": "2024-02-04T19:29:42.605255Z",
            "url": "https://files.pythonhosted.org/packages/21/4a/12ff8866dd8d4b0dfa8c3c4dbda7e737aab2c1218d2ed1153056d02b1f58/bloomlib-0.0.2-cp39-none-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-02-04 19:29:38",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "mike-huls",
    "github_project": "bloomlib",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "bloomlib"
}
        
Elapsed time: 0.22623s