Name | fabricatio JSON |
Version |
0.18.0
JSON |
| download |
home_page | None |
Summary | A LLM multi-agent framework. |
upload_time | 2025-07-23 13:49:10 |
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]
```
## Usage
### Basic Example
```python
"""Example of a simple hello world program using fabricatio."""
from typing import Any
from fabricatio import Action, Event, Role, Task, WorkFlow, logger
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
"""Main function."""
(Role()
.register_workflow(Event.quick_instantiate("talk"), WorkFlow(name="talk", steps=(Hello,)))
.dispatch())
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, please check our detailed documentation, 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\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\nfrom fabricatio import Action, Event, Role, Task, WorkFlow, logger\n\n\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 \"\"\"Main function.\"\"\"\n\n\n(Role()\n .register_workflow(Event.quick_instantiate(\"talk\"), WorkFlow(name=\"talk\", steps=(Hello,)))\n .dispatch())\n\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, please check our detailed documentation, 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.18.0",
"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": "61cbf88d9aa627e4d8e0d3e28548878adaeecc94bb4f9a1f7199d855b9b53d00",
"md5": "0a045cba40a0df44e6089d98464bfe7c",
"sha256": "21660aebc4854bf54b7c0b35ba067dac3324f356eec5255d5d63dd7cc87a6efe"
},
"downloads": -1,
"filename": "fabricatio-0.18.0-cp312-cp312-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "0a045cba40a0df44e6089d98464bfe7c",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": "<3.14,>=3.12",
"size": 1943002,
"upload_time": "2025-07-23T13:49:10",
"upload_time_iso_8601": "2025-07-23T13:49:10.269008Z",
"url": "https://files.pythonhosted.org/packages/61/cb/f88d9aa627e4d8e0d3e28548878adaeecc94bb4f9a1f7199d855b9b53d00/fabricatio-0.18.0-cp312-cp312-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "f066a67f40f5edd7c123efc125f8324daa56048abf8707a053a3c72093a8206d",
"md5": "f1e5fba1eb95e1f4e2bb0e13be58257a",
"sha256": "e05c62f295b4b1e64a58abe137b903860cb32410a6407ad5e61f834a6ce704fe"
},
"downloads": -1,
"filename": "fabricatio-0.18.0-cp312-cp312-manylinux_2_34_aarch64.whl",
"has_sig": false,
"md5_digest": "f1e5fba1eb95e1f4e2bb0e13be58257a",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": "<3.14,>=3.12",
"size": 2064813,
"upload_time": "2025-07-23T13:48:53",
"upload_time_iso_8601": "2025-07-23T13:48:53.109945Z",
"url": "https://files.pythonhosted.org/packages/f0/66/a67f40f5edd7c123efc125f8324daa56048abf8707a053a3c72093a8206d/fabricatio-0.18.0-cp312-cp312-manylinux_2_34_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "6cbc345f096fa262fe04d8f723e5f55ef45dcd3e332ef064d6e0d0ddeff5c9dd",
"md5": "4462d2db86ccc52c0fe6ad14617bab2d",
"sha256": "ba033c138216a548b70cf84798645d21b4ad0a55538359c68080bbefd8f37e49"
},
"downloads": -1,
"filename": "fabricatio-0.18.0-cp312-cp312-manylinux_2_34_x86_64.whl",
"has_sig": false,
"md5_digest": "4462d2db86ccc52c0fe6ad14617bab2d",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": "<3.14,>=3.12",
"size": 2089031,
"upload_time": "2025-07-23T13:49:23",
"upload_time_iso_8601": "2025-07-23T13:49:23.809831Z",
"url": "https://files.pythonhosted.org/packages/6c/bc/345f096fa262fe04d8f723e5f55ef45dcd3e332ef064d6e0d0ddeff5c9dd/fabricatio-0.18.0-cp312-cp312-manylinux_2_34_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "37ff38c4a61a3a9e1cc3d7319bbd842a4349fb972aa67ae1efa31ae310530152",
"md5": "5e32da2722e4b03b32e47c0a8c036e7e",
"sha256": "914f933ed7d9dde2bc233b5cd035dc5e3654328b93c15893217183fcab4056d4"
},
"downloads": -1,
"filename": "fabricatio-0.18.0-cp312-cp312-win_amd64.whl",
"has_sig": false,
"md5_digest": "5e32da2722e4b03b32e47c0a8c036e7e",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": "<3.14,>=3.12",
"size": 1615153,
"upload_time": "2025-07-23T13:54:14",
"upload_time_iso_8601": "2025-07-23T13:54:14.890992Z",
"url": "https://files.pythonhosted.org/packages/37/ff/38c4a61a3a9e1cc3d7319bbd842a4349fb972aa67ae1efa31ae310530152/fabricatio-0.18.0-cp312-cp312-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "c1ffc2bdc9b968cda871d6abab8a0d9120ff8e45b7e27d4afe4016b6fca9540a",
"md5": "32e0f5cacbbed7bc6de27322386ef571",
"sha256": "b6f0d81556c19a4b2e904b70d64ff12f0dd0f5fd76e62273cec467709ed7e056"
},
"downloads": -1,
"filename": "fabricatio-0.18.0-cp313-cp313-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "32e0f5cacbbed7bc6de27322386ef571",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": "<3.14,>=3.12",
"size": 1943041,
"upload_time": "2025-07-23T13:48:41",
"upload_time_iso_8601": "2025-07-23T13:48:41.800690Z",
"url": "https://files.pythonhosted.org/packages/c1/ff/c2bdc9b968cda871d6abab8a0d9120ff8e45b7e27d4afe4016b6fca9540a/fabricatio-0.18.0-cp313-cp313-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "2c07fcb0a8bf493818c356923ed2588bd19a4938a2f10626e72dce254b124f5a",
"md5": "5f530e08ed287fc4d2c93ef5656d1a94",
"sha256": "424e826d1749f741d724cf35a2805136f7c68372132f27851805b9e3f8852634"
},
"downloads": -1,
"filename": "fabricatio-0.18.0-cp313-cp313-manylinux_2_34_aarch64.whl",
"has_sig": false,
"md5_digest": "5f530e08ed287fc4d2c93ef5656d1a94",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": "<3.14,>=3.12",
"size": 2064905,
"upload_time": "2025-07-23T13:48:19",
"upload_time_iso_8601": "2025-07-23T13:48:19.693552Z",
"url": "https://files.pythonhosted.org/packages/2c/07/fcb0a8bf493818c356923ed2588bd19a4938a2f10626e72dce254b124f5a/fabricatio-0.18.0-cp313-cp313-manylinux_2_34_aarch64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "9b71fb147051488b906a1e09448d09723dde0b80135b5d303d2530f5e2ee05c4",
"md5": "7a98b4510491ddb3b3468310b8ad4251",
"sha256": "e27a1a4272e7f542d3c1960dff5ce6efb804c16d71ea7a3a94bdb8fbfbfe1c5a"
},
"downloads": -1,
"filename": "fabricatio-0.18.0-cp313-cp313-manylinux_2_34_x86_64.whl",
"has_sig": false,
"md5_digest": "7a98b4510491ddb3b3468310b8ad4251",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": "<3.14,>=3.12",
"size": 2088763,
"upload_time": "2025-07-23T13:49:30",
"upload_time_iso_8601": "2025-07-23T13:49:30.876622Z",
"url": "https://files.pythonhosted.org/packages/9b/71/fb147051488b906a1e09448d09723dde0b80135b5d303d2530f5e2ee05c4/fabricatio-0.18.0-cp313-cp313-manylinux_2_34_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "5b046d4ff5bfc00d0e03a26186bb9400d27fff98b66cbdd1c4427dc6eb670933",
"md5": "6d85c3d38999c5894246f095499047fe",
"sha256": "9c29941a74062a98560ca014cc083f821db60aa4452bc0dead1543f0a79084e3"
},
"downloads": -1,
"filename": "fabricatio-0.18.0-cp313-cp313-win_amd64.whl",
"has_sig": false,
"md5_digest": "6d85c3d38999c5894246f095499047fe",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": "<3.14,>=3.12",
"size": 1614761,
"upload_time": "2025-07-23T13:54:44",
"upload_time_iso_8601": "2025-07-23T13:54:44.402086Z",
"url": "https://files.pythonhosted.org/packages/5b/04/6d4ff5bfc00d0e03a26186bb9400d27fff98b66cbdd1c4427dc6eb670933/fabricatio-0.18.0-cp313-cp313-win_amd64.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-23 13:49:10",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Whth",
"github_project": "fabricatio",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"lcname": "fabricatio"
}