deploy fastapi

fastapi apps are served with uvicorn. requirements.txt, Pipfile and pyproject.toml all work.

the whole thing

curl -fsSL https://pushto.host/install | sh   # or: brew install mydude-industries/tap/pushto · npm i -g @pushto/cli
pushto login
pushto init my-fastapi
pushto

that last bare pushto is the deploy. on windows, the install line is irm https://pushto.host/install.ps1 | iex in powershell. live at https://<your-name>.pushto.host with https. we build it and run it as a server. you never touch the machinery. runs on the free tier too — your one free app can be a server; it naps after a quiet spell and wakes on the next visit. $13/mo lifts the one-project cap and keeps apps always awake.

how we know it's fastapi

  • fastapi listed in requirements.txt at the project root
  • Pipfile and pyproject.toml (poetry or pep 621) are detected too, and install with the matching tool

what happens when you push

  • dependencies install from your manifest, then uvicorn serves your app on port 8080
  • the entry file is found in this order: main.py, app.py, api.py, asgi.py, server.py
  • the app variable is read from your code: any top-level name = FastAPI(...) works, not just app

sharp edges

  • app factories are not auto-detected. uvicorn needs a top-level variable, so expose one: app = create_app()

deploying from an agent?

claude code and cursor can run all of this for you: connect your agent. the short machine-readable version of this site lives at https://pushto.host/llms.txt.

something off? run pushto doctor, or see all supported frameworks.