Skip to main content

Fastapi integration for rewire

Project description

rewire_fastapi

A FastAPI integration for rewire.

Installation

To get started, install rewire_fastapi using pip:

pip install rewire_fastapi

Supported Servers

This package supports running with both Uvicorn and Hypercorn servers (rewire_fastapi.server).

Usage

First, import add rewire_fastapi to your rewire application:

# ...
import rewire_fastapi

async def main():
    async with Space().init().use():
        DependenciesModule.get().add(rewire_fastapi.plugin)  # add this
        # ...

Then have injected fastapi in your files:

from fastapi import APIRouter, FastAPI
from rewire.plugins import simple_plugin

plugin = simple_plugin()
router = APIRouter()


@router.get("/hello")
def hello_world():
    return "world"


@plugin.setup()
async def include_router(app: FastAPI):
    app.include_router(router)

Configuration

Configure the package in config.yaml file:

rewire_fastapi:
  server: "hypercorn"
  app: # will be passed to FastAPI instance
    title: "My App"
  uvicorn: # (optional)
    port: 1234
  hypercorn: # (optional)
    bind: "0.0.0.0:1234"
  routes:  # (optional)
    tag_prefix: "myapp:"
  patch: # (optional)
    swagger_hierarchical_tags: true
    tag_prefixes: true
  middleware:
    cors: # enable cors middleware (optional)
      allow_origins: ["*"]
      allow_methods: ["*"]
      allow_headers: ["*"]

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rewire_fastapi-0.2.0.tar.gz (6.3 kB view details)

Uploaded Source

Built Distribution

rewire_fastapi-0.2.0-py3-none-any.whl (7.6 kB view details)

Uploaded Python 3

File details

Details for the file rewire_fastapi-0.2.0.tar.gz.

File metadata

  • Download URL: rewire_fastapi-0.2.0.tar.gz
  • Upload date:
  • Size: 6.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.12.1

File hashes

Hashes for rewire_fastapi-0.2.0.tar.gz
Algorithm Hash digest
SHA256 3b338d9e35318d788f1fb62a89b71742c116041a2b2247e7c49d228817bc5c60
MD5 308fe5d397366f4f7efcde9529d92da1
BLAKE2b-256 cd08b51a0bf5334eb7de04c4b182a9bd74c559cd52da9bca47c7b2a11136f871

See more details on using hashes here.

File details

Details for the file rewire_fastapi-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for rewire_fastapi-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 c6c7cd18dcd60bcf4938b341dd93beee92b0e8b976a07aea1f54329cbfbfa19b
MD5 5616cec37c0722233701ba8d5e5d9f26
BLAKE2b-256 b3e288b198858f9487cbe816767a2ffe5b3417e48cf28710848bd528d50069ee

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page