Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Deploy and manage web apps with Firebase App Hosting. Use this skill when deploying Next.js/Angular apps with backends.
.claude/skills/firebase-app-hosting-basics/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | -28% | 0% |
| case-02 | ✗→✓ | ▲ Improved | -38% | 0% |
| case-03 | ✗→✓ | ▲ Improved | -31% | 0% |
| case-10 | ✗→✓ | ▲ Improved | 8% | 0% |
| case-12 | ✗→✓ | ▲ Improved | -26% | 0% |
This skill enables the agent to deploy and manage modern, full-stack web applications (Next.js, Angular, etc.) using Firebase App Hosting.
Important: In order to use App Hosting, your Firebase project must be on the Blaze pricing plan. Direct the user to https://console.firebase.google.com/project/_/overview?purchaseBillingPlan=metered to upgrade their plan.
Choose Firebase Hosting if:
Choose Firebase App Hosting if:
This is the recommended flow for most users.
firebase.json with an apphosting block.json { "apphosting": { "backendId": "my-app-id", "rootDir": "/", "ignore": [ "node_modules", ".git", "firebase-debug.log", "firebase-debug.*.log", "functions" ] } }
apphosting.yaml- seeConfiguration for more information on how to do so.
npx -y firebase-tools@latest apphosting:secrets commands to set and grant access to secrets.
npx -y firebase-tools@latest deploy when you are ready to deploy.Alternatively, set up a backend connected to a GitHub repository for automated deployments "git push" deployments. This is only recommended for more advanced users, and is not required to use App Hosting. See CLI Commands for more information on how to set this up using CLI commands.
See Emulation for more information on how to test your app locally using the Firebase Local Emulator Suite.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→pass | 14,096 | 7,086 | -50% | 1 | 1 | 0% | 2,388 | 1,731 | -28% | 0 | 0 | — |
case-02 | fail→pass | 14,103 | 4,984 | -65% | 1 | 1 | 0% | 2,541 | 1,563 | -38% | 0 | 0 | — |
case-03 | fail→pass | 15,255 | 5,779 | -62% | 1 | 1 | 0% | 2,507 | 1,738 | -31% | 0 | 0 | — |
case-04 | pass→pass | 7,917 | 5,821 | -26% | 1 | 1 | 0% | 1,498 | 1,703 | +14% | 0 | 0 | — |
case-05 | pass→pass | 11,488 | 11,028 | -4% | 1 | 1 | 0% | 2,185 | 2,676 | +22% | 0 | 0 | — |
case-06 | pass→pass | 8,492 | 4,807 | -43% | 1 | 1 | 0% | 1,274 | 1,425 | +12% | 0 | 0 | — |
case-07 | pass→pass | 9,532 | 4,006 | -58% | 1 | 1 | 0% | 1,715 | 1,307 | -24% | 0 | 0 | — |
case-08 | pass→pass | 5,775 | 2,944 | -49% | 1 | 1 | 0% | 926 | 1,092 | +18% | 0 | 0 | — |
case-09 | pass→pass | 9,219 | 4,492 | -51% | 1 | 1 | 0% | 1,677 | 1,234 | -26% | 0 | 0 | — |
case-10 | fail→pass | 4,612 | 1,898 | -59% | 1 | 1 | 0% | 829 | 893 | +8% | 0 | 0 | — |
case-11 | fail→fail | 5,361 | 2,952 | -45% | 1 | 1 | 0% | 1,057 | 1,136 | +7% | 0 | 0 | — |
case-12 | fail→pass | 5,628 | 1,644 | -71% | 1 | 1 | 0% | 1,077 | 794 | -26% | 0 | 0 | — |
case-13 | pass→pass | 6,302 | 4,259 | -32% | 1 | 1 | 0% | 1,078 | 1,002 | -7% | 0 | 0 | — |
case-14 | pass→pass | 14,577 | 7,309 | -50% | 1 | 1 | 0% | 2,421 | 1,858 | -23% | 0 | 0 | — |
case-15 | fail→pass | 7,316 | 2,855 | -61% | 1 | 1 | 0% | 1,322 | 1,021 | -23% | 0 | 0 | — |
case-16 | fail→pass | 7,371 | 2,251 | -69% | 1 | 1 | 0% | 1,342 | 899 | -33% | 0 | 0 | — |
case-17 | pass→pass | 5,420 | 2,486 | -54% | 1 | 1 | 0% | 868 | 948 | +9% | 0 | 0 | — |
case-18 | pass→pass | 6,448 | 3,543 | -45% | 1 | 1 | 0% | 1,146 | 1,091 | -5% | 0 | 0 | — |
case-19 | pass→pass | 2,519 | 1,717 | -32% | 1 | 1 | 0% | 422 | 754 | +79% | 0 | 0 | — |
case-20 | pass→pass | 7,619 | 2,080 | -73% | 1 | 1 | 0% | 1,466 | 976 | -33% | 0 | 0 | — |
case-21 | pass→pass | 2,839 | 1,581 | -44% | 1 | 1 | 0% | 397 | 727 | +83% | 0 | 0 | — |
case-22 | pass→pass | 4,785 | 2,651 | -45% | 1 | 1 | 0% | 770 | 1,055 | +37% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted. The headline lift of +32 percentage points is the difference between those two pass rates over the 22 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
| Model | Method | Date | Lift |
|---|---|---|---|
| gemini-3.6-flash | verified | 7/24/2026 | +50% |
Other measured skills in the registry, with their headline benchmark lift.