FastAPI (Python)
FastAPI fonctionne sur Kavio sans aucune variable d'environnement à déclarer, à une condition près.
Le point à respecter : nom de fichier et nom de variable
Kavio détecte automatiquement une app FastAPI et la démarre tout seul, mais il s'attend à trouver :
- un fichier appelé
main.pyà la racine du dépôt, - contenant une instance FastAPI appelée
app:
from fastapi import FastAPI
app = FastAPI()
Avec un autre nom de fichier ou de variable, le démarrage automatique ne trouve rien à lancer. Si vous ne pouvez pas respecter cette convention, utilisez la variable d'environnement RAILPACK_START_CMD pour préciser vous-même la commande, par exemple :
uvicorn monmodule:mon_app --host 0.0.0.0 --port ${PORT:-8000}
uvicorn doit aussi figurer dans requirements.txt — sans lui, Kavio ne sait pas démarrer votre app.
Le CSS/JS statique fonctionne sans rien faire
Montez simplement un dossier avec StaticFiles, sans étape de build à ajouter :
from fastapi.staticfiles import StaticFiles
app.mount('/static', StaticFiles(directory='static'), name='static')
Ce qui n'est pas nécessaire
Vous n'avez rien à faire concernant :
PORT— automatiquement imposé par la plateforme, votre app n'a pas à le déclarer ni à le lire.- Le disque applicatif — inscriptible sur Kavio, aucune redirection de fichiers à prévoir (utile si vous utilisez SQLite).