anltk


Nameanltk JSON
Version 1.0.8 PyPI version JSON
download
home_pageNone
SummaryArabic Natural Language Toolkit (ANLTK)
upload_time2025-11-09 13:35:17
maintainerNone
docs_urlNone
authorNone
requires_python>=3.7
licenseBoost Software License 1.0
keywords nlp arabic python arabic c++
VCS
bugtrack_url
requirements pybind11
Travis-CI No Travis.
coveralls test coverage No coveralls.
            ![example workflow](https://github.com/Abdullah-AlAttar/anltk/actions/workflows/c-cpp.yml/badge.svg)
![example workflow](https://github.com/Abdullah-AlAttar/anltk/actions/workflows/wheels.yml/badge.svg)
[![PyPI version](https://badge.fury.io/py/anltk.svg)](https://badge.fury.io/py/anltk)
[![License](https://img.shields.io/badge/License-Boost_1.0-lightblue.svg)](https://www.boost.org/LICENSE_1_0.txt)
[![Downloads](https://static.pepy.tech/personalized-badge/anltk?period=total&units=international_system&left_color=blue&right_color=orange&left_text=Downloads)](https://pepy.tech/project/anltk)

# Arabic Natural Language Toolkit (ANLTK)

ANLTK is a set of Arabic natural language processing tools. developed with focus on simplicity and performance.

## ANLTK is a C++ library, with python bindings

## Installation

for python :

```
pip install anltk
```

## Building

Note: Currently only tested on Linux, prebuilt python wheels are available for Linux, Windows, Macos on [pypi](https://pypi.org/project/anltk/)

### Dependencies

* [utfcpp](https://github.com/nemtrif/utfcpp.git), automatically downloaded.
* [utf8proc](https://github.com/JuliaStrings/utf8proc), automatically downloaded.
* C++ Compiler that supports c++17.
* Python3, [meson](https://mesonbuild.com/), [ninja](https://ninja-build.org/)
* [Task](https://taskfile.dev/) (optional, for simplified build commands)

### Building C++ Library

```bash
git clone https://github.com/Abdullah-AlAttar/anltk.git
cd anltk/

# Using taskfile (recommended)
task configure
task build
task test

# Or manually with meson
meson build --buildtype=release -Dbuild_tests=false
cd build
ninja
```

### Building Python Bindings

```bash
# Complete setup (creates venv, installs deps, builds package)
task py:setup

# Or step by step:
task py:venv              # Create virtual environment
task py:deps              # Install build dependencies
task py:install           # Install in development mode

# Test the installation
task py:test              # Run quick tests

# Build wheel for distribution
task py:wheel             # Build wheel package

# Clean build artifacts
task clean                # Clean all build artifacts
```

### Manual Python Build (without taskfile)

```bash
python3 -m venv .venv
.venv/bin/pip install --upgrade pip meson-python build pybind11 ninja patchelf
.venv/bin/pip install -e .
```

## Usage Examples

### C++ API

```c++
#include "anltk/anltk.hpp"
#include <iostream>
#include <string>

int main()
{

    std::string ar_text = "أبجد هوز حطي كلمن سعفص قرشت ثخذ ضظغ";

    std::cout << anltk::transliterate(ar_text, anltk::CharMapping::AR2BW) << '\n';
    // >bjd hwz HTy klmn sEfS qr$t vx* DZg

    std::string text = "فَرَاشَةٌ مُلَوَّنَةٌ تَطِيْرُ في البُسْتَانِ، حُلْوَةٌ مُهَنْدَمَةٌ تُدْهِشُ الإِنْسَانَ.";

    std::cout << anltk::remove_tashkeel(text) << '\n';
    // فراشة ملونة تطير في البستان، حلوة مهندمة تدهش الإنسان.

    // Third paramters is a stop_list, charactres in this list won't be removed
    std::cout << anltk::remove_non_alpha(text, " ") << '\n';
    // فراشة ملونة تطير في البستان حلوة مهندمة تدهش الإنسان

    anltk::TafqitOptions opts;
    std::cout<< anltk::tafqit(15000120, opts) <<'\n';
    // خمسة عشر مليونًا ومائة وعشرون
}

```

### Python API

```python
import anltk


ar = "أبجد هوز حطي كلمن سعفص قرشت ثخذ ضظغ"
bw = anltk.transliterate(ar, anltk.AR2BW)
print(bw)
# >bjd hwz HTy klmn sEfS qr$t vx* DZg

print(anltk.remove_tashkeel("فَرَاشَةٌ مُلَوَّنَةٌ تَطِيْرُ في البُسْتَانِ، حُلْوَةٌ مُهَنْدَمَةٌ تُدْهِشُ الإِنْسَانَ."))

# فراشة ملونة تطير في البستان، حلوة مهندمة تدهش الإنسان.

print(anltk.tafqit(15000120))
# خمسة عشر مليونًا ومائة وعشرون
```

**For list of features see [Features.md](Features.md)**

## Benchmarks

Processing a file containing 500000 Line, 6787731 Word, 112704541 Character. the task is to remove diacritics / transliterate to buckwalter

### **Buckwatler transliteration**

| Method           | Time          |   |   |
|------------------|---------------|---|---|
| anltk python-api | 1.379 seconds |   |   |
| python [camel_tools](https://github.com/CAMeL-Lab/camel_tools)  | 11.46 seconds |   |   |

### **Remove Diacritics**

| Method           | Time          |   |   |
|------------------|---------------|---|---|
| anltk python-api | 0.989 seconds |   |   |
| python [camel_tools](https://github.com/CAMeL-Lab/camel_tools)   | 4.892 seconds |   |   |

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "anltk",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": null,
    "keywords": "NLP, Arabic, python, arabic, c++",
    "author": null,
    "author_email": "Abdullah Alattar <abdullah.mohammad.alattar@gmail.com>",
    "download_url": null,
    "platform": null,
    "description": "![example workflow](https://github.com/Abdullah-AlAttar/anltk/actions/workflows/c-cpp.yml/badge.svg)\n![example workflow](https://github.com/Abdullah-AlAttar/anltk/actions/workflows/wheels.yml/badge.svg)\n[![PyPI version](https://badge.fury.io/py/anltk.svg)](https://badge.fury.io/py/anltk)\n[![License](https://img.shields.io/badge/License-Boost_1.0-lightblue.svg)](https://www.boost.org/LICENSE_1_0.txt)\n[![Downloads](https://static.pepy.tech/personalized-badge/anltk?period=total&units=international_system&left_color=blue&right_color=orange&left_text=Downloads)](https://pepy.tech/project/anltk)\n\n# Arabic Natural Language Toolkit (ANLTK)\n\nANLTK is a set of Arabic natural language processing tools. developed with focus on simplicity and performance.\n\n## ANLTK is a C++ library, with python bindings\n\n## Installation\n\nfor python :\n\n```\npip install anltk\n```\n\n## Building\n\nNote: Currently only tested on Linux, prebuilt python wheels are available for Linux, Windows, Macos on [pypi](https://pypi.org/project/anltk/)\n\n### Dependencies\n\n* [utfcpp](https://github.com/nemtrif/utfcpp.git), automatically downloaded.\n* [utf8proc](https://github.com/JuliaStrings/utf8proc), automatically downloaded.\n* C++ Compiler that supports c++17.\n* Python3, [meson](https://mesonbuild.com/), [ninja](https://ninja-build.org/)\n* [Task](https://taskfile.dev/) (optional, for simplified build commands)\n\n### Building C++ Library\n\n```bash\ngit clone https://github.com/Abdullah-AlAttar/anltk.git\ncd anltk/\n\n# Using taskfile (recommended)\ntask configure\ntask build\ntask test\n\n# Or manually with meson\nmeson build --buildtype=release -Dbuild_tests=false\ncd build\nninja\n```\n\n### Building Python Bindings\n\n```bash\n# Complete setup (creates venv, installs deps, builds package)\ntask py:setup\n\n# Or step by step:\ntask py:venv              # Create virtual environment\ntask py:deps              # Install build dependencies\ntask py:install           # Install in development mode\n\n# Test the installation\ntask py:test              # Run quick tests\n\n# Build wheel for distribution\ntask py:wheel             # Build wheel package\n\n# Clean build artifacts\ntask clean                # Clean all build artifacts\n```\n\n### Manual Python Build (without taskfile)\n\n```bash\npython3 -m venv .venv\n.venv/bin/pip install --upgrade pip meson-python build pybind11 ninja patchelf\n.venv/bin/pip install -e .\n```\n\n## Usage Examples\n\n### C++ API\n\n```c++\n#include \"anltk/anltk.hpp\"\n#include <iostream>\n#include <string>\n\nint main()\n{\n\n    std::string ar_text = \"\u0623\u0628\u062c\u062f \u0647\u0648\u0632 \u062d\u0637\u064a \u0643\u0644\u0645\u0646 \u0633\u0639\u0641\u0635 \u0642\u0631\u0634\u062a \u062b\u062e\u0630 \u0636\u0638\u063a\";\n\n    std::cout << anltk::transliterate(ar_text, anltk::CharMapping::AR2BW) << '\\n';\n    // >bjd hwz HTy klmn sEfS qr$t vx* DZg\n\n    std::string text = \"\u0641\u064e\u0631\u064e\u0627\u0634\u064e\u0629\u064c \u0645\u064f\u0644\u064e\u0648\u0651\u064e\u0646\u064e\u0629\u064c \u062a\u064e\u0637\u0650\u064a\u0652\u0631\u064f \u0641\u064a \u0627\u0644\u0628\u064f\u0633\u0652\u062a\u064e\u0627\u0646\u0650\u060c \u062d\u064f\u0644\u0652\u0648\u064e\u0629\u064c \u0645\u064f\u0647\u064e\u0646\u0652\u062f\u064e\u0645\u064e\u0629\u064c \u062a\u064f\u062f\u0652\u0647\u0650\u0634\u064f \u0627\u0644\u0625\u0650\u0646\u0652\u0633\u064e\u0627\u0646\u064e.\";\n\n    std::cout << anltk::remove_tashkeel(text) << '\\n';\n    // \u0641\u0631\u0627\u0634\u0629 \u0645\u0644\u0648\u0646\u0629 \u062a\u0637\u064a\u0631 \u0641\u064a \u0627\u0644\u0628\u0633\u062a\u0627\u0646\u060c \u062d\u0644\u0648\u0629 \u0645\u0647\u0646\u062f\u0645\u0629 \u062a\u062f\u0647\u0634 \u0627\u0644\u0625\u0646\u0633\u0627\u0646.\n\n    // Third paramters is a stop_list, charactres in this list won't be removed\n    std::cout << anltk::remove_non_alpha(text, \" \") << '\\n';\n    // \u0641\u0631\u0627\u0634\u0629 \u0645\u0644\u0648\u0646\u0629 \u062a\u0637\u064a\u0631 \u0641\u064a \u0627\u0644\u0628\u0633\u062a\u0627\u0646 \u062d\u0644\u0648\u0629 \u0645\u0647\u0646\u062f\u0645\u0629 \u062a\u062f\u0647\u0634 \u0627\u0644\u0625\u0646\u0633\u0627\u0646\n\n    anltk::TafqitOptions opts;\n    std::cout<< anltk::tafqit(15000120, opts) <<'\\n';\n    // \u062e\u0645\u0633\u0629 \u0639\u0634\u0631 \u0645\u0644\u064a\u0648\u0646\u064b\u0627 \u0648\u0645\u0627\u0626\u0629 \u0648\u0639\u0634\u0631\u0648\u0646\n}\n\n```\n\n### Python API\n\n```python\nimport anltk\n\n\nar = \"\u0623\u0628\u062c\u062f \u0647\u0648\u0632 \u062d\u0637\u064a \u0643\u0644\u0645\u0646 \u0633\u0639\u0641\u0635 \u0642\u0631\u0634\u062a \u062b\u062e\u0630 \u0636\u0638\u063a\"\nbw = anltk.transliterate(ar, anltk.AR2BW)\nprint(bw)\n# >bjd hwz HTy klmn sEfS qr$t vx* DZg\n\nprint(anltk.remove_tashkeel(\"\u0641\u064e\u0631\u064e\u0627\u0634\u064e\u0629\u064c \u0645\u064f\u0644\u064e\u0648\u0651\u064e\u0646\u064e\u0629\u064c \u062a\u064e\u0637\u0650\u064a\u0652\u0631\u064f \u0641\u064a \u0627\u0644\u0628\u064f\u0633\u0652\u062a\u064e\u0627\u0646\u0650\u060c \u062d\u064f\u0644\u0652\u0648\u064e\u0629\u064c \u0645\u064f\u0647\u064e\u0646\u0652\u062f\u064e\u0645\u064e\u0629\u064c \u062a\u064f\u062f\u0652\u0647\u0650\u0634\u064f \u0627\u0644\u0625\u0650\u0646\u0652\u0633\u064e\u0627\u0646\u064e.\"))\n\n# \u0641\u0631\u0627\u0634\u0629 \u0645\u0644\u0648\u0646\u0629 \u062a\u0637\u064a\u0631 \u0641\u064a \u0627\u0644\u0628\u0633\u062a\u0627\u0646\u060c \u062d\u0644\u0648\u0629 \u0645\u0647\u0646\u062f\u0645\u0629 \u062a\u062f\u0647\u0634 \u0627\u0644\u0625\u0646\u0633\u0627\u0646.\n\nprint(anltk.tafqit(15000120))\n# \u062e\u0645\u0633\u0629 \u0639\u0634\u0631 \u0645\u0644\u064a\u0648\u0646\u064b\u0627 \u0648\u0645\u0627\u0626\u0629 \u0648\u0639\u0634\u0631\u0648\u0646\n```\n\n**For list of features see [Features.md](Features.md)**\n\n## Benchmarks\n\nProcessing a file containing 500000 Line, 6787731 Word, 112704541 Character. the task is to remove diacritics / transliterate to buckwalter\n\n### **Buckwatler transliteration**\n\n| Method           | Time          |   |   |\n|------------------|---------------|---|---|\n| anltk python-api | 1.379 seconds |   |   |\n| python [camel_tools](https://github.com/CAMeL-Lab/camel_tools)  | 11.46 seconds |   |   |\n\n### **Remove Diacritics**\n\n| Method           | Time          |   |   |\n|------------------|---------------|---|---|\n| anltk python-api | 0.989 seconds |   |   |\n| python [camel_tools](https://github.com/CAMeL-Lab/camel_tools)   | 4.892 seconds |   |   |\n",
    "bugtrack_url": null,
    "license": "Boost Software License 1.0",
    "summary": "Arabic Natural Language Toolkit (ANLTK)",
    "version": "1.0.8",
    "project_urls": {
        "Bug Tracker": "https://github.com/Abdullah-AlAttar/anltk/issues",
        "Homepage": "https://github.com/Abdullah-AlAttar/anltk",
        "Source": "https://github.com/Abdullah-AlAttar/anltk"
    },
    "split_keywords": [
        "nlp",
        " arabic",
        " python",
        " arabic",
        " c++"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "6b1b63c6363a8937c0146349589d71e5c2344b8d81d97612f22625049835ef76",
                "md5": "a1e534326523bf8edf8ef8baf001f8d2",
                "sha256": "b1b2c7b01da6d6244a9fde5bb5642aadd454a3e0510d8a9bd03482af85fd379f"
            },
            "downloads": -1,
            "filename": "anltk-1.0.8-cp310-cp310-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "a1e534326523bf8edf8ef8baf001f8d2",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.7",
            "size": 251333,
            "upload_time": "2025-11-09T13:35:17",
            "upload_time_iso_8601": "2025-11-09T13:35:17.592742Z",
            "url": "https://files.pythonhosted.org/packages/6b/1b/63c6363a8937c0146349589d71e5c2344b8d81d97612f22625049835ef76/anltk-1.0.8-cp310-cp310-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "3ef782f0032f63e7c2d76a89cd62933ed2c418db35e73e596ac2fe83a82a5d03",
                "md5": "01e943368ef87db0d0399f7680193cca",
                "sha256": "5f6d6caa92ea8d2062719d13b2f515bef169b8f6a706fc38c47d00a42195a6a3"
            },
            "downloads": -1,
            "filename": "anltk-1.0.8-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "01e943368ef87db0d0399f7680193cca",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.7",
            "size": 274120,
            "upload_time": "2025-11-09T13:35:19",
            "upload_time_iso_8601": "2025-11-09T13:35:19.814374Z",
            "url": "https://files.pythonhosted.org/packages/3e/f7/82f0032f63e7c2d76a89cd62933ed2c418db35e73e596ac2fe83a82a5d03/anltk-1.0.8-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "e2f2c90c7fd8b1b6b25a9f9b7195cf3d0da11c590c0ba8e0608c604a97c9d8b1",
                "md5": "2f9b367ab042f12e6c6b9ccaada1cbaa",
                "sha256": "be502b1db75d96817572891bdde663ed6e26dafee9e77b5658b1a6deae46f6ba"
            },
            "downloads": -1,
            "filename": "anltk-1.0.8-cp310-cp310-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "2f9b367ab042f12e6c6b9ccaada1cbaa",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.7",
            "size": 1187164,
            "upload_time": "2025-11-09T13:35:21",
            "upload_time_iso_8601": "2025-11-09T13:35:21.722609Z",
            "url": "https://files.pythonhosted.org/packages/e2/f2/c90c7fd8b1b6b25a9f9b7195cf3d0da11c590c0ba8e0608c604a97c9d8b1/anltk-1.0.8-cp310-cp310-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "31ba3622e06617ff80df288880c689bb0dd8b59c70e514fcd736201313cf2865",
                "md5": "0e78c831b6d1ea99170d870c6d4d2999",
                "sha256": "6ed7ebb4c9b86251be69e58e3f2f35e27477ac6a8d5ba58f06e023ca2124f645"
            },
            "downloads": -1,
            "filename": "anltk-1.0.8-cp311-cp311-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "0e78c831b6d1ea99170d870c6d4d2999",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.7",
            "size": 252927,
            "upload_time": "2025-11-09T13:35:23",
            "upload_time_iso_8601": "2025-11-09T13:35:23.436714Z",
            "url": "https://files.pythonhosted.org/packages/31/ba/3622e06617ff80df288880c689bb0dd8b59c70e514fcd736201313cf2865/anltk-1.0.8-cp311-cp311-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "5adea744df5556caafcfd0079b2dfe02fbff0d109188d7e9c0762e8134bc3916",
                "md5": "bb878c170d7c6e25f2d1de50ff9c03f0",
                "sha256": "8385adfe365cdfd53b4808b9743a85ecbff56fdf614e52231b77d3ea3ff6b57c"
            },
            "downloads": -1,
            "filename": "anltk-1.0.8-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "bb878c170d7c6e25f2d1de50ff9c03f0",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.7",
            "size": 275594,
            "upload_time": "2025-11-09T13:35:25",
            "upload_time_iso_8601": "2025-11-09T13:35:25.292627Z",
            "url": "https://files.pythonhosted.org/packages/5a/de/a744df5556caafcfd0079b2dfe02fbff0d109188d7e9c0762e8134bc3916/anltk-1.0.8-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "5599600db229ce16cc99e090b6c575ccd80617985921e7bad427b5bacd1d6b07",
                "md5": "1a531ccde4d7e43bb013788ba4b9bfa4",
                "sha256": "0bf05c32fda9b8ef72fecec6de483e34eab934f593792601a4813fc759c5a0f8"
            },
            "downloads": -1,
            "filename": "anltk-1.0.8-cp311-cp311-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "1a531ccde4d7e43bb013788ba4b9bfa4",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.7",
            "size": 1188517,
            "upload_time": "2025-11-09T13:35:27",
            "upload_time_iso_8601": "2025-11-09T13:35:27.115253Z",
            "url": "https://files.pythonhosted.org/packages/55/99/600db229ce16cc99e090b6c575ccd80617985921e7bad427b5bacd1d6b07/anltk-1.0.8-cp311-cp311-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "3f9e01c9f3b6e6dd204c1d8d4815c591599badc0a82a606f3b725f3647e54bb4",
                "md5": "c21da18561e65407ee6e888e95be7977",
                "sha256": "39743e8cff0823d856fcb9b5255fa0dcffed9c4eff91e507bc63fd16dc5a0050"
            },
            "downloads": -1,
            "filename": "anltk-1.0.8-cp312-cp312-macosx_10_13_x86_64.whl",
            "has_sig": false,
            "md5_digest": "c21da18561e65407ee6e888e95be7977",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.7",
            "size": 257751,
            "upload_time": "2025-11-09T13:35:28",
            "upload_time_iso_8601": "2025-11-09T13:35:28.877992Z",
            "url": "https://files.pythonhosted.org/packages/3f/9e/01c9f3b6e6dd204c1d8d4815c591599badc0a82a606f3b725f3647e54bb4/anltk-1.0.8-cp312-cp312-macosx_10_13_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "8af8c4a66ea8d38df96d0aa0ca9d71982079bcddcb0b9fa3bdd88190f6f6a6a9",
                "md5": "340dae81905fb3c699ee29af2ade8b4e",
                "sha256": "6ebf6b45d8c435c91cf4d9c3851e89cf2c14827d14a72e58fca4a1cecb4284c5"
            },
            "downloads": -1,
            "filename": "anltk-1.0.8-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "340dae81905fb3c699ee29af2ade8b4e",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.7",
            "size": 276956,
            "upload_time": "2025-11-09T13:35:30",
            "upload_time_iso_8601": "2025-11-09T13:35:30.274892Z",
            "url": "https://files.pythonhosted.org/packages/8a/f8/c4a66ea8d38df96d0aa0ca9d71982079bcddcb0b9fa3bdd88190f6f6a6a9/anltk-1.0.8-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "cb888489baf35a6474ea4755927b0633432f26cb7fe779ba07f4607fb36426c5",
                "md5": "19b09d022496c8e50ba3b67c61c9a192",
                "sha256": "f02fb704956a70dcfac9cb2ed23fa0569c0e4db163e5c2b86e78ee427dfd3b75"
            },
            "downloads": -1,
            "filename": "anltk-1.0.8-cp312-cp312-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "19b09d022496c8e50ba3b67c61c9a192",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.7",
            "size": 1189525,
            "upload_time": "2025-11-09T13:35:32",
            "upload_time_iso_8601": "2025-11-09T13:35:32.137927Z",
            "url": "https://files.pythonhosted.org/packages/cb/88/8489baf35a6474ea4755927b0633432f26cb7fe779ba07f4607fb36426c5/anltk-1.0.8-cp312-cp312-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "6895f4b2b72599f4d5f8c76ca3713b39334804091d704d5d87dc51fd69a35888",
                "md5": "b3e63d9fd0f9bbb76fbfa35d024d7d6a",
                "sha256": "29a7d69305c2252a2442e644a85e212e0aa21326a81b50ec4c8d374f65ca6fc2"
            },
            "downloads": -1,
            "filename": "anltk-1.0.8-cp313-cp313-macosx_10_13_x86_64.whl",
            "has_sig": false,
            "md5_digest": "b3e63d9fd0f9bbb76fbfa35d024d7d6a",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.7",
            "size": 257847,
            "upload_time": "2025-11-09T13:35:33",
            "upload_time_iso_8601": "2025-11-09T13:35:33.927165Z",
            "url": "https://files.pythonhosted.org/packages/68/95/f4b2b72599f4d5f8c76ca3713b39334804091d704d5d87dc51fd69a35888/anltk-1.0.8-cp313-cp313-macosx_10_13_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "b3fe6ada7265c094d85d1779c17e8fb389bac30f989c4992e217397833975b9e",
                "md5": "0bb31110d95331373a887b652a6bebc4",
                "sha256": "c8885a2348b18bb8cfa834d6b77f054ebb9d9a771ea7393793d950b8d3a6e35c"
            },
            "downloads": -1,
            "filename": "anltk-1.0.8-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "0bb31110d95331373a887b652a6bebc4",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.7",
            "size": 276472,
            "upload_time": "2025-11-09T13:35:35",
            "upload_time_iso_8601": "2025-11-09T13:35:35.124877Z",
            "url": "https://files.pythonhosted.org/packages/b3/fe/6ada7265c094d85d1779c17e8fb389bac30f989c4992e217397833975b9e/anltk-1.0.8-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "99d0ae3bbb5fdfaa3a2149b92409b151496c4e46803d92cfb6ea0c28c39654e0",
                "md5": "29b466105370cb4fb312f91c18b0c7fb",
                "sha256": "4c7e5f68ba5ad2bb1e99e63c6506faf2145ed52f2296d7a26d859daab633ee55"
            },
            "downloads": -1,
            "filename": "anltk-1.0.8-cp313-cp313-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "29b466105370cb4fb312f91c18b0c7fb",
            "packagetype": "bdist_wheel",
            "python_version": "cp313",
            "requires_python": ">=3.7",
            "size": 1189375,
            "upload_time": "2025-11-09T13:35:36",
            "upload_time_iso_8601": "2025-11-09T13:35:36.939223Z",
            "url": "https://files.pythonhosted.org/packages/99/d0/ae3bbb5fdfaa3a2149b92409b151496c4e46803d92cfb6ea0c28c39654e0/anltk-1.0.8-cp313-cp313-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "01743521736f6ae38bb7e1309c1046a917148f2d364fcac9fa315b95d721d4a5",
                "md5": "8b03f76d3429dd5f745020a33bd6d838",
                "sha256": "55072bd48f9e4230e246d80c46b5768bd28e4c611ea7823a2f937a8d8e27d956"
            },
            "downloads": -1,
            "filename": "anltk-1.0.8-cp314-cp314-macosx_10_15_x86_64.whl",
            "has_sig": false,
            "md5_digest": "8b03f76d3429dd5f745020a33bd6d838",
            "packagetype": "bdist_wheel",
            "python_version": "cp314",
            "requires_python": ">=3.7",
            "size": 256682,
            "upload_time": "2025-11-09T13:35:38",
            "upload_time_iso_8601": "2025-11-09T13:35:38.340816Z",
            "url": "https://files.pythonhosted.org/packages/01/74/3521736f6ae38bb7e1309c1046a917148f2d364fcac9fa315b95d721d4a5/anltk-1.0.8-cp314-cp314-macosx_10_15_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "cf92960f7ab0575fc206e384fc5c48d5a60d8c78c76c3f1137f9c6d43f67060d",
                "md5": "d50dc0477d9f7bf2fdf32c367440b680",
                "sha256": "a919b1b4ef0815b04c01e9f85631d6d52091c923c215810be2734529b614701f"
            },
            "downloads": -1,
            "filename": "anltk-1.0.8-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "d50dc0477d9f7bf2fdf32c367440b680",
            "packagetype": "bdist_wheel",
            "python_version": "cp314",
            "requires_python": ">=3.7",
            "size": 276986,
            "upload_time": "2025-11-09T13:35:40",
            "upload_time_iso_8601": "2025-11-09T13:35:40.124624Z",
            "url": "https://files.pythonhosted.org/packages/cf/92/960f7ab0575fc206e384fc5c48d5a60d8c78c76c3f1137f9c6d43f67060d/anltk-1.0.8-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "ab718953baebb8a03a334a6b36e0bb8f24c8befeacadcfb1d6f92770b410da87",
                "md5": "04329b63c447dcd46b9e70d3b35b7dbc",
                "sha256": "661563b6096fd085afbed55fca86a6562479c3f56e3deb2bbd8e4a08c602ab49"
            },
            "downloads": -1,
            "filename": "anltk-1.0.8-cp314-cp314-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "04329b63c447dcd46b9e70d3b35b7dbc",
            "packagetype": "bdist_wheel",
            "python_version": "cp314",
            "requires_python": ">=3.7",
            "size": 1235190,
            "upload_time": "2025-11-09T13:35:41",
            "upload_time_iso_8601": "2025-11-09T13:35:41.948155Z",
            "url": "https://files.pythonhosted.org/packages/ab/71/8953baebb8a03a334a6b36e0bb8f24c8befeacadcfb1d6f92770b410da87/anltk-1.0.8-cp314-cp314-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "57455c52b8d3a0025ccfea70540ff84dbd671e1c94b027331203908f8a140417",
                "md5": "d4c7d08e85ccea65609f565a32470b8b",
                "sha256": "9576300c09487572618855c95cef981d38a3f489cd9e10c5ba636b92f37f902c"
            },
            "downloads": -1,
            "filename": "anltk-1.0.8-cp38-cp38-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "d4c7d08e85ccea65609f565a32470b8b",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.7",
            "size": 251666,
            "upload_time": "2025-11-09T13:35:43",
            "upload_time_iso_8601": "2025-11-09T13:35:43.895590Z",
            "url": "https://files.pythonhosted.org/packages/57/45/5c52b8d3a0025ccfea70540ff84dbd671e1c94b027331203908f8a140417/anltk-1.0.8-cp38-cp38-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "ae509f3822c82d9e4e1ef7ffb523c5178e662013d833eaa734e3be2e8e352abb",
                "md5": "857e9d2d4ed2a7117030af6685c46a5a",
                "sha256": "36929c2637f938a81285d790bba901a62ff469b1eca61cd31a527b91a5c62329"
            },
            "downloads": -1,
            "filename": "anltk-1.0.8-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "857e9d2d4ed2a7117030af6685c46a5a",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.7",
            "size": 274938,
            "upload_time": "2025-11-09T13:35:45",
            "upload_time_iso_8601": "2025-11-09T13:35:45.073203Z",
            "url": "https://files.pythonhosted.org/packages/ae/50/9f3822c82d9e4e1ef7ffb523c5178e662013d833eaa734e3be2e8e352abb/anltk-1.0.8-cp38-cp38-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "078c814929096092ca44559de998b31f006936cb0fc6a51da8a6cd4b663ace47",
                "md5": "1bdb488300838269d8d567dcce82b4b0",
                "sha256": "cc2557ca82ae0792c5949ebb4c0bb6b3ce0de1951f1e089654fd44bffc09d830"
            },
            "downloads": -1,
            "filename": "anltk-1.0.8-cp38-cp38-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "1bdb488300838269d8d567dcce82b4b0",
            "packagetype": "bdist_wheel",
            "python_version": "cp38",
            "requires_python": ">=3.7",
            "size": 1188204,
            "upload_time": "2025-11-09T13:35:46",
            "upload_time_iso_8601": "2025-11-09T13:35:46.713307Z",
            "url": "https://files.pythonhosted.org/packages/07/8c/814929096092ca44559de998b31f006936cb0fc6a51da8a6cd4b663ace47/anltk-1.0.8-cp38-cp38-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "965b8349019a7687d2ec3e7f0cebb8f4b82fd8235c33f077c282dbd974796e22",
                "md5": "10ebd26cde2e6baced178c1c50f0e630",
                "sha256": "570bd76078c6c059eb52be3f76864982d2baabfbed0ac030a7c1ccfdef160eac"
            },
            "downloads": -1,
            "filename": "anltk-1.0.8-cp39-cp39-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "10ebd26cde2e6baced178c1c50f0e630",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.7",
            "size": 251546,
            "upload_time": "2025-11-09T13:35:48",
            "upload_time_iso_8601": "2025-11-09T13:35:48.092795Z",
            "url": "https://files.pythonhosted.org/packages/96/5b/8349019a7687d2ec3e7f0cebb8f4b82fd8235c33f077c282dbd974796e22/anltk-1.0.8-cp39-cp39-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "4689ed747557ca08b8ad9b9ac4e1e09d5f7c8804829b061882e14e3f33c5d844",
                "md5": "cf5f19e70b094e969c64c7ac4a00241c",
                "sha256": "7087a0847fc77c2db8cea95f93fb72b245da7fb2caf4257dd271ae27d93c187e"
            },
            "downloads": -1,
            "filename": "anltk-1.0.8-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "has_sig": false,
            "md5_digest": "cf5f19e70b094e969c64c7ac4a00241c",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.7",
            "size": 274151,
            "upload_time": "2025-11-09T13:35:49",
            "upload_time_iso_8601": "2025-11-09T13:35:49.365692Z",
            "url": "https://files.pythonhosted.org/packages/46/89/ed747557ca08b8ad9b9ac4e1e09d5f7c8804829b061882e14e3f33c5d844/anltk-1.0.8-cp39-cp39-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "7a4676908bce51a63ec8318cdd1cc3537237dde3e4c5eabb9bab89ca5b751d0c",
                "md5": "51a566a70a167bdb05d54df73fcb2631",
                "sha256": "db715c27aa99d190f9457f4f3dac89a439f97751e90936de1b5b30fcf6a94c1d"
            },
            "downloads": -1,
            "filename": "anltk-1.0.8-cp39-cp39-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "51a566a70a167bdb05d54df73fcb2631",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.7",
            "size": 1188372,
            "upload_time": "2025-11-09T13:35:51",
            "upload_time_iso_8601": "2025-11-09T13:35:51.045116Z",
            "url": "https://files.pythonhosted.org/packages/7a/46/76908bce51a63ec8318cdd1cc3537237dde3e4c5eabb9bab89ca5b751d0c/anltk-1.0.8-cp39-cp39-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-11-09 13:35:17",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "Abdullah-AlAttar",
    "github_project": "anltk",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "pybind11",
            "specs": [
                [
                    "==",
                    "2.9.2"
                ]
            ]
        }
    ],
    "lcname": "anltk"
}
        
Elapsed time: 4.49732s