A Flutter application where users can spin a wheel to earn rewards daily.
- User authentication with Firebase
- Daily rewards system with spin wheel
- Mobile ads integration
- Referral system
- Withdrawal request system
- Flutter SDK 3.29.1
- Dart 3.7.0
- Android SDK 35 (minimum SDK 21)
Make sure you have Flutter installed. This project uses Flutter 3.29.1 and Dart 3.7.0.
flutter --versionThis project requires Firebase. You'll need to set up your own Firebase project:
- Create a new Firebase project at Firebase Console
- Add Android application to your Firebase project
- Use package name:
com.example.spin_to_earn(or update it in the project) - Follow Firebase instructions to download
google-services.json
- Use package name:
- Place your
google-services.jsonfile in theandroid/app/directory- An example file
google-services.json.exampleis provided for reference
- An example file
The app is configured to use Google's test ad unit IDs by default. For production:
- Create an AdMob account at AdMob
- Create ad units for banner, interstitial, and rewarded ads
- Replace the test ad unit IDs in
lib/services/ad_service.dartwith your real ones
flutter pub getflutter runlib/main.dart- App entry pointlib/screens/- App screens (auth, home, etc.)lib/providers/- State managementlib/services/- Firebase and other serviceslib/models/- Data modelslib/widgets/- Reusable UI components
- For GitHub, sensitive API keys and Firebase configurations have been removed
- The app will not fully function without your own Firebase and AdMob setup
- This is a demonstration project and not intended for production use without proper configuration
This project is open source under the MIT License.