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.0.9.tar.gz (5.2 kB view details)

Uploaded Source

Built Distribution

rewire_fastapi-0.0.9-py3-none-any.whl (6.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: rewire_fastapi-0.0.9.tar.gz
  • Upload date:
  • Size: 5.2 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.0.9.tar.gz
Algorithm Hash digest
SHA256 0bd6a4347ec2c5f637f96f8013e164e37cb1e7d63acd730cb2f8180e4711a556
MD5 1f2368fe4635982897551af9c934c152
BLAKE2b-256 759b015051bd0ac873ccd6def7d8e3a6aa9ee4fb3fc0bfde33ffeef60b30e137

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rewire_fastapi-0.0.9-py3-none-any.whl
Algorithm Hash digest
SHA256 2229654d6be5220a1b381a28e0a3d8a7029963adf16bd08b404d5f822804e1ee
MD5 3976444f31c64d9690b5a25c23b252b7
BLAKE2b-256 e7a28f169dca7999a659e8a63f0b22729121a2faaecfb0f6046dfe8fcaadb2de

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