fastapi-serve


Namefastapi-serve JSON
Version 0.0.6 PyPI version JSON
download
home_pagehttps://github.com/jina-ai/fastapi-serve/
SummaryFastAPI Serve - FastAPI to the Cloud, Batteries Included!
upload_time2023-07-20 15:02:50
maintainer
docs_urlNone
authorJina AI
requires_python
licenseApache 2.0
keywords jina fastapi restapi cloud docker kubernetes
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <p align="center">
<h2 align="center">FastAPI-Serve: FastAPI to the Cloud, Batteries Included! ☁ī¸đŸ”‹đŸš€</h2>
</p>

<p align=center>
<a href="https://pypi.org/project/fastapi-serve/"><img alt="PyPI" src="https://img.shields.io/pypi/v/fastapi-serve?label=Release&style=flat-square"></a>
<a href="https://discord.jina.ai"><img src="https://img.shields.io/discord/1106542220112302130?logo=discord&logoColor=white&style=flat-square"></a>
<a href="https://pypistats.org/packages/fastapi-serve"><img alt="PyPI - Downloads from official pypistats" src="https://img.shields.io/pypi/dm/fastapi-serve?style=flat-square"></a>
<a href="https://github.com/jina-ai/fastapi-serve/actions/workflows/cd.yml"><img alt="Github CD status" src="https://github.com/jina-ai/fastapi-serve/actions/workflows/cd.yml/badge.svg"></a>
</p>

Welcome to **fastapi-serve**, your one-stop solution to seamless FastAPI application deployments. Powered by our open-source framework [Jina](https://github.com/jina-ai/jina), `fastapi-serve` provides an effortless transition from your local setup to [cloud.jina.ai](https://cloud.jina.ai/), our robust and scalable cloud platform. 🌩ī¸

Designed with developers in mind, `fastapi-serve` simplifies the deployment process by packing robust functionality, ease-of-use, and automated procedures into one comprehensive package. With `fastapi-serve`, we aim to streamline the "last mile" of FastAPI application development, allowing you to focus on what truly matters - writing great code!


## 😍 Features 

- 🌎 **HTTPS**: Auto-provisioned DNS and TLS certificates for your app.
- 🔗 **Protocols**: Full compatibility with HTTP, WebSocket, and GraphQL.
- ↕ī¸ **Scaling**: Scale your app manually or let it auto-scale based on RPS, CPU, and Memory.
- 🗝ī¸ **Secrets**: Secure handling of secrets and environment variables.
- 🎛ī¸ **Hardware**: Choose the right compute resources for your app's needs with ease.
- 🔒 **Authorization**: Built-in OAuth2.0 token-based security to secure your endpoints. 
- 💾 **App Storage**: Persistent and secure network storage for your app data.
- 🔄 **Blob Storage**: Built-in support for seamless user file uploads and downloads.
- 🔎 **Observability**: Integrated access to logs, metrics, and traces. (Alerting coming soon!)
- đŸ“Ļ **Containerization**: Effortless containerization of your Python codebase with our integrated registry.
- 🛠ī¸ **Self-Hosting**: Export your app for self-hosting with ease, including docker-compose and Kubernetes yamls.

## 💡 Getting Started

First, install the `fastapi-serve` package using pip:

```bash
pip install fastapi-serve
```

Then, simply use the `fastapi-serve` command to deploy your FastAPI application:

```bash
fastapi-serve deploy jcloud main:app
```

You'll get a URL to access your newly deployed application along with the Swagger UI.

## 📚 Documentation

Dive into understanding `fastapi-serve` through our comprehensive documentation and examples:

- 🚀 **Getting Started**
    - 🧱 [Deploy a Simple FastAPI Application](docs/simple/)
    - đŸ–Ĩī¸ [Dig deep into the `fastapi-serve` CLI](docs/CLI.md)
    - ⚙ī¸ [Understanding Configuration and Pricing](docs/CONFIG.MD)
    - 🔄 [Upgrade your FastAPI applications with zero downtime](docs/upgrades/)
    - đŸĸ Managing Larger Applications with Complex Directory Structure (Example TBD!)
- ↕ī¸ **Scaling**
    - 💹 [Auto-scaling endpoints based on CPU usage](docs/autoscaling/cpu/)
    - 📉 [Serverless (scale-to-zero) deployments based on RPS](docs/autoscaling/serverless/) 
- 🧩 **Config & Credentials**
    - 🌍 [Leverage Environment Variables for app configuration](docs/envs/)
    - 🗝ī¸ [Use Secrets for Redis-Powered Rate Limiting](docs/rate_limit/)
- 💾 **Storage**
    - 📁 [Handle File Uploads and Downloads with built-in Blob Storage](docs/file_handling/)
    - 🌐 Network Storage for persisting and securely accessing app data (Example TBD!)
- 🔒 **Security**
    - 👮‍♂ī¸ [Secure Your Endpoints with built-in OAuth2.0 Authorization](docs/authorization/)
- đŸŗ **Deployment Options**
    - đŸšĸ Deployment with Custom Dockerfile (Coming Soon!)
    - ☸ī¸ [Export Your App for Self-Hosting with docker-compose / Kubernetes](docs/export/)
- 📈 **Observability**
    - 📊 Access Logs, Metrics, and Traces for your app (Example TBD!)
    - 🚨 Set up Alerts for your app (Coming Soon!)


## đŸ’Ē Support

If you encounter any problems or have questions, feel free to open an issue on the GitHub repository. You can also join our [Discord](https://discord.jina.ai/) to get help from our community members and the Jina team.


## 🌐 Our Cloud Platform  

`cloud.jina.ai` is our robust and scalable cloud platform designed to run your FastAPI applications with minimum hassle and maximum efficiency. With features like auto-scaling, integrated observability, and automated containerization, it provides a seamless and worry-free deployment experience.

---

`fastapi-serve` is more than just a deployment tool, it's a bridge that connects your local development environment with our powerful cloud infrastructure. Start using `fastapi-serve` today, and experience the joy of effortless deployments! 🎊
            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/jina-ai/fastapi-serve/",
    "name": "fastapi-serve",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "jina fastapi restapi cloud docker kubernetes",
    "author": "Jina AI",
    "author_email": "hello@jina.ai",
    "download_url": "https://files.pythonhosted.org/packages/05/be/a2e051aa2c7f81b988356464db7a588c887c4ecb949c063b3cf2143032ef/fastapi-serve-0.0.6.tar.gz",
    "platform": null,
    "description": "<p align=\"center\">\n<h2 align=\"center\">FastAPI-Serve: FastAPI to the Cloud, Batteries Included! \u2601\ufe0f\ud83d\udd0b\ud83d\ude80</h2>\n</p>\n\n<p align=center>\n<a href=\"https://pypi.org/project/fastapi-serve/\"><img alt=\"PyPI\" src=\"https://img.shields.io/pypi/v/fastapi-serve?label=Release&style=flat-square\"></a>\n<a href=\"https://discord.jina.ai\"><img src=\"https://img.shields.io/discord/1106542220112302130?logo=discord&logoColor=white&style=flat-square\"></a>\n<a href=\"https://pypistats.org/packages/fastapi-serve\"><img alt=\"PyPI - Downloads from official pypistats\" src=\"https://img.shields.io/pypi/dm/fastapi-serve?style=flat-square\"></a>\n<a href=\"https://github.com/jina-ai/fastapi-serve/actions/workflows/cd.yml\"><img alt=\"Github CD status\" src=\"https://github.com/jina-ai/fastapi-serve/actions/workflows/cd.yml/badge.svg\"></a>\n</p>\n\nWelcome to **fastapi-serve**, your one-stop solution to seamless FastAPI application deployments. Powered by our open-source framework [Jina](https://github.com/jina-ai/jina), `fastapi-serve` provides an effortless transition from your local setup to [cloud.jina.ai](https://cloud.jina.ai/), our robust and scalable cloud platform. \ud83c\udf29\ufe0f\n\nDesigned with developers in mind, `fastapi-serve` simplifies the deployment process by packing robust functionality, ease-of-use, and automated procedures into one comprehensive package. With `fastapi-serve`, we aim to streamline the \"last mile\" of FastAPI application development, allowing you to focus on what truly matters - writing great code!\n\n\n## \ud83d\ude0d Features \n\n- \ud83c\udf0e **HTTPS**: Auto-provisioned DNS and TLS certificates for your app.\n- \ud83d\udd17 **Protocols**: Full compatibility with HTTP, WebSocket, and GraphQL.\n- \u2195\ufe0f **Scaling**: Scale your app manually or let it auto-scale based on RPS, CPU, and Memory.\n- \ud83d\udddd\ufe0f **Secrets**: Secure handling of secrets and environment variables.\n- \ud83c\udf9b\ufe0f **Hardware**: Choose the right compute resources for your app's needs with ease.\n- \ud83d\udd12 **Authorization**: Built-in OAuth2.0 token-based security to secure your endpoints. \n- \ud83d\udcbe **App Storage**: Persistent and secure network storage for your app data.\n- \ud83d\udd04 **Blob Storage**: Built-in support for seamless user file uploads and downloads.\n- \ud83d\udd0e **Observability**: Integrated access to logs, metrics, and traces. (Alerting coming soon!)\n- \ud83d\udce6 **Containerization**: Effortless containerization of your Python codebase with our integrated registry.\n- \ud83d\udee0\ufe0f **Self-Hosting**: Export your app for self-hosting with ease, including docker-compose and Kubernetes yamls.\n\n## \ud83d\udca1 Getting Started\n\nFirst, install the `fastapi-serve` package using pip:\n\n```bash\npip install fastapi-serve\n```\n\nThen, simply use the `fastapi-serve` command to deploy your FastAPI application:\n\n```bash\nfastapi-serve deploy jcloud main:app\n```\n\nYou'll get a URL to access your newly deployed application along with the Swagger UI.\n\n## \ud83d\udcda Documentation\n\nDive into understanding `fastapi-serve` through our comprehensive documentation and examples:\n\n- \ud83d\ude80 **Getting Started**\n    - \ud83e\uddf1 [Deploy a Simple FastAPI Application](docs/simple/)\n    - \ud83d\udda5\ufe0f [Dig deep into the `fastapi-serve` CLI](docs/CLI.md)\n    - \u2699\ufe0f [Understanding Configuration and Pricing](docs/CONFIG.MD)\n    - \ud83d\udd04 [Upgrade your FastAPI applications with zero downtime](docs/upgrades/)\n    - \ud83c\udfe2 Managing Larger Applications with Complex Directory Structure (Example TBD!)\n- \u2195\ufe0f **Scaling**\n    - \ud83d\udcb9 [Auto-scaling endpoints based on CPU usage](docs/autoscaling/cpu/)\n    - \ud83d\udcc9 [Serverless (scale-to-zero) deployments based on RPS](docs/autoscaling/serverless/) \n- \ud83e\udde9 **Config & Credentials**\n    - \ud83c\udf0d [Leverage Environment Variables for app configuration](docs/envs/)\n    - \ud83d\udddd\ufe0f [Use Secrets for Redis-Powered Rate Limiting](docs/rate_limit/)\n- \ud83d\udcbe **Storage**\n    - \ud83d\udcc1 [Handle File Uploads and Downloads with built-in Blob Storage](docs/file_handling/)\n    - \ud83c\udf10 Network Storage for persisting and securely accessing app data (Example TBD!)\n- \ud83d\udd12 **Security**\n    - \ud83d\udc6e\u200d\u2642\ufe0f [Secure Your Endpoints with built-in OAuth2.0 Authorization](docs/authorization/)\n- \ud83d\udc33 **Deployment Options**\n    - \ud83d\udea2 Deployment with Custom Dockerfile (Coming Soon!)\n    - \u2638\ufe0f [Export Your App for Self-Hosting with docker-compose / Kubernetes](docs/export/)\n- \ud83d\udcc8 **Observability**\n    - \ud83d\udcca Access Logs, Metrics, and Traces for your app (Example TBD!)\n    - \ud83d\udea8 Set up Alerts for your app (Coming Soon!)\n\n\n## \ud83d\udcaa Support\n\nIf you encounter any problems or have questions, feel free to open an issue on the GitHub repository. You can also join our [Discord](https://discord.jina.ai/) to get help from our community members and the Jina team.\n\n\n## \ud83c\udf10 Our Cloud Platform  \n\n`cloud.jina.ai` is our robust and scalable cloud platform designed to run your FastAPI applications with minimum hassle and maximum efficiency. With features like auto-scaling, integrated observability, and automated containerization, it provides a seamless and worry-free deployment experience.\n\n---\n\n`fastapi-serve` is more than just a deployment tool, it's a bridge that connects your local development environment with our powerful cloud infrastructure. Start using `fastapi-serve` today, and experience the joy of effortless deployments! \ud83c\udf8a",
    "bugtrack_url": null,
    "license": "Apache 2.0",
    "summary": "FastAPI Serve - FastAPI to the Cloud, Batteries Included!",
    "version": "0.0.6",
    "project_urls": {
        "Documentation": "https://docs.jina.ai",
        "Download": "https://github.com/jina-ai/fastapi-serve/tags",
        "Homepage": "https://github.com/jina-ai/fastapi-serve/",
        "Source": "https://github.com/jina-ai/fastapi-serve/",
        "Tracker": "https://github.com/jina-ai/fastapi-serve/issues"
    },
    "split_keywords": [
        "jina",
        "fastapi",
        "restapi",
        "cloud",
        "docker",
        "kubernetes"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "05bea2e051aa2c7f81b988356464db7a588c887c4ecb949c063b3cf2143032ef",
                "md5": "b02eb6a6a10ae770b2b1300df8ef5691",
                "sha256": "98e5932309c5912531d4c3b348b96fb25e0852a8bb01c8711101887aa13f91da"
            },
            "downloads": -1,
            "filename": "fastapi-serve-0.0.6.tar.gz",
            "has_sig": false,
            "md5_digest": "b02eb6a6a10ae770b2b1300df8ef5691",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 26874,
            "upload_time": "2023-07-20T15:02:50",
            "upload_time_iso_8601": "2023-07-20T15:02:50.954792Z",
            "url": "https://files.pythonhosted.org/packages/05/be/a2e051aa2c7f81b988356464db7a588c887c4ecb949c063b3cf2143032ef/fastapi-serve-0.0.6.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-07-20 15:02:50",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "jina-ai",
    "github_project": "fastapi-serve",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "lcname": "fastapi-serve"
}
        
Elapsed time: 1.83864s