kithub


Namekithub JSON
Version 0.1.1 PyPI version JSON
download
home_pageNone
SummaryKitHub is a powerful framework for creating and managing tool-based APIs. It integrates seamlessly with LangChain tools and provides a simple interface for exposing these tools as API endpoints.
upload_time2024-06-22 13:09:22
maintainerNone
docs_urlNone
authorUria Franko
requires_python<4.0,>=3.9
licenseMIT
keywords langchain api fastapi tool
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <h1 align="center"> ๐Ÿ› ๏ธ KitHub ๐Ÿ› ๏ธ </h1>

<p align="center">
  <img src="public/logo.png" alt="KitHub Logo" width="250"/>
</p>

<p align="center">
  <!-- <a href="https://github.com/uriafranko/kithub/actions"><img src="https://github.com/uriafranko/kithub/workflows/tests/badge.svg" alt="Build Status"></a> -->
  <a href="https://pypi.org/project/kithub/"><img src="https://img.shields.io/pypi/v/kithub.svg" alt="PyPI version"></a>
  <a href="https://github.com/uriafranko/kithub/blob/main/LICENSE"><img src="https://img.shields.io/github/license/uriafranko/kithub.svg" alt="License"></a>
</p>

KitHub is a powerful framework for creating and managing tool-based APIs. It integrates seamlessly with LangChain tools and provides a simple interface for exposing these tools as API endpoints.

## โœจ Features

- ๐Ÿ”ง Easy integration with LangChain tools
- ๐Ÿš€ Rapid API development with FastAPI
- ๐Ÿ”’ Built-in input validation and error handling
- ๐Ÿ“š Automatic OpenAPI (Swagger) documentation
- ๐ŸŒ CORS support out of the box
- ๐Ÿงฐ Modular design with support for multiple tool kits

## ๐Ÿš€ Quick Start

### Installation

```bash
pip install kithub
```

### Basic Usage

```python
from kithub import create_kit, create_kithub
from langchain_core.tools import tool

@tool
def example_tool(x: int, y: int):
    """Add two numbers together."""
    return x + y

# Create a kit with your tools
kit = create_kit(tools=[example_tool], prefix="/v1")

# Create the KitHub app
app = create_kithub([kit])

# Run the app
if __name__ == "__main__":
    import uvicorn
    uvicorn.run(app, host="0.0.0.0", port=8000)
```

## ๐Ÿ“– Documentation

For full documentation, visit [kithub.readthedocs.io](https://kithub.readthedocs.io).

## ๐Ÿงช Running Tests

```bash
pytest tests/
```

## ๐Ÿค Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

## ๐Ÿ“„ License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

## ๐Ÿ™ Acknowledgements

- [FastAPI](https://fastapi.tiangolo.com/) for the awesome web framework
- [LangChain](https://python.langchain.com/) for the powerful tool abstractions

---

<p align="center">
  Made with โค๏ธ by <a href="https://github.com/uriafranko">Uria Franko</a>
</p>

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "kithub",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4.0,>=3.9",
    "maintainer_email": null,
    "keywords": "langchain, api, fastapi, tool",
    "author": "Uria Franko",
    "author_email": "uriafranko@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/c7/06/09e7ab6eea650239e6d61196f21be43416bb29da6ad12e668310dbee0776/kithub-0.1.1.tar.gz",
    "platform": null,
    "description": "<h1 align=\"center\"> \ud83d\udee0\ufe0f KitHub \ud83d\udee0\ufe0f </h1>\n\n<p align=\"center\">\n  <img src=\"public/logo.png\" alt=\"KitHub Logo\" width=\"250\"/>\n</p>\n\n<p align=\"center\">\n  <!-- <a href=\"https://github.com/uriafranko/kithub/actions\"><img src=\"https://github.com/uriafranko/kithub/workflows/tests/badge.svg\" alt=\"Build Status\"></a> -->\n  <a href=\"https://pypi.org/project/kithub/\"><img src=\"https://img.shields.io/pypi/v/kithub.svg\" alt=\"PyPI version\"></a>\n  <a href=\"https://github.com/uriafranko/kithub/blob/main/LICENSE\"><img src=\"https://img.shields.io/github/license/uriafranko/kithub.svg\" alt=\"License\"></a>\n</p>\n\nKitHub is a powerful framework for creating and managing tool-based APIs. It integrates seamlessly with LangChain tools and provides a simple interface for exposing these tools as API endpoints.\n\n## \u2728 Features\n\n- \ud83d\udd27 Easy integration with LangChain tools\n- \ud83d\ude80 Rapid API development with FastAPI\n- \ud83d\udd12 Built-in input validation and error handling\n- \ud83d\udcda Automatic OpenAPI (Swagger) documentation\n- \ud83c\udf10 CORS support out of the box\n- \ud83e\uddf0 Modular design with support for multiple tool kits\n\n## \ud83d\ude80 Quick Start\n\n### Installation\n\n```bash\npip install kithub\n```\n\n### Basic Usage\n\n```python\nfrom kithub import create_kit, create_kithub\nfrom langchain_core.tools import tool\n\n@tool\ndef example_tool(x: int, y: int):\n    \"\"\"Add two numbers together.\"\"\"\n    return x + y\n\n# Create a kit with your tools\nkit = create_kit(tools=[example_tool], prefix=\"/v1\")\n\n# Create the KitHub app\napp = create_kithub([kit])\n\n# Run the app\nif __name__ == \"__main__\":\n    import uvicorn\n    uvicorn.run(app, host=\"0.0.0.0\", port=8000)\n```\n\n## \ud83d\udcd6 Documentation\n\nFor full documentation, visit [kithub.readthedocs.io](https://kithub.readthedocs.io).\n\n## \ud83e\uddea Running Tests\n\n```bash\npytest tests/\n```\n\n## \ud83e\udd1d Contributing\n\nContributions are welcome! Please feel free to submit a Pull Request.\n\n## \ud83d\udcc4 License\n\nThis project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.\n\n## \ud83d\ude4f Acknowledgements\n\n- [FastAPI](https://fastapi.tiangolo.com/) for the awesome web framework\n- [LangChain](https://python.langchain.com/) for the powerful tool abstractions\n\n---\n\n<p align=\"center\">\n  Made with \u2764\ufe0f by <a href=\"https://github.com/uriafranko\">Uria Franko</a>\n</p>\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "KitHub is a powerful framework for creating and managing tool-based APIs. It integrates seamlessly with LangChain tools and provides a simple interface for exposing these tools as API endpoints.",
    "version": "0.1.1",
    "project_urls": null,
    "split_keywords": [
        "langchain",
        " api",
        " fastapi",
        " tool"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e0a9ca8a84cec1c3fe5b81adaa46264c05188fdce7811b0fff84b780b2e16c5d",
                "md5": "6697082af00eeba3fe8293b697e185c3",
                "sha256": "7f3c25f315fce2f3c3dbe980f994a93abfb6ff56487e406a45e123cb3150d543"
            },
            "downloads": -1,
            "filename": "kithub-0.1.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "6697082af00eeba3fe8293b697e185c3",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4.0,>=3.9",
            "size": 4529,
            "upload_time": "2024-06-22T13:09:20",
            "upload_time_iso_8601": "2024-06-22T13:09:20.842076Z",
            "url": "https://files.pythonhosted.org/packages/e0/a9/ca8a84cec1c3fe5b81adaa46264c05188fdce7811b0fff84b780b2e16c5d/kithub-0.1.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c70609e7ab6eea650239e6d61196f21be43416bb29da6ad12e668310dbee0776",
                "md5": "aba5d69c992c5ea08661d669e508f44c",
                "sha256": "803e5b784fae98b06fc1c732f085e75f255120261142ec141965792891f8f0a3"
            },
            "downloads": -1,
            "filename": "kithub-0.1.1.tar.gz",
            "has_sig": false,
            "md5_digest": "aba5d69c992c5ea08661d669e508f44c",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4.0,>=3.9",
            "size": 4983,
            "upload_time": "2024-06-22T13:09:22",
            "upload_time_iso_8601": "2024-06-22T13:09:22.406955Z",
            "url": "https://files.pythonhosted.org/packages/c7/06/09e7ab6eea650239e6d61196f21be43416bb29da6ad12e668310dbee0776/kithub-0.1.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-06-22 13:09:22",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "kithub"
}
        
Elapsed time: 0.28386s