A comprehensive conference management system built with Kotlin Multiplatform, featuring a mobile app, admin portal, and real-time server capabilities.
Toastmasters International is a global nonprofit organization dedicated to empowering individuals to become more effective communicators and leaders. Founded in 1924, Toastmasters has transformed nearly eight million lives through its unique learning environment.
This project was pitched to me by a friend who is the area director for District 37 of Toastmasters. The app is designed to enhance the experience of Toastmasters conferences by providing attendees with real-time information, schedules, and notifications, while giving administrators powerful tools to manage the event. Basically, a digital brochure in their pocket that could notify them!
| Android | iOS |
|---|---|
![]() |
![]() |
![]() |
![]() |
The project consists of three main components:
-
Mobile App (Kotlin Multiplatform)
- Built with Compose Multiplatform
- Available for both Android and iOS
- Real-time updates and notifications
- Conference agenda, maps and session information
-
Admin Portal (Web Application)
- Built in React
- Firebase authentication
- Real-time data management allowing for an interactive app
- Broadcast notifications to all attendees
- Comprehensive event management tools
- Access the admin portal at: District 37 Admin Portal
-
Backend Server (Ktor)
- Firebase Firestore integration for dynamic data
- RESTful API endpoints
- Secure authentication and authorization
The app is in internal testing stages, follow the guide here to gain access.
├── composeApp/ # Kotlin Multiplatform mobile app
│ ├── commonMain/ # Shared code across platforms
│ ├── androidMain/ # Android-specific code
│ └── iosMain/ # iOS-specific code
├── iosApp/ # iOS application entry point
├── server/ # Ktor backend server
├── event-manager/ # Admin portal web application
└── shared/ # Shared code between clients and server
- Real-time conference schedule updates
- Push notifications for important announcements
- Session information and speaker details
- Interactive maps and venue information
- Personal schedule management
- Networking features for attendees
- Real-time data management
- Broadcast notifications to all attendees
- Schedule management and updates
- User management and permissions
- Analytics and reporting
- Emergency announcements
- Firebase Firestore integration for dynamic data
- Secure authentication
- WebSocket support for live updates
- RESTful API endpoints
- Data synchronization across all platforms
- Kotlin 1.9.x
- Android Studio (for Android development)
- Xcode (for iOS development)
- Node.js (for admin portal)
- Firebase account and configuration
-
Mobile App Development
# Clone the repository git clone [repository-url] # Open in Android Studio # Build and run for Android # For iOS cd iosApp pod install # Open in Xcode and run
-
Admin Portal
cd client npm install --legacy-peer-deps npm run dev -
Backend Server
cd server ./gradlew run
- Create a Firebase project
- Add your configuration files:
google-services.jsonfor AndroidGoogleService-Info.plistfor iOS- Firebase Admin SDK credentials for the server
- There's also an API Key hidden in a
.envfor the admin portal to access Firebase data
Please read CONTRIBUTING.md for details on our code of conduct and the process for submitting pull requests.
This project is licensed under the MIT License - see the LICENSE file for details.








