"Stop scrolling, start selling." > COMAT is a specialized C2C marketplace designed to solve the inefficiencies of informal university trade. By integrating Gemini Pro Vision AI, COMAT eliminates the "Brain Fatigue" and "Manual Entry Friction" found in traditional campus WhatsApp/Telegram groups.
Current campus resale relies on disorganized chat histories, leading to Information Overload and Decision Fatigue (Cognitive Load Theory). COMAT acts as a centralized "Guaranteed Buyer" poolβproviding an AI-searchable marketplace that ensures sellers get fair value and buyers find essentials without the mental exhaustion of combing through messages.
- π€ AI-Driven Listing (Gemini Pro Vision): Simply snap a photo. The AI identifies the item, suggests a category, and generates a draft price in Ksh, reducing listing time by ~70%.
- π¬ Seamless WhatsApp Bridge: One-tap negotiation. Connects buyers and sellers directly through their preferred communication channel without losing context.
- π Secure Campus Logistics: Integrated location-aware features for standardized, safe meetup points within the university geography.
- π‘οΈ Academic Trust: Secure Google Authentication restricted to university-affiliated accounts to ensure a vetted community.
- Frontend: Flutter (Dart) - Cross-platform performance.
- Backend: Firebase (Firestore NoSQL, Cloud Storage).
- AI Engine: Google Generative AI (Gemini 1.5 Flash).
- State Management: Provider/Clean Architecture.
To protect project integrity, sensitive configurations (.env and google-services.json) have been scrubbed. Follow these steps to deploy your own instance:
git clone git@github.com:fskamau/comat.git
cd comat
flutter pub getRename the .env.example file to .env and insert your API key:
GEMINI_API_KEY=your_key_here
- Create a project on the Firebase Console.
- Add an Android/iOS app.
- Download
google-services.json(Android) orGoogleService-Info.plist(iOS) and place them in the correct directories:android/app/google-services.jsonios/Runner/GoogleService-Info.plist
Ensure your Firestore rules allow authenticated read/writes for the products and users collections.
lib/
βββ core/ # Theme, Constants, & Shared Utils
βββ data/ # Models, API Services (Gemini/Firebase)
βββ presentation/ # UI Components (Auth, Listings, Profile)
βββ main.dart # App Entry & .env Initialization
Found a bug or want to add a feature (like AI-based price trending)? Open a PR!
This project is licensed under the MIT License - see the LICENSE file for details.