diff --git a/skills/firebase-basics/SKILL.md b/skills/firebase-basics/SKILL.md index 6ea918c9..f19ccf6c 100644 --- a/skills/firebase-basics/SKILL.md +++ b/skills/firebase-basics/SKILL.md @@ -1,10 +1,14 @@ --- name: firebase-basics +metadata: + category: Serverless description: >- Provides foundational Firebase CLI setup, CLI installation, version checks (`firebase-tools@latest --version`), CLI login (including --no-localhost), project creation, project selection (`firebase use`), and app config file downloads (`google-services.json`, `GoogleService-Info.plist`). Use ONLY for CLI login, project creation/switching, or downloading app config files. Don't use for Firebase Hosting deploy, Firestore, Auth, App Hosting, Data Connect, Crashlytics, or Remote Config. --- -# Prerequisites +# Firebase Basics + +## Prerequisites Complete these setup steps before proceeding: @@ -73,7 +77,7 @@ Complete these setup steps before proceeding: *Note: The `` must be 6-30 characters, lowercase, and can contain digits and hyphens. It must be globally unique.* -# Firebase Usage Principles +## Firebase Usage Principles Adhere to these principles: @@ -122,7 +126,7 @@ Adhere to these principles: `app/google-services.json` for Android, or a path to be linked by `xcode-project-setup` for iOS). -# References +## References - **Initialize Firebase:** See [references/firebase-service-init.md](references/firebase-service-init.md) @@ -135,7 +139,7 @@ Adhere to these principles: - **Android**: See [references/android_setup.md](references/android_setup.md) - **iOS**: See [references/ios_setup.md](references/ios_setup.md) -# Common Issues +## Common Issues - **Login Issues:** If the browser fails to open during the login step, use `npx -y firebase-tools@latest login --no-localhost` instead. diff --git a/skills/firebase-basics/references/ios_setup.md b/skills/firebase-basics/references/ios_setup.md index 52bfd830..add91492 100644 --- a/skills/firebase-basics/references/ios_setup.md +++ b/skills/firebase-basics/references/ios_setup.md @@ -1,6 +1,6 @@ # Firebase iOS Setup Guide -# ⛔️ CRITICAL RULE: STATE MANAGEMENT (OBSERVATION VS COMBINE) ⛔️ +## ⛔️ CRITICAL RULE: STATE MANAGEMENT (OBSERVATION VS COMBINE) ⛔️ When writing or updating SwiftUI code, you **MUST** prioritize the modern Swift **Observation framework (`@Observable` macro and `@State`)** as your default @@ -16,7 +16,7 @@ However, it is acceptable to use **Combine** (`ObservableObject`, `@Published`, If neither of those conditions are true, default to the Swift 5.9+ Observation framework. -# ⛔️ CRITICAL RULE: INITIALIZATION ORDER ⛔️ +## ⛔️ CRITICAL RULE: INITIALIZATION ORDER ⛔️ When using SwiftUI, you **MUST** ensure `FirebaseApp.configure()` is called **BEFORE** any Firebase-dependent state objects are initialized.