TheVent is an open-source anonymous social app where users can post feelings and thoughts, like posts, and reply to others.
| Layer | Technology |
|---|---|
| Frontend | Flutter + Material UI |
| Language | Dart |
| Backend Services | Firebase |
| Authentication | Firebase Authentication (Email/Password) |
| Database | Cloud Firestore |
| Media Storage | Firebase Storage |
| Navigation | Flutter Navigator (named routes + onGenerateRoute) |
| Image Picker | image_picker |
- Anonymous username-based login flow
- Create vents (posts), like vents, and reply
- Profile with optional profile picture
- Dark themed UI
- Android, iOS, and Web support from one codebase
- Flutter SDK (3.x)
- Android Studio / Xcode (for mobile)
- A Firebase project
git clone https://github.com/mclovin22117/theventapp
cd theventapp
flutter pub get- Create a Firebase project.
- Enable Authentication:
- Sign-in method: Email/Password
- Create Firestore Database.
- Create Firebase Storage bucket (if your region supports it).
- Configure FlutterFire:
flutterfire configureThis generates lib/firebase_options.dart and updates platform config files.
- Ensure
android/app/google-services.jsonexists. - The app already includes Google Services Gradle plugin setup.
flutter runTo target a specific device:
flutter devices
flutter run -d <device_id>Android release APK:
flutter build apk --releaseWeb:
flutter build web- If
firebase_options.dartorgoogle-services.jsonkeys are rotated, rerunflutterfire configureand rebuild. - Profile picture upload requires Firebase Storage to be available for your selected Firebase project region.
theventapp/
├── lib/
│ ├── main.dart
│ ├── firebase_options.dart
│ ├── models/
│ ├── screens/
│ └── services/
├── android/
├── ios/
├── web/
└── pubspec.yaml
- Fork the repository
- Create a branch
- Commit your changes
- Push and open a pull request
This project is licensed under the MIT License. See LICENSE.
