Firebase App Hosting est conçu spécifiquement pour prendre en charge le développement d'applications Web modernes axées sur les frameworks. Utilisez cette page comme référence pour les outils et les frameworks directement compatibles avec App Hosting, ainsi qu'un point de départ pour en savoir plus sur les frameworks et outils associés.
Frameworks Web et App Hosting
App Hosting offre deux niveaux d'assistance pour les frameworks Web modernes : une assistance prédéfinie pour la compilation et le déploiement, et une assistance au niveau de la communauté via des contributions Open Source conformes à la spécification du bundle de sortie. Dans les deux cas, un composant adaptateur de framework permet l'intégration d'un framework spécifique à App Hosting.
Frameworks avec assistance prédéfinie pour la compilation et le déploiement
Grâce à l'assistance prédéfinie pour la compilation et le déploiement, Firebase identifie le framework que vous utilisez en inspectant le fichier package-lock.json ou un autre fichier de verrouillage, et optimise les processus de compilation et de déploiement de votre application. Google s'engage à maintenir la compatibilité avec ces frameworks, et l'équipe d'assistance Firebase peut accepter les rapports de problèmes et les demandes de fonctionnalités.
Ce niveau d'assistance est fourni pour les frameworks suivants :
- Next.js
- Angular
Pour en savoir plus sur les versions et les niveaux d'assistance spécifiques, consultez les calendriers de compatibilité.
Si vous essayez de déployer une application Node.js à laquelle il manque un fichier de verrouillage, App Hosting
ne pourra pas compiler ni exécuter votre application. Vous pouvez créer package-lock.json en
exécutant npm install dans votre répertoire racine.
Frameworks compatibles avec la communauté
En plus de Next.js et d'Angular, App Hosting est également compatible avec tous les frameworks Web capables de fournir une sortie de compilation correspondant à notre spécification de bundle de sortie. Les auteurs de frameworks peuvent tirer parti de la spécification du bundle de sortie pour s'assurer que leur framework est compatible avec App Hosting. Par exemple, le framework Nuxt populaire est compatible avec l'équipe Nitro, qui a créé un adaptateur Firebase pour permettre le déploiement d'applications Nuxt sur App Hosting.
Si vous souhaitez que d'autres frameworks soient compatibles avec App Hosting, vous pouvez créer un adaptateur de framework ou contacter les responsables du framework pour convertir les sorties de compilation au format App Hosting. Les adaptateurs Next.js et Angular sont de bons exemples de référence pour toute personne créant un adaptateur.
Vous trouverez des informations sur les frameworks compatibles avec la communauté sur Firebase Open Source. Les problèmes et les demandes de fonctionnalités concernant les frameworks compatibles avec la communauté doivent être adressés à la communauté Open Source ou aux auteurs du framework. Dans certains cas, Google peut vous aider, mais la communauté est le premier niveau d'assistance pour ces adaptateurs.
Adaptateurs de framework App Hosting
Dans App Hosting, la compatibilité avec les frameworks prédéfinis et compatibles avec la communauté est assurée par des adaptateurs de framework. App Hosting adaptateurs de framework ont deux rôles clés :
- Ils analysent votre code source et tous les fichiers de configuration spécifiques au framework (tels que
next.config.js) et génèrent un bundle de sortie qui peut être traité par le reste de l'App Hosting infrastructure. - Ils exécutent la commande de compilation de votre application pour générer des éléments statiques et créer une version optimisée de votre application pour la production.
Les adaptateurs de framework compilent votre application Node.js avec npm run build, qui fonctionne mieux avec les scripts de compilation par défaut pour chaque framework : next build pour Next.js et ng build pour Angular. App Hosting tentera de compiler avec des commandes de compilation personnalisées, mais ne peut pas garantir le succès de manière fiable. Vous pouvez
remplacer les scripts de compilation et d'exécution
dans apphosting.yaml.
La source des adaptateurs Next.js et Angular est disponible dans firebase-framework-tools.
Environnements d'exécution pour App Hosting
Une fois compilée et déployée par App Hosting, votre application Node.js s'exécute dans une Cloud Run révision. Par conséquent, la version de l'environnement d'exécution de votre application doit se situer à la fois dans Cloud Runla plage compatible et dans la plage de votre framework Web choisi. Pour la compatibilité prédéfinie avec Angular et Next.js, cela signifie que les versions suivantes de Node.js sont compatibles :
- Next.js 13.5.x et versions ultérieures
- Angular 18.2.x et versions ultérieures
- Node.js 20 et versions ultérieures
App Hosting n'offre pas automatiquement d'assistance active pour les versions de framework récemment publiées. Les versions plus récentes que notre version "active" actuellement désignée seront considérées comme étant en état "preview" jusqu'à ce qu'elles soient officiellement marquées comme "actives" pour App Hosting.
App Hosting est compatible avec l'assistance à long terme (LTS) pour la dernière version mineure d' une version majeure pendant un an à compter de sa période d'assistance active, à condition que vous effectuiez régulièrement la mise à jour vers les dernières versions de correctif de cette version mineure. Pour en savoir plus sur Next.js et Angular, consultez les tableaux suivants.
Calendrier de compatibilité avec Next.js
| Version | État | Obsolescence |
|---|---|---|
| 13.5.x | lts | 2026-10-9 |
| 14.2.x | lts | 2026-10-9 |
| 15.0.x | actif | pas avant le 2025-10-9 |
| 15.1.x | actif | pas avant le 2025-10-9 |
| 15.2.x | actif | - |
Calendrier de compatibilité avec Angular
| Version | État | Obsolescence |
|---|---|---|
| 18.2.x | lts | 2026-10-9 |
| 19.0.x | actif | pas avant le 2025-10-9 |
| 19.1.x | actif | pas avant le 2025-10-9 |
| 19.2.x | actif | - |
Gestionnaires de packages
App Hosting utilise Cloud Native Buildpacks pour exécuter l' installation des dépendances et compiler l'application à l'aide de npm, yarn ou pnpm. Les autres gestionnaires de packages tels que JSR ne sont pas compatibles.
NPM
- NPM est le gestionnaire de packages par défaut.
- Les dépendances hors production sont supprimées une fois la compilation réussie.
- Vous pouvez spécifier la section de version npm à l'aide du champ
engines.npmde votre fichierpackage.json.
Laine
- Le fichier Yarn est utilisé lorsque vous incluez le fichier
yarn.lockdans votre projet. - Vous pouvez spécifier la version de Yarn à utiliser dans le champ
engines.yarnoupackageManagerde votre fichierpackage.json. - App Hosting est compatible avec le mode Yarn2 PnP.
Pnpm
- Pnpm est utilisé à la place lorsque vous incluez le fichier
pnpm-lock.yamldans votre projet. - Vous pouvez spécifier une version de pnpm dans le champ
engines.pnpmoupackageManagerde votre fichierpackage.json. - Pour obtenir un exemple de fonctionnement, consultez le sample-node-pnpm. pour votre application conteneurisée.
Monorepos pour App Hosting
App Hosting est compatible avec les applications basées sur Nx. Pour obtenir des instructions détaillées, consultez Utiliser des monorepos avec App Hosting.
Les versions Nx suivantes sont compatibles :
| Version | État | Obsolescence |
|---|---|---|
| 19.5.x | entretien | 2025-10-9 |
| 19.6.x | entretien | 2025-10-9 |
| 19.7.x | entretien | 2025-10-9 |
| 19.8.x | lts | 2026-10-9 |
| 20.0.x | actif | pas avant le 2025-10-9 |
| 20.1.x | actif | pas avant le 2025-10-9 |
| 20.2.x | actif | pas avant le 2025-10-9 |
| 20.3.x | actif | pas avant le 2025-10-9 |
| 20.4.x | actif | pas avant le 2025-10-9 |
| 20.5.x | actif | pas avant le 2025-10-9 |
| 20.6.x | actif | pas avant le 2025-10-9 |
| 20.7.x | actif | — |
Si vous avez besoin d'aide pour d'autres types d'espaces de travail monorepo, faites-le nous savoir sur Firebase UserVoice.