Skip to content

feat: Add support for Firebase Auth as alternative to Google OAuth #1

@Om7035

Description

@Om7035

📋 Issue Description

Problem Statement

Currently, AuthKit only supports Google OAuth for social authentication. While Google OAuth is excellent for simple authentication, many developers want the flexibility to choose between:

  1. Google OAuth - Lightweight, focused authentication
  2. Firebase Auth - Full-featured auth with additional Firebase ecosystem benefits

This limitation forces developers to choose between AuthKit's simplicity or Firebase's comprehensive auth features.

Proposed Solution

Implement a provider selection system that allows users to choose between Google OAuth and Firebase Auth during setup, with:

  • Configuration-time provider selection
  • Seamless switching between providers
  • Unified API regardless of backend provider
  • Migration tools for existing installations

🎯 Use Cases & Benefits

When to Choose Google OAuth

  • ✅ Simple auth needs - Just need user login/signup
  • ✅ Minimal dependencies - No Firebase SDK overhead
  • ✅ Fast setup - Quick configuration
  • ✅ Cost-effective - No Firebase billing complexity
  • ✅ Lightweight - Smaller bundle size

When to Choose Firebase Auth

  • ✅ Firebase ecosystem - Already using Firestore, Storage, etc.
  • ✅ Advanced features - Phone auth, anonymous auth, custom claims
  • ✅ Real-time features - Firebase real-time database integration
  • ✅ Analytics - Built-in user analytics and insights
  • ✅ Scalability - Firebase's global infrastructure
  • ✅ Enterprise features - SAML, multi-tenancy, custom domains

Business Value

  • 📈 Broader adoption - Appeal to both simple and complex use cases
  • 🎯 Market positioning - "One auth system, multiple backends"
  • 🚀 Competitive advantage - More flexible than competitors
  • 👥 User choice - Let developers pick what fits their stack

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions