Frameworks

Kavio détecte votre langage, installe vos dépendances et met votre application en ligne sans fichier de configuration. Mais deux projets écrits dans le même langage ne démarrent pas de la même façon : le nom du fichier d'entrée, le port écouté, l'endroit où se trouve l'exécutable final — tout cela dépend de votre framework, pas de la plateforme.

Chaque framework ci-dessous a été déployé et vérifié sur Kavio. La colonne de droite dit ce que vous devez fournir vous-même : dans la moitié des cas, rien.

Frameworks validés

LangageFrameworkCe que vous devez fournir
PHPSymfonyQuelques variables d'environnement, et npm pour compiler vos assets
PHPLaravelUne APP_KEY, et SQLite à créer puis migrer au build
PythonDjangoSECRET_KEY, ALLOWED_HOSTS, et collectstatic au démarrage
PythonFlaskUn main.py contenant une instance app, et gunicorn en dépendance
PythonFastAPIUn main.py contenant une instance app, et uvicorn en dépendance
Node.jsNext.jsRien
Node.jsExpressUn script start, et lire le port dans process.env.PORT
Node.jsNestJSRien, sauf pour servir des fichiers statiques
JavaSpring BootRien : le port est injecté au démarrage
JavaQuarkusLire le port, et pointer le démarrage sur quarkus-run.jar
JavaMicronautUn JDK 25 pour que le build démarre, et lire le port
GoGinLire le port, et déclarer vos fichiers statiques
GoEchoLire le port, et déclarer vos fichiers statiques
GoFiberLire le port, et déclarer vos fichiers statiques

Ce que Kavio fait sans que vous ayez à le demander

  • Détecter le langage et le gestionnaire de paquets à partir de votre dépôt (package.json, requirements.txt, composer.json, pom.xml, go.mod…).
  • Installer les dépendances et construire l'image, puis la mettre en ligne derrière un domaine HTTPS.
  • Redéployer à chaque push sur la branche que vous suivez.
  • Fournir un disque inscriptible : aucune redirection de fichiers à prévoir.

Ce que Kavio ne peut pas deviner

  • Le port d'écoute. Kavio en impose un via la variable PORT. La plupart des frameworks la lisent d'eux-mêmes ; certains attendent que vous le fassiez.
  • Le point d'entrée. Quand la détection automatique impose un nom de fichier (main.py) ou de variable (app), la page du framework le précise.
  • L'emplacement de l'exécutable final. Un empaquetage inhabituel — celui de Quarkus par exemple — demande de désigner le fichier à lancer.

Dans ces cas-là, une variable d'environnement suffit. La page de votre framework donne la valeur exacte.

Votre framework n'est pas dans la liste ?

Cette liste n'est pas une liste de compatibilité : elle recense ce que nous avons testé nous-mêmes. Un framework absent a toutes les chances de fonctionner, surtout si son langage est déjà couvert — la détection se fait au niveau du langage, pas du framework.

Ruby n'a pas encore été vérifié. Si vous déployez un projet Ruby, ou tout autre framework absent d'ici, écrivez-nous à contact@kavio.fr : nous documenterons le cas.