Frameworks et outils pour App Hosting

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.npm de votre fichier package.json.

Laine

  • Le fichier Yarn est utilisé lorsque vous incluez le fichier yarn.lock dans votre projet.
  • Vous pouvez spécifier la version de Yarn à utiliser dans le champ engines.yarn ou packageManager de votre fichier package.json.
  • App Hosting est compatible avec le mode Yarn2 PnP.

Pnpm

  • Pnpm est utilisé à la place lorsque vous incluez le fichier pnpm-lock.yaml dans votre projet.
  • Vous pouvez spécifier une version de pnpm dans le champ engines.pnpm ou packageManager de votre fichier package.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.