Technology Stack
The application architecture is composed of the following core technologies:Frontend Framework
Next.js 15- App Router architecture for modern React patterns
- Server Actions for seamless client-server communication
- Turbopack for fast development builds
- Server-side rendering (SSR) and static generation support
Backend Services
Firebase Suite- Firebase Authentication: User identity management with secure token-based auth
- Cloud Firestore: NoSQL document database for storing user data and argument maps
- Firebase Admin SDK: Server-side operations for secure data management
- AI orchestration framework by Google
- Integration with Google AI (Gemini 2.5 Flash model)
- Flow-based architecture for complex AI workflows
UI & Styling
TailwindCSS- Utility-first CSS framework
- Custom component library built with Radix UI primitives
- Dark mode support via next-themes
- Responsive design patterns
System Architecture
Key Architectural Patterns
Server-Side Processing
All AI analysis operations run on the server via Next.js Server Actions:User-Centric Data Model
All data is organized hierarchically under user documents:- Path-based security rules
- Efficient user-scoped queries
- Data isolation by default
- Simplified GDPR compliance
Client-Server Authentication Flow
AI Processing Pipeline
The application uses Genkit AI flows to process arguments:Analysis Flow Stages
Analysis Flow Stages
1. Input Processing
1. Input Processing
- Text input: Direct analysis
- URL input: Web scraping to extract content
- Long documents: Automatic summarization (>15k chars)
2. Argument Generation
2. Argument Generation
- Web search for opposing viewpoints
- Twitter/X search for social pulse
- Logical fallacy identification
- Hierarchical argument tree construction
3. Data Persistence
3. Data Persistence
- Save argument map to Firestore
- Associate with user ID
- Store metadata (creation date, topic)
4. Result Delivery
4. Result Delivery
- Return structured analysis to client
- Display interactive argument visualization
Deployment Architecture
The application is designed for Firebase App Hosting:- Automatic Configuration: Firebase environment variables injected at runtime
- Zero-Config Deployment: No manual configuration needed in production
- Fallback Support: Development mode uses local firebase config
Security Architecture
Security is enforced at multiple layers:- Client-Side: Firebase Auth state management
- Server-Side: Token verification via Admin SDK
- Database: Firestore Security Rules (user-ownership model)
- API Keys: Environment variables for external services
Performance Optimizations
- Turbopack: Fast development builds
- Server Actions: Eliminate API route boilerplate
- Streaming: Progressive result delivery for AI operations
- Path-Based Auth: No database reads in security rules
- Hierarchical Data: Efficient queries scoped to user collections
Next Steps
Firebase Setup
Learn how to configure Firebase services
Security Rules
Understand the data security model
Data Model
Explore the Firestore schema
AI Flows
View AI flow API reference