What Fellow Founder Actually Is
Fellow Founder is a professional networking platform built specifically for entrepreneurs, founders, investors, and business professionals. At its core, it replaces physical business cards with digital ones — but it goes far beyond that. The app combines contact management, QR/NFC card exchange, event discovery, community groups, testimonials, analytics, and subscription billing into a single mobile experience.
The platform serves multiple personas: Founders (technical, business, co-founder seekers), Investors (angel, VC, seed-stage), Freelancers, Students, and VIP members. Each persona gets a tailored profile experience with relevant fields like startup stage, niche, and what they're looking for.
Architecture Overview
The system is split into two main components:
Flutter Mobile App (v5.1.1) — Cross-platform iOS and Android application using BLoC/Cubit pattern for state management. The app communicates with the backend via REST APIs over HTTP, with Firebase handling push notifications, analytics, and crash reporting.
FastAPI Backend — Python-based REST API using SQLModel (SQLAlchemy + Pydantic) with MySQL database. The backend is containerized with Docker and deployed on AWS. It includes a Starlette Admin panel for operations management, APScheduler for background tasks, and integrates with AWS S3 for asset storage, Razorpay for Indian payments, and Apple StoreKit for iOS subscriptions.
Key Features and How They Work
Digital Business Cards
Every user profile acts as a digital business card. Users can create multiple profiles under different personas (Founder, Investor, Student, etc.). Each profile contains personal info (name, profession, location, profile picture/video), business details (company name, niche, stage, website), social links, a gallery, and testimonials. Profiles are shareable via unique UUID-based QR codes or NFC physical cards.
QR Code & NFC Card Exchange
The app supports both QR code scanning and NFC card tapping for instant contact exchange. When User A scans User B's QR code (or taps their NFC card), a connection request is sent. The receiver can approve or reject. The physical NFC cards come in standard and customized variants with three theme options (Black, White, Green).
AI-Powered Contact Management
Beyond fellow app users, the app manages external contacts. Users can manually create contacts, import from their device, or use AI-powered contact creation which classifies relationships automatically. The AI contact feature uses Google ML Kit text recognition for OCR-based business card scanning — point your camera at a physical card and it extracts the contact details.
Events & Communities
The platform includes event discovery and management. Users can browse startup events, meetups, and conferences, save events they're interested in, and even create their own organizabale events with RSVP tracking. Communities allow users to join niche-based interest groups.
Testimonials & Social Proof
Users can collect testimonials from their connections, building credibility within the network. Testimonials are displayed on profiles and can be managed through the gallery system.
Subscription Plans & Payments
Fellow Founder monetizes through tiered subscription plans (Startup, Business, Unicorn) with different validity periods. Payments are handled through Razorpay for Android/India and Apple In-App Purchases for iOS. The system supports coupons, referral rewards (every 3 referrals earns 1 month free Startup plan), and billing history.
Backend Deep Dive
Database Design
The backend uses MySQL with SQLModel ORM. Key tables include: Users (core account with email/phone auth), UsersProfiles (JSON-based flexible profile data with personal/business/social/gallery/assets/testimonial fields), ConnectRequests (connection approval workflow), Contacts (external contact management), SpecialContacts (curated featured contacts), Events, OrganisableEvents, Communities, Testimonials, Orders/Subscriptions, and NFC Cards.
Profile data is stored as JSON columns, allowing flexible schema evolution without migrations. This was a deliberate choice — different personas need different fields, and JSON lets us adapt without constant database changes.
Authentication
Authentication supports both phone (SMS OTP) and email (email OTP) verification. JWT tokens (HS256) are issued with 15-minute expiry. The system supports both 'Bearer ' and raw token formats in the Authorization header. Sessions track FCM tokens per device for push notifications. A migration flow exists for users transitioning between auth methods.
API Structure
The API is organized into modular routers: /auth (phone/email OTP), /user (profiles, connections, referrals, cards), /contacts (CRUD + AI contact creation), /payments (Razorpay + Apple), /events, /communities, /testimonials, /news, /notifications, /zap (analytics reports), /appointments (call booking), /incubators, and /vc-firms. Dashboard routes provide admin analytics.
Admin Panel
Starlette Admin provides an operational dashboard with custom views for analytics, user metrics, support requests, feedback, organizabale events, and special contacts. Authentication-protected with custom auth provider.
Frontend Architecture
Feature-Based Structure
The Flutter app follows a feature-based directory structure: lib/ui/ contains feature modules (home_screen, contacts, exchange, discover, settings, etc.), lib/services/ for business logic, lib/repositories/ for data access, lib/model/ for entities, and lib/widgets/ for reusable components.
State Management
BLoC pattern via flutter_bloc for complex state (ContactsBloc), Cubit for simpler flows (LoginCubit, RegisterCubit), and built-in setState for local UI state. BlocProviders are configured at the app root level.
Key Dependencies
Core: flutter_bloc, equatable, freezed_annotation. Firebase: core, analytics, crashlytics, messaging. UI: flutter_svg, lottie, shimmer, flutter_carousel_widget, flutter_card_swiper. ML/Scanning: google_mlkit_text_recognition, cunning_document_scanner, qr_flutter, qr_code_scanner. Storage: flutter_secure_storage, shared_preferences. Networking: http, connectivity_plus. Audio: flutter_sound, audio_waveforms. Utilities: flutter_contacts, share_plus, file_picker, image_cropper.
Custom Modules
The project includes several custom/forked packages: nearby_cross (custom nearby connectivity for offline exchange), uni_links (deep linking), flutter_sms (SMS sharing), searchfield (custom search dropdown), intl_mobile_field (international phone input), app_version_update (forced update checking), unique_identifier_3 (device identification), and photo_browser (image gallery).
Infrastructure & Deployment
The backend runs in Docker containers on AWS, with MySQL for the database, AWS S3 for file storage (presigned URLs for secure access), and Razorpay for payment processing. CI/CD uses Docker Compose for deployment. The mobile app distributes through Google Play Store and Apple App Store, with forced update checking to ensure users stay on compatible versions.
Challenges We Faced
JSON-Based Profile Flexibility vs. Query Performance
Storing profile data as JSON columns gives us schema flexibility but makes searching and filtering more complex. We use MySQL's JSON_EXTRACT and JSON_UNQUOTE functions for profile searches, which works but isn't as performant as indexed columns. For the current scale, this trade-off is acceptable.
Multi-Profile User Management
Supporting multiple profiles per user (a person can be both a Founder and an Investor) required careful design. The connection system works at the profile level, not the user level, so each profile has its own UUID, QR code, and connection state.
Payment Platform Differences
Handling Razorpay for Android and Apple In-App Purchases for iOS required separate payment flows, verification endpoints, and subscription management logic. Apple's subscription receipt verification is particularly complex compared to Razorpay's straightforward webhook model.
What's Next
The platform continues to evolve with features like Zap (professional analytics reports), appointment booking, incubator partnerships, VC firm connections, and enhanced AI capabilities for contact classification and matching.
Frequently Asked Questions
What tech stack does Fellow Founder use?
The mobile app is built with Flutter (Dart) using BLoC/Cubit for state management. The backend is a FastAPI (Python) REST API with SQLModel ORM, MySQL database, and runs in Docker containers on AWS. Firebase handles push notifications, analytics, and crash reporting. Payments use Razorpay (Android/India) and Apple In-App Purchases (iOS).
How does the digital business card system work?
Each user creates one or more profiles (Founder, Investor, Student, etc.) that serve as digital business cards. Profiles contain personal info, business details, social links, gallery, and testimonials. They're shareable via QR codes (scanned in-app) or physical NFC cards. When scanned/tapped, a connection request is sent that the receiver can approve or reject.
How does AI contact scanning work?
The app uses Google ML Kit text recognition for OCR. Users point their camera at a physical business card, the ML model extracts text, and the AI contact creation service classifies the relationship and structures the extracted data into contact fields. The classified contacts are then stored in the user's contact list.
What authentication methods are supported?
Both phone (SMS OTP) and email (email OTP) authentication are supported. JWT tokens with HS256 algorithm are issued with 15-minute expiry. The system supports migration between auth methods and tracks device sessions via FCM tokens for push notifications.
How are subscription payments handled?
Android users pay through Razorpay (Indian payment gateway) with order creation, payment verification, and receipt generation. iOS users pay through Apple In-App Purchases with subscription receipt verification. The system supports three plan tiers (Startup, Business, Unicorn), coupons, and a referral rewards program (every 3 referrals = 1 month free Startup plan).
What is the current app version and where can I download it?
The current version is 5.1.1 (build 854). It's available on Google Play Store (com.fellow_founder.app) and Apple App Store (ID: 6480413758). The backend API runs at https://backend.fellowfounder.in and the web app is at https://fellowfounderapp.com.