A real-time crowdsourced app to find available charging outlets, built with SwiftUI and Firebase.
- 🗺️ Live Outlet Map (available/taken)
- 👥 Crowdsourced Updates
- 🎯 AR Mode for finding hidden outlets
- 🔔 Smart Notifications
- 🏆 Gamification (reward points for accurate reporting)
- iOS 15.0+
- Xcode 13.0+
- Swift 5.5+
- CocoaPods
- Clone the repository:
git clone https://github.com/yourusername/InstaCharge.git
cd InstaCharge- Install dependencies using CocoaPods:
pod install-
Open
InstaCharge.xcworkspacein Xcode -
Create a new Firebase project and add your
GoogleService-Info.plistto the project -
Build and run the project
- Firebase/Auth
- Firebase/Firestore
- Firebase/Storage
- MapKit
- ARKit
- RealityKit
The app follows the MVVM (Model-View-ViewModel) architecture pattern:
- Models: Data structures and business logic
- Views: SwiftUI views for the user interface
- ViewModels: State management and business logic
- Managers: Location and other system services
- Real-time outlet status display
- Custom map annotations
- Outlet reporting functionality
- ARKit integration for outlet discovery
- 3D visualization of nearby outlets
- Distance and direction indicators
- Points system
- Achievement tracking
- Profile customization
- Email/password authentication
- User registration
- Profile management
- Fork the repository
- Create your 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.
- Firebase for backend services
- Apple for SwiftUI and ARKit
- The open-source community for inspiration and support