Skip to content

anubhavxdev/Smart-commute-ios

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

13 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

SmartCommute

SmartCommute

Ride anywhere. Built in SwiftUI.


Built for every commute.

SmartCommute is a beautiful, full-featured ride-hailing app designed and built entirely in SwiftUI. From your first ride to your daily commute, everything flows naturally.

35+ meticulously crafted screens β€” designed to get you where you're going, fast.


What you can do.

πŸ“ Book a ride in seconds

Map-first interface. Find your pickup and destination. See drivers around you. Book instantly.

πŸ—ΊοΈ Track your driver live

Watch in real time as your driver arrives. See the exact route. Know your ETA down to the minute.

πŸ’³ Pay your way

Multiple payment methods built in. UPI. Cards. Wallet. Whatever works for you.

πŸ“… Plan ahead

Schedule rides days in advance. Set them to repeat on weekdays. No scrambling at rush hour.

πŸš— Share the ride

Carpool with colleagues on the same route. Save money. Save the planet.

🎨 Customize everything

Dark mode. Light mode. 11 Indian languages. Accessibility for everyone.


Features that matter.

πŸ” Authentication

  • Seamless email/password login
  • OTP verification with auto-advancing input
  • Real-time validation & error handling

πŸ—ΊοΈ Smart Maps

  • Edge-to-edge interactive map
  • 10 live drivers with real-time positions
  • Route polylines with precise distance calculation
  • Custom pickup and drop pins

🎯 Booking Made Simple

  • Full-screen location search
  • 10 predefined Bangalore locations
  • Saved places (Home, Office) for quick access
  • Vehicle choice: Bike, Auto, Cab, Parcel

πŸ’° Transparent Fares

  • Dynamic pricing based on actual distance
  • Detailed fare breakdown with GST
  • Fare comparisons across vehicle types
  • Popular route suggestions

πŸ“‘ Live Tracking

  • Real-time driver movement on map
  • Animated progress visualization
  • ETA countdown
  • One-tap SOS, Call, Chat, Share
  • In-App Chat: Real-time messaging with quick-reply chips and typing animations
  • Haptic Feedback: Tactile interaction patterns for success, error, and impact
  • Skeleton Loading: Shimmer modifiers for smooth state transitions

πŸ“ Multi-Stop Rides

  • Add up to 3 intermediate stops
  • Timeline visualization
  • Per-stop fare estimation

πŸ“Š Ride History & Insights

  • Past rides with filters & search
  • Detailed trip receipts
  • Weekly spending analytics
  • Vehicle usage breakdown
  • Environmental impact tracking

πŸ’Ό Wallet & Payments

  • Multiple payment methods
  • Transaction history
  • Smart defaults & quick access
  • Corporate billing support
  • Promo Codes: Integrated coupon application with dynamic fare reduction
  • Surge Pricing: Real-time demand-based multipliers with visual transparency
  • Formal Cancellation: Multi-reason cancellation workflow with fee transparency

πŸ› οΈ Commute Tools

  • Fare estimator
  • Ride scheduling with recurring options
  • Favorite drivers management
  • Saved addresses with custom icons

🏒 Corporate Dashboard

  • Budget tracking
  • Team activity leaderboard
  • Expense reports
  • Company policy management

🌍 Customization

  • Dark mode, Light mode, System
  • Accent color picker
  • 11 language support with progress indicators
  • Accessibility settings: font size, contrast, presets

πŸ“ž Support

  • Searchable FAQ
  • Quick-action support (Chat, Call, Email, Ticket)
  • Help & emergency contacts
  • In-app issue reporting

Built with SwiftUI.

Every pixel. Every interaction. Every animation. Built entirely in Apple's modern UI framework.

@StateObject var viewModel = DashboardViewModel()
@State var showLocationSearch = false

var body: some View {
    ZStack {
        // Map-first interface
        RouteMapView(pickup: $viewModel.pickup, destination: $viewModel.destination)
            .ignoresSafeArea()
        
        // Floating actions with glassmorphism
        VStack {
            HStack {
                Button(action: { showLocationSearch = true }) {
                    Image(systemName: "magnifyingglass")
                        .font(.system(size: 16, weight: .semibold))
                }
                .buttonStyle(.bordered)
                
                Spacer()
            }
            .padding()
            
            Spacer()
        }
        .sheet(isPresented: $showLocationSearch) {
            LocationSearchView(pickup: $viewModel.pickup, destination: $viewModel.destination)
        }
    }
}

The result? Smooth. Fast. Responsive. No compromise.


Designed for iOS 17+.

Built with the latest iOS capabilities:

  • NavigationStack for fluid navigation across 35+ screens
  • MKMapView via UIViewRepresentable for powerful mapping
  • async/await for modern networking
  • MVVM + State Machine for predictable app state
  • @EnvironmentObject for shared auth state
  • Glassmorphism effects with .ultraThinMaterial
  • Spring animations and custom transitions

Tech Stack.

Frontend

Backend & Services

Architecture & Tools


Quick Overview.

Category Details
Language Swift 5.9+
Framework SwiftUI
Minimum OS iOS 17.0
Architecture MVVM + State Machine
Screens 35+
Backend Node.js + Express (Optional)
Maps MapKit + MKDirections
State Management @StateObject, @Published, @EnvironmentObject

Get started.

Clone the repo.

git clone https://github.com/anubhavxdev/Smart-commute-ios.git
cd Smart-commute-ios

Open in Xcode.

  1. Open SmartCommute.xcodeproj
  2. Select iPhone 16 Pro simulator (or your device)
  3. Press Cmd + R

Log in.

Use any email and password. The app works with mock data β€” no backend required to explore.

Want a real backend? Start the Node.js server:

cd Backend && npm install && npm start

What's inside.

SmartCommute/
β”œβ”€β”€ App/                    # Entry point & routing
β”œβ”€β”€ Models/                 # Data structures (Sendable)
β”œβ”€β”€ ViewModels/             # MVVM state management
β”œβ”€β”€ Views/                  # 35+ screens, organized by feature
β”‚   β”œβ”€β”€ Onboarding/
β”‚   β”œβ”€β”€ Auth/
β”‚   β”œβ”€β”€ Dashboard/
β”‚   β”œβ”€β”€ Map/
β”‚   β”œβ”€β”€ Tracking/
β”‚   β”œβ”€β”€ Menu/
β”‚   β”œβ”€β”€ Profile/
β”‚   β”œβ”€β”€ History/
β”‚   β”œβ”€β”€ Receipt/
β”‚   β”œβ”€β”€ Rating/
β”‚   β”œβ”€β”€ Wallet/
β”‚   β”œβ”€β”€ Payments/
β”‚   β”œβ”€β”€ Settings/
β”‚   β”œβ”€β”€ Theme/
β”‚   β”œβ”€β”€ Language/
β”‚   β”œβ”€β”€ Accessibility/
β”‚   └── Components/         # Reusable UI elements
β”œβ”€β”€ Services/               # Networking & API
└── Backend/                # Node.js + Express (optional)

Design System.

Element Value
Primary #FAD035 β€” SmartCommute Yellow
Accent #000000 β€” Deep Black
Cards 16-30px corners, soft shadow, white/light
Typography SF Pro Display / SF Pro Text
Animations Spring ease, scale & fade transitions
Material Glassmorphism with .ultraThinMaterial

Roadmap.

βœ… Phase 1 β€” Core (Complete)

  • Splash & onboarding
  • Authentication & OTP
  • Map dashboard with live drivers
  • Location search & routing
  • Vehicle selection & booking
  • Live tracking
  • Ride rating & receipt

βœ… Phase 2 β€” Extended (Complete)

  • Multi-stop rides
  • Scheduled rides
  • Ride sharing / carpool
  • Emergency SOS
  • Payment methods
  • Fare estimator
  • Corporate dashboard
  • Commute insights & analytics
  • 11-language support
  • Dark mode & theme customization
  • Accessibility settings
  • Notifications
  • Help & support
  • Profile & preferences

βœ… Phase 3 β€” Production Polish (Complete)

  • Ride cancellation flow with reason selection
  • Surge pricing engine with UI overlays
  • In-app chat with quick replies
  • Promo code integration
  • Haptic feedback system (Semantic patterns)
  • Centralized Design System (Design Tokens)
  • Skeleton loading states (Shimmer effects)

🚧 Phase 4 β€” Coming Soon

  • Real-time GPS tracking (CoreLocation)
  • Firebase authentication
  • Payment gateway integration
  • Push notifications (APNs)
  • Driver companion app
  • Real-time chat (WebSocket integration)

Contributing.

We welcome contributions. Fork the repo, create a feature branch, and send a pull request. Let's build something great together.


License.

Open source under the MIT License.


Built with πŸ’› and SwiftUI by @anubhavxdev

SmartCommute β€” Ride anywhere, designed in SwiftUI.

GitHub β€’ Portfolio β€’ Email

About

A Rapido-style ride-hailing iOS application built with SwiftUI & Node.js

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors