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

Uploaded Source

Built Distribution

rewire_fastapi-0.1.0-py3-none-any.whl (6.6 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: rewire_fastapi-0.1.0.tar.gz
  • Upload date:
  • Size: 5.5 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.1.0.tar.gz
Algorithm Hash digest
SHA256 02a39e2fe3592b92321c0994107f401e7384b780b34c8c5a5d2272b0139a67a5
MD5 3df184729a3253a33dabad0306a4746a
BLAKE2b-256 b0cf39b2f8fb51097437a8765707eac0cb715f98fabccbad1701d5a07463ad4b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for rewire_fastapi-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9cf308b46cf21e2f3019b8111d16b747b8df253eab23fa2ebf54fa2548acb878
MD5 b3a0eec9542669831b5404fe222219be
BLAKE2b-256 c1137c87f5761c29d5e210ba6f8e3e73f2ff84fee254dd3a939a7b67ebbe25ce

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