A React Native mobile application built with Expo for managing designated drivers in fraternities and sororities through a sobriety verification system.
- Node.js (v20.18.0 or higher)
- npm or yarn
- Expo CLI
- iOS Simulator (for Mac) or Android Emulator
- Supabase account
npm install- Create a new project in Supabase
- Copy your project URL and anon key
- Update the
.envfile with your credentials:
EXPO_PUBLIC_SUPABASE_URL=your_supabase_project_url
EXPO_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_keyIMPORTANT: This project uses Supabase Cloud ONLY (no local database)
- Project URL: https://hdkvgrpshgswdgsqihpp.supabase.co
- Dashboard: https://supabase.com/dashboard/project/hdkvgrpshgswdgsqihpp
- See
.supabase-config.mdfor detailed configuration info
-
Link to cloud project (first time only):
./scripts/db-helper.sh link
-
Push migrations to cloud:
./scripts/db-helper.sh push
-
Or manually via SQL Editor:
- Open: https://supabase.com/dashboard/project/hdkvgrpshgswdgsqihpp/sql/new
- Copy/paste SQL from migration files
- Click "Run"
./scripts/db-helper.sh status # Check migration status
./scripts/db-helper.sh dashboard # Open Supabase Dashboard
./scripts/db-helper.sh sql # Open SQL Editor
./scripts/db-helper.sh editor # Open Table Editor
./scripts/db-helper.sh check-users # Check users in database# Start the Expo development server
npm start
# Run on iOS
npm run ios
# Run on Android
npm run android
# Run on web
npm run webDSober/
├── lib/
│ └── supabase.ts # Supabase client configuration
├── types/
│ └── database.types.ts # TypeScript type definitions
├── App.tsx # Main application entry point
├── .env # Environment variables (not committed)
├── .env.example # Example environment variables
└── package.json # Project dependencies
- React Native (via Expo)
- TypeScript
- @supabase/supabase-js
- @react-navigation/native
- @react-navigation/stack
- @react-navigation/bottom-tabs
- expo-location
- expo-image-picker
- expo-camera
- expo-av
- @react-native-async-storage/async-storage
- User authentication with email/password
- Onboarding flow with SEP baseline establishment
- Event creation and management
- DD request and approval workflow
- SEP verification before DD sessions
- Active DD discovery with distance calculation
- Admin dashboard for managing requests and alerts
- Profile management
After completing this setup, you can begin implementing the features according to the tasks outlined in .kiro/specs/dsober-dd-management/tasks.md.