A feature-rich Flutter application for intelligent campus navigation with interactive maps, real-time room availability, seamless reservations, and custom POI management.
🚀 Features • 📱 Screenshots • ⚡ Quick Start • 🛠️ Tech Stack
|
Real-time campus navigation with color-coded buildings, custom POIs, and smart search |
Book rooms instantly with email confirmations and manage all your bookings |
Add, edit, and manage 12 categories of points of interest across campus |
- ✅ Interactive OpenStreetMap with smooth zoom & pan
- ✅ 6 Building Types (Classroom, Lab, Library, Restaurant, Admin, Sports)
- ✅ Color-coded Markers for instant recognition
- ✅ Building Selection with detailed room lists
- ✅ POI Toggle - Show/hide custom points of interest
- ✅ Real-time Updates - Refresh POIs on demand
- ✅ Multi-floor Support - Navigate through building floors
- ✅ Real-time Occupancy tracking with visual indicators:
- 🟢 Low (< 50%)
- 🟠 Medium (50-80%)
- 🔴 High (> 80%)
- ⚫ Occupied (Unavailable)
- ✅ Room Details - Capacity, floor number, equipment
- ✅ Available Rooms List - Searchable & filterable
- ✅ One-tap Reservation from map or list
- ✅ Quick Booking - Date, time slot, and purpose
- ✅ Email Confirmations - Automatic confirmation messages
- ✅ My Reservations - View upcoming and past bookings
- ✅ Cancel/Delete - Manage your reservations with ease
- ✅ Status Tracking - Pending, Confirmed, Completed, Cancelled
- ✅ Tabbed Interface - Separate upcoming & past views
- ✅ 12 Categories: Parking, Entrance, Exit, Toilet, ATM, Printer, WiFi, Cafeteria, Study Area, Sports, Emergency, Other
- ✅ Map Picker - Tap map to set POI location
- ✅ Custom Icons & Colors -
🅿️ 🚪🚻🏧🖨️📶🍕📚⚽🚨📍 - ✅ Search & Filter - Find POIs quickly by name or category
- ✅ Edit & Delete - Full management with confirmation dialogs
- ✅ Database Persistence - All POIs saved locally
- ✅ Unified Search - Find buildings, rooms, and POIs
- ✅ Real-time Results - As you type
- ✅ Smart Filtering - Filter by category, availability
- ✅ Direct Navigation - Tap result to navigate
- ✅ Empty State Handling - Helpful messages
- ✅ Material Design 3 - Modern, clean interface
- ✅ Gradient Cards - Eye-catching statistics
- ✅ Bottom Sheets - Smooth info displays
- ✅ Tab Controllers - Organized content
- ✅ Loading States - Clear feedback
- ✅ Error Handling - User-friendly messages
- ✅ Responsive Layout - Works on all screen sizes
![]() Home Dashboard Real-time stats & quick access |
![]() Interactive Map Campus-wide navigation |
![]() Building Details Room list & availability |
![]() Available Rooms Search & filter functionality |
![]() Quick Booking Easy reservation process |
![]() My Bookings Upcoming & past reservations |
![]() POI List All points of interest |
![]() Add POI Map picker & categories |
![]() POIs on Map Color-coded markers |
![]() Smart Search Buildings, rooms & POIs |
![]() Filter Options Category-based filtering |
![]() Room Details Occupancy & equipment |
![]() Email Confirmations Automatic booking emails |
![]() POI Details Bottom sheet info |
![]() Statistics Real-time analytics |
dependencies:
flutter_map: ^8.2.2 # Interactive maps
latlong2: ^0.9.0 # Geographic coordinates
sqflite: ^2.0.0 # Local database
path: ^1.8.0 # Path utilities
mailer: ^6.0.0 # Email service✅ Flutter SDK 3.0+
✅ Dart SDK 3.0+
✅ Android Studio / VS Code
✅ Git# Clone repository
git clone https://github.com/Kaabiiz/smart-campus-map.git
# Navigate to directory
cd smart-campus-map
# Install dependencies
flutter pub get
# Run the app
flutter runflutter run # Debug mode
flutter run --release # Release mode
flutter test # Run tests
flutter clean # Clean build
flutter doctor # Check setupsmart_campus_map/
├── lib/
│ ├── models/ # Data models
│ │ ├── building.dart
│ │ ├── room.dart
│ │ ├── poi.dart
│ │ └── reservation.dart
│ ├── screens/ # UI screens
│ │ ├── home_screen.dart
│ │ ├── map_screen.dart
│ │ ├── my_reservations_screen.dart
│ │ ├── available_rooms_screen.dart
│ │ ├── room_reservation_screen.dart
│ │ └── poi_list_screen.dart
│ ├── services/ # Business logic
│ │ ├── database_helper.dart
│ │ ├── reservation_service.dart
│ │ ├── poi_service.dart
│ │ └── email_service.dart
│ ├── widgets/ # Reusable widgets
│ │ ├── stat_card_widget.dart
│ │ ├── reservation_card_widget.dart
│ │ └── home_banner_widget.dart
│ ├── utils/ # Utilities
│ │ └── mock_data.dart
│ └── main.dart # Entry point
├── assets/ # Images & icons
├── screenshots/ # App screenshots
└── pubspec.yaml # Dependencies
| Feature | Description |
|---|---|
| 🗺️ Real-time Map | OpenStreetMap integration with custom markers |
| 📊 Live Occupancy | Color-coded room availability (Green/Orange/Red) |
| � 12 POI Categories | Parking, Toilets, ATMs, WiFi, Cafeterias, etc. |
| � Smart Booking | Date picker, time slots, instant confirmations |
| � Email System | Automatic confirmation emails with templates |
| � SQLite Database | Local persistence for POIs & reservations |
| � Unified Search | Find buildings, rooms, and POIs instantly |
| � Material Design 3 | Modern, beautiful, and responsive UI |
Contributions are welcome! Feel free to:
- 🍴 Fork the repository
- 🔨 Create your feature branch (
git checkout -b feature/AmazingFeature) - ✨ Commit changes (
git commit -m 'Add AmazingFeature') - 📤 Push to branch (
git push origin feature/AmazingFeature) - 🎉 Open a Pull Request
This project is licensed under the MIT License - see LICENSE for details.
- 🗺️ OpenStreetMap - Free map tiles
- 💙 Flutter Team - Amazing framework
- 📦 flutter_map - Map package
- ☕ Coffee - For keeping me awake!
If you found this project helpful:
- ⭐ Star the repository
- 🍴 Fork and contribute
- 📢 Share with others
- 💬 Provide feedback














