Experience the future of space travel with Mars Pass - an interactive SwiftUI app that brings your Mars journey to life!
I built this app to showcase what could be possible with creating a cool ticket system card that would have a 3D interactive element on it and be able to be moved around and looked at by the user.
- 🌍 Interactive 3D Mars Model: Powered by SceneKit with realistic Mars textures and animations
- 🎫 Dynamic Ticket Interface: Beautiful gradient-styled Mars Pass with interactive drag gestures
- 📱 Modern SwiftUI Design: Clean, intuitive interface following Apple's Human Interface Guidelines
- ⏰ Journey Progress Tracking: Real-time progress bar showing your journey to Mars
- 🎮 Touch Interactions: Responsive 3D rotation and wobble effects
- 🧭 Navigation System: Comprehensive menu system for easy app navigation
Interactive 3D Mars model with realistic textures and smooth animations
- SwiftUI: Modern declarative UI framework
- SceneKit: 3D graphics and animations
- UIViewRepresentable: Bridge between SwiftUI and UIKit/SceneKit
- USDZ Models: High-quality 3D Mars model integration
struct MarsPlanetView: UIViewRepresentable {
// SceneKit integration for 3D Mars visualization
// Automatic lighting and camera controls
// USDZ model loading and animation
}struct SceneKit: View {
// Interactive ticket interface
// Gesture handling for 3D rotations
// Progress tracking and animations
}// HomeView: Main navigation hub
// SettingsView: Comprehensive menu system
// DetailView: Dynamic content presentation- Xcode 15.0+
- iOS 17.0+
- Swift 5.9+
// In MarsPlanetView.createScene()
customNode.scale = SCNVector3(15, 15, 15) // Adjust Mars size
let rotateAction = SCNAction.rotateBy(x: 5, y: 2 * .pi, z: 0, duration: 50) // Rotation speed// In yearProgress() function
let startOfNextYear = dateFormatter.date(from: "2027-12-16")! // Modify arrival date// Mars-themed gradient colors
.orange // Primary Mars color
.orangeMars // Custom Mars orange
Color(red: 0.9, green: 0.2, blue: 0.2) // Mars surface redThis project is licensed under the MIT License - see the LICENSE file for details.

