A virtual debate platform with AI-powered moderation and dynamic discussion features.
Watch the video walkthrough: YouTube - Thought Battle Demo
Timestamps:
0:00Authentication0:25Home Page0:45Joining a Debate Chat (with Moderator Bot)1:15Auto-Generated Debate Info Section1:33User Profile (no uploaded picture)1:39Editing User Profile2:00Creating Debate Chat2:19Joining Newly Created Debate2:30Auto-Generated Gemini Summary2:43Updated User Profile with Debate History2:55Mutual Shared State + Bot Demo
- Create or join debates on any topic.
- Built using Sendbird’s public group channels.
- AI moderation and user role support.
- Firebase Firestore stores user info and debate history.
- Firebase Storage handles profile pictures.
- Displays debate history for joined/hosted debates.
- Gemini API generates summaries for each debate side.
- Populates info section dynamically per debate.
- Neutral AI bot moderates each chat.
- Asks relevant questions and ensures civil discourse.
- Language: Kotlin
- Architecture: MVVM (Model-View-ViewModel)
- IDE: Android Studio
- Platform: Android
-
Sendbird SDK & Chat Platform API
Core real-time chat functionality, bot integration, and public group channel support. -
Firebase (Auth, Firestore, Storage)
Handles authentication, user data, profile images, and debate records. -
Gemini API
Generates concise summaries for both debate sides. -
Material Design Components
Used for consistent UI across buttons, icons, and cards. -
Glide
Smooth image loading and caching for user profiles. -
Retrofit
For interacting with external APIs (e.g., Sendbird Platform API).