Open comments for this post
Devlog #1 Heyyy!!! i’m sweta and i’m making a SAT prep app for international students. So, most prep apps assume cultural context American students already have — idioms, references, essay phrasing. International students often lose points not from weak math, but from never having heard a phrase like “the writing was compelling.” This app gives AI-generated explanations that adapt to the student’s education system and English level.
Stack: Flutter (one app for Android/iOS/web), Dart (Flutter’s language), Firebase (handles accounts/data, no server needed), Gemini API (generates explanations).
Installing Flutter
winget didn’t have it, so I cloned it from GitHub:
git clone https://github.com/flutter/flutter.git C:\flutter
Added it to PATH so the terminal recognizes the flutter command:
$env:Path += “;C:\flutter\bin”
Ran flutter doctor to check the setup.
VS Code + Android SDK
Installed the Flutter extension (pulls in Dart too) — had to restart VS Code before commands appeared. Installed Android Studio only to get the Android SDK in the background; all real coding happens in VS Code. Fixed missing command-line tools via Android Studio’s SDK Manager, and accepted licenses with flutter doctor –android-licenses.
Skipping the emulator
Emulators eat RAM my laptop doesn’t have spare. Testing on my real phone over USB instead — enabled Developer Options + USB debugging, allowed the popup, confirmed detection with flutter devices.
First run
flutter create sat_prep_app
cd sat_prep_app
flutter run
create makes a starter project with a demo app built in. run compiles and installs it on the connected phone. Slow first build, but it worked — proof the whole chain (Flutter → SDK → phone) connected properly.
Firebase setup
Created a free Firebase project (no billing), registered an Android app, placed the generated google-services.json config into android/app/. Added packages:
flutter pub add firebase_core
flutter pub add firebase_auth
flutter pub add google_sign_in
pub add installs pre-written code instead of writing it myself. firebase_core is required for any Firebase feature, firebase_auth handles sign up/login, google_sign_in adds Google login.
Linking Flutter to Firebase
dart pub global activate flutterfire_cli
npm install -g firebase-tools
firebase login
flutterfire configure
The FlutterFire CLI needed the separate official Firebase CLI too. The last command generated firebase_options.dart, auto-configuring Android, iOS, web, macOS, and Windows at once.
Making the app use it
Added Firebase initialization to the app’s startup code, swapped the demo app for a placeholder “Sign Up Screen Coming Soon” screen. Ran it again — showed up cleanly, no crashes, confirming Firebase is wired in.
What’s next
Real Sign Up and Login screens, connected to Firebase Authentication, then (country, education system, English level, SAT goals) (i’m using my phone not a emulator)