Name | fabricatio JSON |
Version |
0.19.8
JSON |
| download |
home_page | None |
Summary | A LLM multi-agent framework. |
upload_time | 2025-09-07 04:38:41 |
maintainer | None |
docs_url | None |
author | None |
requires_python | <3.14,>=3.12 |
license | None |
keywords |
ai
agents
multi-agent
llm
pyo3
|
VCS |
 |
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
|
<p align="center">
<picture>
<img src="./assets/band.png" width="80%" alt="Fabricatio Logo" loading="lazy">
</picture>
</p>
<p align="center">
<a href="LICENSE">
<img src="https://img.shields.io/badge/license-MIT-blue.svg" alt="MIT License">
</a>
<a href="https://pypi.org/project/fabricatio/">
<img src="https://img.shields.io/pypi/pyversions/fabricatio" alt="Python Versions">
</a>
<a href="https://pypi.org/project/fabricatio/">
<img src="https://img.shields.io/pypi/v/fabricatio" alt="PyPI Version">
</a>
<a href="https://deepwiki.com/Whth/fabricatio">
<img src="https://deepwiki.com/badge.svg" alt="Ask DeepWiki">
</a>
<a href="https://pepy.tech/projects/fabricatio">
<img src="https://static.pepy.tech/badge/fabricatio/week" alt="PyPI Downloads (Week)">
</a>
<a href="https://pepy.tech/projects/fabricatio">
<img src="https://static.pepy.tech/badge/fabricatio" alt="PyPI Downloads">
</a>
<a href="https://github.com/PyO3/pyo3">
<img src="https://img.shields.io/badge/bindings-pyo3-green" alt="Bindings: PyO3">
</a>
<a href="https://github.com/BerriAI/litellm">
<img src="https://img.shields.io/badge/Powered%20by-LiteLLM-blue" alt="Powered by LiteLLM">
</a>
<a href="https://github.com/astral-sh/uv">
<img src="https://img.shields.io/badge/built%20with-uv%20%2B%20maturin-orange" alt="Build Tool: uv + maturin">
</a>
</p>
<p align="center">
<a href="https://github.com/Whth/fabricatio/actions/workflows/build-package.yaml">
<img src="https://github.com/Whth/fabricatio/actions/workflows/build-package.yaml/badge.svg" alt="Build Package">
</a>
<a href="https://github.com/Whth/fabricatio/actions/workflows/ruff.yaml">
<img src="https://github.com/Whth/fabricatio/actions/workflows/ruff.yaml/badge.svg" alt="Ruff Lint">
</a>
<a href="https://github.com/Whth/fabricatio/actions/workflows/tests.yaml">
<img src="https://github.com/Whth/fabricatio/actions/workflows/tests.yaml/badge.svg" alt="Tests">
</a>
<a href="https://coveralls.io/github/Whth/fabricatio?branch=master">
<img src="https://coveralls.io/repos/github/Whth/fabricatio/badge.svg?branch=master" alt="Coverage Status">
</a>
<a href="https://fabricatio.readthedocs.io/en/latest/?badge=fabricatio">
<img src="https://readthedocs.org/projects/fabricatio/badge/?version=latest" alt="Documentation Status">
</a>
<a href="https://github.com/Whth/fabricatio/issues">
<img src="https://img.shields.io/github/issues/Whth/fabricatio" alt="GitHub Issues">
</a>
<a href="https://github.com/Whth/fabricatio/pulls">
<img src="https://img.shields.io/github/issues-pr/Whth/fabricatio" alt="GitHub Pull Requests">
</a>
<a href="https://github.com/Whth/fabricatio/stargazers">
<img src="https://img.shields.io/github/stars/Whth/fabricatio" alt="GitHub Stars">
</a>
</p>
---
## Overview
Fabricatio is a streamlined Python library for building LLM applications using an event-based agent structure. It
leverages Rust for performance-critical tasks, Handlebars for templating, and PyO3 for Python bindings.
## Features
- **Event-Driven Architecture**: Robust task management through an EventEmitter pattern.
- **LLM Integration & Templating**: Seamlessly interact with large language models and dynamic content generation.
- **Async & Extensible**: Fully asynchronous execution with easy extension via custom actions and workflows.
## Installation
```bash
# install fabricatio with full capabilities.
pip install fabricatio[full]
# or with uv
uv add fabricatio[full]
# install fabricatio with only rag and rule capabilities.
pip install fabricatio[rag,rule]
# or with uv
uv add fabricatio[rag,rule]
```
You can download the templates from the github release manually and extract them to the work directory.
```bash
curl -L https://github.com/Whth/fabricatio/releases/download/v0.19.1/templates.tar.gz | tar -xz
```
Or you can use the cli `tdown` bundled with `fabricatio` to achieve the same result.
```bash
tdown download --verbose -o ./
```
> Note: `fabricatio` performs template discovery across multiple sources with filename-based identification. Template resolution follows a priority hierarchy where working directory templates override templates located in `<ROAMING>/fabricatio/templates`.
## Usage
### Basic Example
```python
"""Example of a simple hello world program using fabricatio."""
from typing import Any
# Import necessary classes from the namespace package.
from fabricatio import Action, Event, Role, Task, WorkFlow, logger
# Create an action.
class Hello(Action):
"""Action that says hello."""
output_key: str = "task_output"
async def _execute(self, **_) -> Any:
ret = "Hello fabricatio!"
logger.info("executing talk action")
return ret
# Create the role and register the workflow.
(Role()
.register_workflow(Event.quick_instantiate("talk"), WorkFlow(name="talk", steps=(Hello,)))
.dispatch())
# Make a task and delegate it to the workflow registered above.
assert Task(name="say hello").delegate_blocking("talk") == "Hello fabricatio!"
```
### Examples
For various usage scenarios, refer to the following examples:
- Simple Chat
- Retrieval-Augmented Generation (RAG)
- Article Extraction
- Propose Task
- Code Review
- Write Outline
_(For full example details, see [Examples](./examples))_
## Configuration
Fabricatio supports flexible configuration through multiple sources, with the following priority order:
`Call Arguments` > `./.env` > `Environment Variables` > `./fabricatio.toml` > `./pyproject.toml` > `<ROMANING>/fabricatio/fabricatio.toml` > `Builtin Defaults`.
Below is a unified view of the same configuration expressed in different formats:
### Environment variables or dotenv file
```dotenv
FABRICATIO_LLM__API_ENDPOINT=https://api.openai.com
FABRICATIO_LLM__API_KEY=your_openai_api_key
FABRICATIO_LLM__TIMEOUT=300
FABRICATIO_LLM__MAX_RETRIES=3
FABRICATIO_LLM__MODEL=openai/gpt-3.5-turbo
FABRICATIO_LLM__TEMPERATURE=1.0
FABRICATIO_LLM__TOP_P=0.35
FABRICATIO_LLM__GENERATION_COUNT=1
FABRICATIO_LLM__STREAM=false
FABRICATIO_LLM__MAX_TOKENS=8192
FABRICATIO_DEBUG__LOG_LEVEL=INFO
```
### `fabricatio.toml` file
```toml
[llm]
api_endpoint = "https://api.openai.com"
api_key = "your_openai_api_key"
timeout = 300
max_retries = 3
model = "openai/gpt-3.5-turbo"
temperature = 1.0
top_p = 0.35
generation_count = 1
stream = false
max_tokens = 8192
[debug]
log_level = "INFO"
```
### `pyproject.toml` file
```toml
[tool.fabricatio.llm]
api_endpoint = "https://api.openai.com"
api_key = "your_openai_api_key"
timeout = 300
max_retries = 3
model = "openai/gpt-3.5-turbo"
temperature = 1.0
top_p = 0.35
generation_count = 1
stream = false
max_tokens = 8192
[tool.fabricatio.debug]
log_level = "INFO"
```
## Contributing
We welcome contributions from everyone! Before contributing, please read our [Contributing Guide](CONTRIBUTING.md) and [Code of Conduct](CODE_OF_CONDUCT.md).
## License
Fabricatio is licensed under the MIT License. See [LICENSE](LICENSE) for details.
## Acknowledgments
Special thanks to the contributors and maintainers of:
- [PyO3](https://github.com/PyO3/pyo3)
- [Maturin](https://github.com/PyO3/maturin)
- [Handlebars.rs](https://github.com/sunng87/handlebars-rust)
- [LiteLLM](https://github.com/BerriAI/litellm)
Raw data
{
"_id": null,
"home_page": null,
"name": "fabricatio",
"maintainer": null,
"docs_url": null,
"requires_python": "<3.14,>=3.12",
"maintainer_email": null,
"keywords": "ai, agents, multi-agent, llm, pyo3",
"author": null,
"author_email": "Whth <zettainspector@foxmail.com>",
"download_url": null,
"platform": null,
"description": "<p align=\"center\"> \n<picture>\n <img src=\"./assets/band.png\" width=\"80%\" alt=\"Fabricatio Logo\" loading=\"lazy\">\n</picture>\n</p>\n\n\n\n<p align=\"center\">\n <a href=\"LICENSE\">\n <img src=\"https://img.shields.io/badge/license-MIT-blue.svg\" alt=\"MIT License\">\n </a>\n <a href=\"https://pypi.org/project/fabricatio/\">\n <img src=\"https://img.shields.io/pypi/pyversions/fabricatio\" alt=\"Python Versions\">\n </a>\n <a href=\"https://pypi.org/project/fabricatio/\">\n <img src=\"https://img.shields.io/pypi/v/fabricatio\" alt=\"PyPI Version\">\n </a>\n <a href=\"https://deepwiki.com/Whth/fabricatio\">\n <img src=\"https://deepwiki.com/badge.svg\" alt=\"Ask DeepWiki\">\n </a>\n <a href=\"https://pepy.tech/projects/fabricatio\">\n <img src=\"https://static.pepy.tech/badge/fabricatio/week\" alt=\"PyPI Downloads (Week)\">\n </a>\n <a href=\"https://pepy.tech/projects/fabricatio\">\n <img src=\"https://static.pepy.tech/badge/fabricatio\" alt=\"PyPI Downloads\">\n </a>\n <a href=\"https://github.com/PyO3/pyo3\">\n <img src=\"https://img.shields.io/badge/bindings-pyo3-green\" alt=\"Bindings: PyO3\">\n </a>\n <a href=\"https://github.com/BerriAI/litellm\">\n <img src=\"https://img.shields.io/badge/Powered%20by-LiteLLM-blue\" alt=\"Powered by LiteLLM\">\n </a>\n <a href=\"https://github.com/astral-sh/uv\">\n <img src=\"https://img.shields.io/badge/built%20with-uv%20%2B%20maturin-orange\" alt=\"Build Tool: uv + maturin\">\n </a>\n\n</p>\n\n\n<p align=\"center\">\n\n\n <a href=\"https://github.com/Whth/fabricatio/actions/workflows/build-package.yaml\">\n <img src=\"https://github.com/Whth/fabricatio/actions/workflows/build-package.yaml/badge.svg\" alt=\"Build Package\">\n </a>\n <a href=\"https://github.com/Whth/fabricatio/actions/workflows/ruff.yaml\">\n <img src=\"https://github.com/Whth/fabricatio/actions/workflows/ruff.yaml/badge.svg\" alt=\"Ruff Lint\">\n </a>\n <a href=\"https://github.com/Whth/fabricatio/actions/workflows/tests.yaml\">\n <img src=\"https://github.com/Whth/fabricatio/actions/workflows/tests.yaml/badge.svg\" alt=\"Tests\">\n </a>\n <a href=\"https://coveralls.io/github/Whth/fabricatio?branch=master\">\n <img src=\"https://coveralls.io/repos/github/Whth/fabricatio/badge.svg?branch=master\" alt=\"Coverage Status\">\n </a>\n <a href=\"https://fabricatio.readthedocs.io/en/latest/?badge=fabricatio\">\n <img src=\"https://readthedocs.org/projects/fabricatio/badge/?version=latest\" alt=\"Documentation Status\">\n </a>\n <a href=\"https://github.com/Whth/fabricatio/issues\">\n <img src=\"https://img.shields.io/github/issues/Whth/fabricatio\" alt=\"GitHub Issues\">\n </a>\n <a href=\"https://github.com/Whth/fabricatio/pulls\">\n <img src=\"https://img.shields.io/github/issues-pr/Whth/fabricatio\" alt=\"GitHub Pull Requests\">\n </a>\n <a href=\"https://github.com/Whth/fabricatio/stargazers\">\n <img src=\"https://img.shields.io/github/stars/Whth/fabricatio\" alt=\"GitHub Stars\">\n </a>\n</p>\n\n\n\n\n---\n\n## Overview\n\nFabricatio is a streamlined Python library for building LLM applications using an event-based agent structure. It\nleverages Rust for performance-critical tasks, Handlebars for templating, and PyO3 for Python bindings.\n\n## Features\n\n- **Event-Driven Architecture**: Robust task management through an EventEmitter pattern.\n- **LLM Integration & Templating**: Seamlessly interact with large language models and dynamic content generation.\n- **Async & Extensible**: Fully asynchronous execution with easy extension via custom actions and workflows.\n\n## Installation\n\n```bash\n# install fabricatio with full capabilities.\npip install fabricatio[full]\n\n# or with uv\n\nuv add fabricatio[full]\n\n\n# install fabricatio with only rag and rule capabilities.\npip install fabricatio[rag,rule]\n\n# or with uv\n\nuv add fabricatio[rag,rule]\n\n```\n\nYou can download the templates from the github release manually and extract them to the work directory.\n```bash\ncurl -L https://github.com/Whth/fabricatio/releases/download/v0.19.1/templates.tar.gz | tar -xz\n```\nOr you can use the cli `tdown` bundled with `fabricatio` to achieve the same result.\n\n```bash\ntdown download --verbose -o ./\n```\n> Note: `fabricatio` performs template discovery across multiple sources with filename-based identification. Template resolution follows a priority hierarchy where working directory templates override templates located in `<ROAMING>/fabricatio/templates`.\n\n\n\n## Usage\n\n### Basic Example\n\n```python\n\"\"\"Example of a simple hello world program using fabricatio.\"\"\"\n\nfrom typing import Any\n\n# Import necessary classes from the namespace package.\nfrom fabricatio import Action, Event, Role, Task, WorkFlow, logger\n\n# Create an action.\nclass Hello(Action):\n \"\"\"Action that says hello.\"\"\"\n \n output_key: str = \"task_output\"\n\n async def _execute(self, **_) -> Any:\n ret = \"Hello fabricatio!\"\n logger.info(\"executing talk action\")\n return ret\n\n\n# Create the role and register the workflow.\n(Role()\n .register_workflow(Event.quick_instantiate(\"talk\"), WorkFlow(name=\"talk\", steps=(Hello,)))\n .dispatch())\n\n\n# Make a task and delegate it to the workflow registered above.\nassert Task(name=\"say hello\").delegate_blocking(\"talk\") == \"Hello fabricatio!\"\n\n```\n\n### Examples\n\nFor various usage scenarios, refer to the following examples:\n\n- Simple Chat\n- Retrieval-Augmented Generation (RAG)\n- Article Extraction\n- Propose Task\n- Code Review\n- Write Outline\n\n_(For full example details, see [Examples](./examples))_\n\n## Configuration\n\nFabricatio supports flexible configuration through multiple sources, with the following priority order:\n`Call Arguments` > `./.env` > `Environment Variables` > `./fabricatio.toml` > `./pyproject.toml` > `<ROMANING>/fabricatio/fabricatio.toml` > `Builtin Defaults`.\n\nBelow is a unified view of the same configuration expressed in different formats:\n\n### Environment variables or dotenv file\n```dotenv\nFABRICATIO_LLM__API_ENDPOINT=https://api.openai.com\nFABRICATIO_LLM__API_KEY=your_openai_api_key\nFABRICATIO_LLM__TIMEOUT=300\nFABRICATIO_LLM__MAX_RETRIES=3\nFABRICATIO_LLM__MODEL=openai/gpt-3.5-turbo\nFABRICATIO_LLM__TEMPERATURE=1.0\nFABRICATIO_LLM__TOP_P=0.35\nFABRICATIO_LLM__GENERATION_COUNT=1\nFABRICATIO_LLM__STREAM=false\nFABRICATIO_LLM__MAX_TOKENS=8192\nFABRICATIO_DEBUG__LOG_LEVEL=INFO\n```\n\n### `fabricatio.toml` file\n```toml\n[llm]\napi_endpoint = \"https://api.openai.com\"\napi_key = \"your_openai_api_key\"\ntimeout = 300\nmax_retries = 3\nmodel = \"openai/gpt-3.5-turbo\"\ntemperature = 1.0\ntop_p = 0.35\ngeneration_count = 1\nstream = false\nmax_tokens = 8192\n\n[debug]\nlog_level = \"INFO\"\n```\n\n### `pyproject.toml` file\n```toml\n[tool.fabricatio.llm]\napi_endpoint = \"https://api.openai.com\"\napi_key = \"your_openai_api_key\"\ntimeout = 300\nmax_retries = 3\nmodel = \"openai/gpt-3.5-turbo\"\ntemperature = 1.0\ntop_p = 0.35\ngeneration_count = 1\nstream = false\nmax_tokens = 8192\n\n[tool.fabricatio.debug]\nlog_level = \"INFO\"\n```\n\n## Contributing\n\nWe welcome contributions from everyone! Before contributing, please read our [Contributing Guide](CONTRIBUTING.md) and [Code of Conduct](CODE_OF_CONDUCT.md).\n\n## License\n\nFabricatio is licensed under the MIT License. See [LICENSE](LICENSE) for details.\n\n## Acknowledgments\n\nSpecial thanks to the contributors and maintainers of:\n\n- [PyO3](https://github.com/PyO3/pyo3)\n- [Maturin](https://github.com/PyO3/maturin)\n- [Handlebars.rs](https://github.com/sunng87/handlebars-rust)\n- [LiteLLM](https://github.com/BerriAI/litellm)\n\n",
"bugtrack_url": null,
"license": null,
"summary": "A LLM multi-agent framework.",
"version": "0.19.8",
"project_urls": {
"Homepage": "https://github.com/Whth/fabricatio",
"Issues": "https://github.com/Whth/fabricatio/issues",
"Repository": "https://github.com/Whth/fabricatio"
},
"split_keywords": [
"ai",
" agents",
" multi-agent",
" llm",
" pyo3"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "2ff13b9ae2414d6e3a17c1655a7b42cd173014270d022005643c7fbeaefc8142",
"md5": "6d7752ee7a6019b95292d1d1e1878eb8",
"sha256": "77e8fe51f184201954485e784a75d6ecaf295a64bc75e84943016386c336e72f"
},
"downloads": -1,
"filename": "fabricatio-0.19.8-cp312-cp312-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "6d7752ee7a6019b95292d1d1e1878eb8",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": "<3.14,>=3.12",
"size": 1036527,
"upload_time": "2025-09-07T04:38:41",
"upload_time_iso_8601": "2025-09-07T04:38:41.251411Z",
"url": "https://files.pythonhosted.org/packages/2f/f1/3b9ae2414d6e3a17c1655a7b42cd173014270d022005643c7fbeaefc8142/fabricatio-0.19.8-cp312-cp312-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "6e4927339ca91dc8e4cbc7caea417d280c98c1190048f97d165489fb941ee1fb",
"md5": "01f2273813085c0fc57d14fcf0624ac8",
"sha256": "0c56a600ca1952d63d078e91a24849caaa12cdb2ec0dbbee13f0147461657bdb"
},
"downloads": -1,
"filename": "fabricatio-0.19.8-cp312-cp312-manylinux_2_34_aarch64.whl",
"has_sig": false,
"md5_digest": "01f2273813085c0fc57d14fcf0624ac8",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": "<3.14,>=3.12",
"size": 1096719,
"upload_time": "2025-09-07T04:37:47",
"upload_time_iso_8601": "2025-09-07T04:37:47.163919Z",
"url": "https://files.pythonhosted.org/packages/6e/49/27339ca91dc8e4cbc7caea417d280c98c1190048f97d165489fb941ee1fb/fabricatio-0.19.8-cp312-cp312-manylinux_2_34_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "caa039b059d01c1e5de86dfce4c349f75e4f7452b2209c9d98a1c71dfab83959",
"md5": "04b901527386e51d89d971d13a2bc18e",
"sha256": "c96095754d17d4feee2e1655df62f806997b05e2651f12a5adef1708ca84c204"
},
"downloads": -1,
"filename": "fabricatio-0.19.8-cp312-cp312-manylinux_2_34_x86_64.whl",
"has_sig": false,
"md5_digest": "04b901527386e51d89d971d13a2bc18e",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": "<3.14,>=3.12",
"size": 1162538,
"upload_time": "2025-09-07T04:38:14",
"upload_time_iso_8601": "2025-09-07T04:38:14.065401Z",
"url": "https://files.pythonhosted.org/packages/ca/a0/39b059d01c1e5de86dfce4c349f75e4f7452b2209c9d98a1c71dfab83959/fabricatio-0.19.8-cp312-cp312-manylinux_2_34_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "c22711084ce3264a2b8a0e04501c780668ee39e46f07607fa6dc3d30d3d07e23",
"md5": "6b87cc2c4d7b0fc09bca0106d15c0f57",
"sha256": "c7726e8f121c43605f2851d9471cd9eba226ff931db5eeb633220d3f3e6654a0"
},
"downloads": -1,
"filename": "fabricatio-0.19.8-cp312-cp312-win_amd64.whl",
"has_sig": false,
"md5_digest": "6b87cc2c4d7b0fc09bca0106d15c0f57",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": "<3.14,>=3.12",
"size": 945021,
"upload_time": "2025-09-07T04:44:00",
"upload_time_iso_8601": "2025-09-07T04:44:00.875575Z",
"url": "https://files.pythonhosted.org/packages/c2/27/11084ce3264a2b8a0e04501c780668ee39e46f07607fa6dc3d30d3d07e23/fabricatio-0.19.8-cp312-cp312-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "ac861c756bad62b3d638148a2ab740cb47f96e32a046d4dc1f687850a7312b75",
"md5": "5342b53a227cb60d28733f7d48d8e479",
"sha256": "3608f89a5fa9bcdb45defc371779467b01a6f024f8221eaf420cde836b1cc5c8"
},
"downloads": -1,
"filename": "fabricatio-0.19.8-cp313-cp313-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "5342b53a227cb60d28733f7d48d8e479",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": "<3.14,>=3.12",
"size": 1037258,
"upload_time": "2025-09-07T04:40:10",
"upload_time_iso_8601": "2025-09-07T04:40:10.373197Z",
"url": "https://files.pythonhosted.org/packages/ac/86/1c756bad62b3d638148a2ab740cb47f96e32a046d4dc1f687850a7312b75/fabricatio-0.19.8-cp313-cp313-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "0525a0890bcb43ac2ebf9dba12f48b78131c1c40c4f0a3a7974ac12ad5027821",
"md5": "36dd0b4457118f95ff4b3ca0927a3351",
"sha256": "8ec015770d520ec24647a3c58dc3f432cdbe9f2013561e0435cae526ffda1007"
},
"downloads": -1,
"filename": "fabricatio-0.19.8-cp313-cp313-manylinux_2_34_aarch64.whl",
"has_sig": false,
"md5_digest": "36dd0b4457118f95ff4b3ca0927a3351",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": "<3.14,>=3.12",
"size": 1097139,
"upload_time": "2025-09-07T04:38:12",
"upload_time_iso_8601": "2025-09-07T04:38:12.488714Z",
"url": "https://files.pythonhosted.org/packages/05/25/a0890bcb43ac2ebf9dba12f48b78131c1c40c4f0a3a7974ac12ad5027821/fabricatio-0.19.8-cp313-cp313-manylinux_2_34_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "d19e7af1af9cdb7796af3344c08337cf47f67001a05c65a793eba8c033345482",
"md5": "9bc9b49c5348b8bcc7fe57aab1cb23a0",
"sha256": "a47cbba93f43872cee4287c0668d1edb7b5680e20f2361f399ae95a1b50927b2"
},
"downloads": -1,
"filename": "fabricatio-0.19.8-cp313-cp313-manylinux_2_34_x86_64.whl",
"has_sig": false,
"md5_digest": "9bc9b49c5348b8bcc7fe57aab1cb23a0",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": "<3.14,>=3.12",
"size": 1162452,
"upload_time": "2025-09-07T04:38:42",
"upload_time_iso_8601": "2025-09-07T04:38:42.042925Z",
"url": "https://files.pythonhosted.org/packages/d1/9e/7af1af9cdb7796af3344c08337cf47f67001a05c65a793eba8c033345482/fabricatio-0.19.8-cp313-cp313-manylinux_2_34_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "af0cd0458bbcd7f6f7bc47e998c1acaaea3b1153b8e305e18a8bf53438a43a87",
"md5": "32c59472f89076a1d769e67b2e9473e9",
"sha256": "e36d5dab37a4dbec2249e722a3c60503613dfb7ada6357e5911647cc35e23ebd"
},
"downloads": -1,
"filename": "fabricatio-0.19.8-cp313-cp313-win_amd64.whl",
"has_sig": false,
"md5_digest": "32c59472f89076a1d769e67b2e9473e9",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": "<3.14,>=3.12",
"size": 945702,
"upload_time": "2025-09-07T04:44:52",
"upload_time_iso_8601": "2025-09-07T04:44:52.582621Z",
"url": "https://files.pythonhosted.org/packages/af/0c/d0458bbcd7f6f7bc47e998c1acaaea3b1153b8e305e18a8bf53438a43a87/fabricatio-0.19.8-cp313-cp313-win_amd64.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-09-07 04:38:41",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Whth",
"github_project": "fabricatio",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"lcname": "fabricatio"
}