# Tarzi Library
This directory contains the core Tarzi library implementation in both Rust and Python.
## Structure
```
tarzi/
├── Cargo.toml # Rust package configuration
├── pyproject.toml # Python package configuration
├── README.md # This file
├── Makefile # Build and test commands
├── src/ # Rust source code
│ ├── lib.rs # Library entry point
│ ├── main.rs # Binary entry point
│ ├── config.rs # Configuration management
│ ├── error.rs # Error types
│ ├── constants.rs # Constants and defaults
│ ├── utils.rs # Utility functions
│ ├── converter.rs # Data conversion utilities
│ ├── python.rs # Python bindings
│ ├── search/ # Search engine implementations
│ └── fetcher/ # Web fetching implementations
└── python/ # Python package source
└── tarzi/ # Python module
├── __init__.py # Module initialization
└── __main__.py # CLI entry point
```
## Building
### Rust
```bash
# From tarzi subfolder
cargo build -p tarzi
cargo build --release -p tarzi
```
### Python
```bash
# From tarzi subfolder
maturin build --release
maturin develop --release
```
## Testing
### Rust
```bash
# From tarzi subfolder
cargo test -p tarzi
cargo test --test '*' --features test-helpers -p tarzi
```
### Python
```bash
# From tarzi subfolder
pytest tarzi/tests/python
```
## Development
This library is part of the main tarzi workspace. See the root README.md for complete development instructions.
Raw data
{
"_id": null,
"home_page": null,
"name": "tarzi",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": "xmingc <chenxm35@gmail.com>",
"keywords": "web-scraping, search-engine, ai-tools, rust, browser-automation",
"author": "xmingc <chenxm35@gmail.com>",
"author_email": "xmingc <chenxm35@gmail.com>",
"download_url": null,
"platform": null,
"description": "# Tarzi Library\n\nThis directory contains the core Tarzi library implementation in both Rust and Python.\n\n## Structure\n\n```\ntarzi/\n\u251c\u2500\u2500 Cargo.toml # Rust package configuration\n\u251c\u2500\u2500 pyproject.toml # Python package configuration\n\u251c\u2500\u2500 README.md # This file\n\u251c\u2500\u2500 Makefile # Build and test commands\n\u251c\u2500\u2500 src/ # Rust source code\n\u2502 \u251c\u2500\u2500 lib.rs # Library entry point\n\u2502 \u251c\u2500\u2500 main.rs # Binary entry point\n\u2502 \u251c\u2500\u2500 config.rs # Configuration management\n\u2502 \u251c\u2500\u2500 error.rs # Error types\n\u2502 \u251c\u2500\u2500 constants.rs # Constants and defaults\n\u2502 \u251c\u2500\u2500 utils.rs # Utility functions\n\u2502 \u251c\u2500\u2500 converter.rs # Data conversion utilities\n\u2502 \u251c\u2500\u2500 python.rs # Python bindings\n\u2502 \u251c\u2500\u2500 search/ # Search engine implementations\n\u2502 \u2514\u2500\u2500 fetcher/ # Web fetching implementations\n\u2514\u2500\u2500 python/ # Python package source\n \u2514\u2500\u2500 tarzi/ # Python module\n \u251c\u2500\u2500 __init__.py # Module initialization\n \u2514\u2500\u2500 __main__.py # CLI entry point\n```\n\n## Building\n\n### Rust\n```bash\n# From tarzi subfolder\ncargo build -p tarzi\ncargo build --release -p tarzi\n```\n\n### Python\n```bash\n# From tarzi subfolder\nmaturin build --release\nmaturin develop --release\n```\n\n## Testing\n\n### Rust\n```bash\n# From tarzi subfolder\ncargo test -p tarzi\ncargo test --test '*' --features test-helpers -p tarzi\n```\n\n### Python\n```bash\n# From tarzi subfolder\npytest tarzi/tests/python\n```\n\n## Development\n\nThis library is part of the main tarzi workspace. See the root README.md for complete development instructions. \n",
"bugtrack_url": null,
"license": "Apache-2.0",
"summary": "Rust-native lite search for AI applications",
"version": "0.0.15",
"project_urls": {
"Bug Tracker": "https://github.com/mirasurf/tarzi/issues",
"Documentation": "https://tarzi.readthedocs.io/",
"Homepage": "https://github.com/mirasurf/tarzi",
"Repository": "https://github.com/mirasurf/tarzi"
},
"split_keywords": [
"web-scraping",
" search-engine",
" ai-tools",
" rust",
" browser-automation"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "344dd664e4bbb16e448dfcb4e6f09ee99744f055306700645032402d38b17913",
"md5": "11ac4f376633d9218ee068d37993bc36",
"sha256": "8bec7b239924defa0de07543f39367198112941a6be8c6cc44446733f4bb3827"
},
"downloads": -1,
"filename": "tarzi-0.0.15-cp310-cp310-macosx_10_12_x86_64.whl",
"has_sig": false,
"md5_digest": "11ac4f376633d9218ee068d37993bc36",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.10",
"size": 4170166,
"upload_time": "2025-07-13T07:19:35",
"upload_time_iso_8601": "2025-07-13T07:19:35.574919Z",
"url": "https://files.pythonhosted.org/packages/34/4d/d664e4bbb16e448dfcb4e6f09ee99744f055306700645032402d38b17913/tarzi-0.0.15-cp310-cp310-macosx_10_12_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "77e5d243c2132de4f1a6631fea0e1c94e4dcd2b99b5c9579755b8090f1f347f7",
"md5": "c26b0bafe72c55b004cebca79bf75dc1",
"sha256": "255f56afe6f60321991addd90f5d3bff23454ae146cc6772a772b415ad6f3782"
},
"downloads": -1,
"filename": "tarzi-0.0.15-cp310-cp310-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "c26b0bafe72c55b004cebca79bf75dc1",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.10",
"size": 3996492,
"upload_time": "2025-07-13T07:19:37",
"upload_time_iso_8601": "2025-07-13T07:19:37.684247Z",
"url": "https://files.pythonhosted.org/packages/77/e5/d243c2132de4f1a6631fea0e1c94e4dcd2b99b5c9579755b8090f1f347f7/tarzi-0.0.15-cp310-cp310-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "6b59a3a45c18c31bfef05219c78ccc358f0638c843b5b51eb895bb8ba1a6a517",
"md5": "bced44719a97b68488340f4e7838e0f0",
"sha256": "b0ab9b5302b20c7b4f17c0bf5a3d1d4c180d904230fdf0bd74891430b477a654"
},
"downloads": -1,
"filename": "tarzi-0.0.15-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"has_sig": false,
"md5_digest": "bced44719a97b68488340f4e7838e0f0",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.10",
"size": 6170418,
"upload_time": "2025-07-13T07:19:39",
"upload_time_iso_8601": "2025-07-13T07:19:39.462503Z",
"url": "https://files.pythonhosted.org/packages/6b/59/a3a45c18c31bfef05219c78ccc358f0638c843b5b51eb895bb8ba1a6a517/tarzi-0.0.15-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "58fd53c1623b2123b24fbb75fee03023ee6ad40a91644ce8811bc242c7d4e458",
"md5": "01ecedfce2e9817c002c8b69686d35c2",
"sha256": "b66ef6b8702a3885b0369bc4d96794329303e6656a49e79b6d243f0a61f8bc76"
},
"downloads": -1,
"filename": "tarzi-0.0.15-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "01ecedfce2e9817c002c8b69686d35c2",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.10",
"size": 6727076,
"upload_time": "2025-07-13T07:19:40",
"upload_time_iso_8601": "2025-07-13T07:19:40.924447Z",
"url": "https://files.pythonhosted.org/packages/58/fd/53c1623b2123b24fbb75fee03023ee6ad40a91644ce8811bc242c7d4e458/tarzi-0.0.15-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "29b0f08911bfd32c59af9b5e9b40bbd4518717a821c05336c2623045cfb74c3b",
"md5": "39c31d56a7422b53300d48ab8133a79a",
"sha256": "e07a20ea2696c33cd78d22c77b8c0688873cf199ffebafec546eb6b823389fcb"
},
"downloads": -1,
"filename": "tarzi-0.0.15-cp311-cp311-macosx_10_12_x86_64.whl",
"has_sig": false,
"md5_digest": "39c31d56a7422b53300d48ab8133a79a",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.10",
"size": 4170375,
"upload_time": "2025-07-13T07:19:42",
"upload_time_iso_8601": "2025-07-13T07:19:42.672784Z",
"url": "https://files.pythonhosted.org/packages/29/b0/f08911bfd32c59af9b5e9b40bbd4518717a821c05336c2623045cfb74c3b/tarzi-0.0.15-cp311-cp311-macosx_10_12_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "e979c817b768307fa44becf9d4ee18d506f5bbb33bfa6a8c525a04450a232e78",
"md5": "8bd18e68b881efd40767fb57f6c21422",
"sha256": "a261001f30f7360da8ba7e1022df8d20c2dad4c003f7f0556c98c5eccd1abf42"
},
"downloads": -1,
"filename": "tarzi-0.0.15-cp311-cp311-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "8bd18e68b881efd40767fb57f6c21422",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.10",
"size": 3996440,
"upload_time": "2025-07-13T07:19:44",
"upload_time_iso_8601": "2025-07-13T07:19:44.537572Z",
"url": "https://files.pythonhosted.org/packages/e9/79/c817b768307fa44becf9d4ee18d506f5bbb33bfa6a8c525a04450a232e78/tarzi-0.0.15-cp311-cp311-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "119fc649302f1e4f964a8db9b5761c7dd4386ec50ac0826f8a341883012cb234",
"md5": "a935be3126328b0d3f1ae5c59f9feb2a",
"sha256": "f68ecf44b54bd2f63992d145a41a4525dbddc634a7becb36eb6ece3e1e1ff544"
},
"downloads": -1,
"filename": "tarzi-0.0.15-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"has_sig": false,
"md5_digest": "a935be3126328b0d3f1ae5c59f9feb2a",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.10",
"size": 6170604,
"upload_time": "2025-07-13T07:19:45",
"upload_time_iso_8601": "2025-07-13T07:19:45.987090Z",
"url": "https://files.pythonhosted.org/packages/11/9f/c649302f1e4f964a8db9b5761c7dd4386ec50ac0826f8a341883012cb234/tarzi-0.0.15-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "e7dd5c6fc30011ba1574d0563c1b12957ecbf8c678883128e1a8dd900b94e273",
"md5": "17d125c9deee64e07d098dc3c7513fd3",
"sha256": "672f5e66d2b7bb32c48076b4596cd2c01875e82b5cdaff26665c48ffc952b6a6"
},
"downloads": -1,
"filename": "tarzi-0.0.15-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "17d125c9deee64e07d098dc3c7513fd3",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.10",
"size": 6726811,
"upload_time": "2025-07-13T07:19:47",
"upload_time_iso_8601": "2025-07-13T07:19:47.925883Z",
"url": "https://files.pythonhosted.org/packages/e7/dd/5c6fc30011ba1574d0563c1b12957ecbf8c678883128e1a8dd900b94e273/tarzi-0.0.15-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "f3173d42823a021d6bc933daebe7d5d625811170cf61d6ea8da8396963f175fe",
"md5": "5e74712f514517781b47dd7bb534de32",
"sha256": "fff438981a98557adc6a99dce672e74621a30216ad5616b1b442365494a0ddd2"
},
"downloads": -1,
"filename": "tarzi-0.0.15-cp312-cp312-macosx_10_12_x86_64.whl",
"has_sig": false,
"md5_digest": "5e74712f514517781b47dd7bb534de32",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.10",
"size": 4169229,
"upload_time": "2025-07-13T07:19:49",
"upload_time_iso_8601": "2025-07-13T07:19:49.733789Z",
"url": "https://files.pythonhosted.org/packages/f3/17/3d42823a021d6bc933daebe7d5d625811170cf61d6ea8da8396963f175fe/tarzi-0.0.15-cp312-cp312-macosx_10_12_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "0ae6e8e5dd4b3babecdb3903e77cedf82f3ef363b99145f7f99878850b2fb549",
"md5": "25efef62e377ccb18d0ff9c3b889815d",
"sha256": "f970da846f465a56bf63396d2c7c058caf6ebc8a0d604a339397b07fca25c6a5"
},
"downloads": -1,
"filename": "tarzi-0.0.15-cp312-cp312-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "25efef62e377ccb18d0ff9c3b889815d",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.10",
"size": 3993282,
"upload_time": "2025-07-13T07:19:51",
"upload_time_iso_8601": "2025-07-13T07:19:51.533995Z",
"url": "https://files.pythonhosted.org/packages/0a/e6/e8e5dd4b3babecdb3903e77cedf82f3ef363b99145f7f99878850b2fb549/tarzi-0.0.15-cp312-cp312-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "b99679bf52ffcff5c1e7e696b66875d4470a7a756bb1ea4a92c9881ab2aef038",
"md5": "7a93c5b729209d7e84341184d49df709",
"sha256": "eadc16a1acce540bb57a5dc350b142aad65c050db58354537f088a43678ffe26"
},
"downloads": -1,
"filename": "tarzi-0.0.15-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"has_sig": false,
"md5_digest": "7a93c5b729209d7e84341184d49df709",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.10",
"size": 6170507,
"upload_time": "2025-07-13T07:19:52",
"upload_time_iso_8601": "2025-07-13T07:19:52.983057Z",
"url": "https://files.pythonhosted.org/packages/b9/96/79bf52ffcff5c1e7e696b66875d4470a7a756bb1ea4a92c9881ab2aef038/tarzi-0.0.15-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "bd8582ea04afb23ab76200370d29adbd0074157829e45f825d352b2cff63b4b9",
"md5": "8eb3c75ac01fd7e0078cb29d35d9fb61",
"sha256": "b080958c08e872bbd11f4c649212e14bb81ca01f8f9d80249ca9e8f45650cb60"
},
"downloads": -1,
"filename": "tarzi-0.0.15-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "8eb3c75ac01fd7e0078cb29d35d9fb61",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.10",
"size": 6728079,
"upload_time": "2025-07-13T07:19:54",
"upload_time_iso_8601": "2025-07-13T07:19:54.499033Z",
"url": "https://files.pythonhosted.org/packages/bd/85/82ea04afb23ab76200370d29adbd0074157829e45f825d352b2cff63b4b9/tarzi-0.0.15-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-13 07:19:35",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "mirasurf",
"github_project": "tarzi",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "tarzi"
}