A comprehensive mobile application for DePauw University's Pre-College Summer Program, built with React Native and Expo. This app serves administrators, mentors, and students with role-based access to manage and participate in the summer program.
๐ด Click here to watch the complete app walkthrough and live demonstration!
See the app in action with real-time features, user interactions, and complete functionality showcase
The DePauw Pre-College Program App is a role-based mobile application designed to enhance the summer program experience for all participants. With dedicated interfaces for Administrators, Mentors, and Students, the app streamlines communication, scheduling, and campus navigation.
- Real-time Dashboard - Monitor program statistics and activities
- User Management - Manage mentor and student accounts
- Schedule Management - Create and modify program schedules
- Room Assignments - Assign and track student accommodations
- Analytics & Reporting - View program engagement metrics
- Firebase Integration - Real-time data synchronization
- Mentor Portal - Personalized dashboard with daily schedules
- Student Management - View assigned students and track progress
- Resource Library - Access to mentor handbooks and guidelines
- Communication Tools - Connect with students and administrators
- Schedule Coordination - View and manage mentor shift assignments
- Interactive Campus Map - Explore DePauw University campus with 20+ locations
- Personal Schedule - View daily activities, classes, and events
- Mentor Connection - Access mentor information and contact details
- Campus Exploration - Discover academic buildings, residence halls, and facilities
- Program Information - Access to DePauw's official program resources
- React Native
0.76.9- Cross-platform mobile development - Expo SDK
~52.0.43- Development and deployment platform - React Navigation
7.x- Navigation and routing - Expo Vector Icons - Comprehensive icon library
- TypeScript - Type-safe development
- Firebase
11.6.0- Real-time database and authentication- Firestore for data storage
- Firebase Auth for user management
- Cloud Storage for file uploads
- AsyncStorage - Local data persistence
- Context API - State management
- Expo Dev Client - Custom development builds
- EAS Build - Cloud-based app compilation
- Document Picker - File import functionality
- Date-fns - Date manipulation utilities
Note: Screenshots will be added to showcase the modern UI design and user experience across all three user roles.
- Dark/Light Theme Support - Adaptive UI design
- DePauw Branding - Official university colors and assets
- Modern UI Components - Custom-designed interface elements
- Responsive Design - Optimized for various screen sizes
- Node.js (16.x or higher)
- npm or yarn
- Expo CLI (
npm install -g @expo/cli) - iOS Simulator or Android Emulator (optional)
-
Clone the repository
git clone <repository-url> cd GTG
-
Install dependencies
npm install
-
Start the development server
npm start # or expo start -
Run on device/emulator
# iOS npm run ios # Android npm run android # Web npm run web
For testing purposes, use these credentials:
| Role | Password | |
|---|---|---|
| Admin | [email protected] |
contact devlopers for password |
| Mentor | [email protected] |
contact devlopers for password |
| Student | [email protected] |
contact devlopers for password |
GTG/
โโโ src/
โ โโโ assets/ # Images, fonts, and static files
โ โโโ components/ # Reusable UI components
โ โ โโโ Button.js
โ โ โโโ Card.js
โ โ โโโ Header.js
โ โ โโโ ProfileAvatar.js
โ โโโ context/ # React Context providers
โ โ โโโ AuthContext.js # Authentication state
โ โ โโโ ThemeContext.js # Theme management
โ โโโ navigation/ # Navigation configuration
โ โ โโโ AppNavigator.js
โ โ โโโ AdminNavigator.js
โ โ โโโ MentorNavigator.js
โ โ โโโ VisitorNavigator.js
โ โโโ screens/ # Screen components
โ โ โโโ admin/ # Administrator screens
โ โ โโโ auth/ # Authentication screens
โ โ โโโ mentor/ # Mentor screens
โ โ โโโ visitor/ # Student screens
โ โโโ utils/ # Utility functions
โ โโโ firebaseConfig.js # Firebase configuration
โ โโโ scheduleService.js # Schedule management
โ โโโ emailService.js # Email integration
โโโ assets/ # Campus images and assets
โโโ android/ # Android-specific configuration
โโโ ios/ # iOS-specific configuration
โโโ App.js # Main application component
โโโ package.json # Dependencies and scripts
- Role-based Access Control - Three distinct user types with appropriate permissions
- Firebase Authentication - Secure user management
- Token-based Sessions - Persistent login state
- Data Validation - Input sanitization and validation
- Real-time statistics display
- Quick action buttons for common tasks
- Recent activity tracking
- Firebase-integrated data management
- 20+ Campus Locations mapped with high-quality images
- Interactive location cards with detailed information
- Category filtering (Academic, Residential, Dining)
- GPS coordinates and directions
- Virtual tour integration for select locations
- Dynamic schedule loading from Firebase
- Day-wise schedule organization
- Event type categorization (Classes, Meals, Activities)
- Search and filter functionality
- Real-time updates and synchronization
- Dedicated mentor portal with personalized dashboard
- Student assignment and progress tracking
- Resource library access
- Communication tools
The app is configured for deployment to both iOS App Store and Google Play Store using EAS Build:
# Build for iOS
eas build --platform ios
# Build for Android
eas build --platform android
# Build for both platforms
eas build --platform allapp.json- Expo configurationeas.json- EAS Build configuration- iOS Bundle ID:
com.depauw.gtg - Android Package:
com.depauw.gtg
- Push Notifications - Real-time alerts and announcements
- Offline Support - Cached data for offline usage
- Advanced Analytics - Detailed usage and engagement metrics
- Chat System - In-app messaging between users
- Calendar Integration - Sync with device calendars
- Document Management - File sharing and document repositories
- Biometric Authentication - Fingerprint/Face ID login
- Multi-language Support - Internationalization
We welcome contributions to improve the DePauw Pre-College Program App! Please follow these steps:
- Fork the repository
- Create a feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Lead Developer: Mian Abdullah
- Institution: DePauw University
- Program: Pre-College Summer Program
For technical support or questions about the app:
- Email: [email protected]
- Website: DePauw Pre-College Program
Built with โค๏ธ for DePauw University Pre-College Program
Empowering the next generation of scholars through technology