Skip to content

Latest commit

 

History

179 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Zenith (Flutter + Firebase)

Baseline setup for anonymous reveal-based social app. Uses Firebase Auth, Firestore, Storage, Riverpod, and GoRouter.

Prereqs

  • Flutter SDK 3.38+
  • Firebase CLI (npm i -g firebase-tools)
  • FlutterFire CLI (dart pub global activate flutterfire_cli and add $HOME/.pub-cache/bin to PATH)

Configure Firebase

Run from project root after logging into Firebase CLI:

flutter pub get
~/.pub-cache/bin/flutterfire configure --project <your-project-id> --platforms=ios,android,macos,web

This generates lib/firebase_options.dart and platform configs. Re-run if bundle IDs change.

Dev run

flutter run

Bulk import question bank

Use the script importer when you want to load many daily/weekly prompts into question_bank at once.

CSV format:

type,prompt,scheduledFor,status
daily,What is one small win you had today?,2026-03-10,scheduled
weekly,What is one goal you want to focus on this week?,2026-03-16,scheduled

Columns:

  • type: daily or weekly
  • prompt: required question text
  • scheduledFor: required YYYY-MM-DD
  • status: optional, defaults to scheduled

Notes:

  • Weekly rows should usually use a Monday scheduledFor date.
  • The importer writes to question_bank, not live questions.
  • Existing Cloud Functions still publish scheduled rows into questions on their scheduled dates.

Template file:

scripts/question_bank_import_template.csv

Run a dry run first:

bash scripts/import_question_bank.sh --file="../scripts/question_bank_import_template.csv" --dry-run

Import for real:

bash scripts/import_question_bank.sh --file="../scripts/question_bank_import_template.csv" --on-duplicate=skip

Duplicate modes:

  • fail: stop if a matching type + scheduledFor row already exists
  • skip: keep the existing row and skip the import row
  • overwrite: update the existing bank row for that date/type

Auth:

  • For local imports against a real Firebase project, use Application Default Credentials, for example by setting GOOGLE_APPLICATION_CREDENTIALS to a service account JSON file.
  • For emulator usage, point the script at your local Firestore emulator environment.

About

Working to improve the mental health of students at UMD

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages