Instalación y Configuración
Requisitos Previos
Software Necesario
- Flutter SDK (3.0.0 o superior) class="highlight">
1
flutter --version- Dart SDK (incluido con Flutter)
class="highlight">1
dart --version- Firebase CLI
class="highlight">1 2
npm install -g firebase-tools firebase --version
- Git
class="highlight">1
git --version- Node.js (18+ para Cloud Functions)
class="highlight">1
node --versionInstalación
1. Clonar el Repositorio
class="highlight">1 2
git clone https://github.com/SinCodigoLat/capi-app.git cd Capi-App2. Instalar Dependencias de Flutter
class="highlight">1
flutter pub get
3. Configurar Firebase
Opción A: Usando FlutterFire CLI
class="highlight">1
flutterfire configure
Esto te guiará para:
- Seleccionar plataformas (iOS, Android, Web)
- Seleccionar proyecto Firebase
- Configurar archivos de configuración
Opción B: Configuración Manual
- Android: Copiar
google-services.jsonaandroid/app/ - iOS: Configurar
GoogleService-Info.plisten Xcode - Web: Configurar en
web/index.html
4. Configurar Variables de Entorno
Crear archivo
.enven la raíz del proyecto:# Stripe STRIPE_PUBLIC_KEY=pk_live_... STRIPE_SECRET_KEY=sk_live_... # Zoom ZOOM_API_KEY=... ZOOM_API_SECRET=... # RevenueCat (iOS) REVENUECAT_API_KEY=... # N8N N8N_WEBHOOK_URL=https://...5. Configurar Cloud Functions
class="highlight">1 2
cd firebase/functions npm install
6. Configurar Firebase Emulators (Opcional)
class="highlight">1
firebase init emulators
Configuración por Plataforma
Android
- Configurar
android/app/build.gradle:class="highlight">1 2 3 4
android { compileSdkVersion 33 // ... }
Verificar
google-services.jsonenandroid/app/- Configurar permisos en
AndroidManifest.xmliOS
- Abrir proyecto en Xcode: class="highlight">
1
open ios/Runner.xcworkspace
Configurar
GoogleService-Info.plist- Configurar Capabilities:
- Push Notifications
- Background Modes
- Configurar Info.plist con permisos necesarios
Web
-
Configurar Firebase en
web/index.html -
Configurar
firebase-messaging-sw.jspara notificaciones -
Verificar CORS en Firebase Console
Configuración de Servicios Externos
Stripe
- Crear cuenta en Stripe
- Obtener API keys (Test y Live)
- Configurar webhooks en Stripe Dashboard
- Agregar webhook URL de N8N
Zoom
- Crear app en Zoom Marketplace
- Obtener API Key y Secret
- Configurar redirect URLs
- Agregar credenciales en Firebase
RevenueCat (iOS)
- Crear cuenta en RevenueCat
- Configurar App Store Connect
- Crear productos y offerings
- Configurar webhooks
N8N
- Configurar instancia de N8N
- Crear workflows necesarios
- Configurar webhooks
- Agregar URLs en variables de entorno
Verificación de Instalación
Ejecutar en Desarrollo
Web:
class="highlight">1
flutter run -d chromeAndroid:
class="highlight">1
flutter run -d androidiOS:
class="highlight">1
flutter run -d iosVerificar Firebase
class="highlight">1 2
firebase projects:list firebase use <project-id>
Verificar Cloud Functions
class="highlight">1 2
cd firebase/functions npm test
Troubleshooting
Problemas Comunes
- Error de dependencias: class="highlight">
1 2
flutter clean flutter pub get
- Error de Firebase:
- Verificar archivos de configuración
- Verificar permisos en Firebase Console
- Error de build:
- Verificar versión de Flutter
- Verificar configuración de plataforma
Próximos Pasos
- Estructura del Proyecto - Conoce la organización del código
- Backend Firebase - Entiende Firestore y servicios
Anterior: Arquitectura ← Siguiente: Estructura del Proyecto → - Error de Firebase:
- Dart SDK (incluido con Flutter)