An AI-powered car modification companion for SwiftUI/iOS. Acari helps car owners plan, budget, and visualize mods for their specific vehicle — and find real-world help (mechanics, detailers, tow trucks) when they need it.
Built for a Hack the Valley - Hackdays hackathon; powered by Firebase Auth, Google's Gemini API (text, image, and Veo video), and the Google Places API.
- Onboarding flow that captures the user's car (make, model, year, colors, mod budget) and generates a custom AI sticker/decal of their exact vehicle for the dashboard
- At-a-glance budget summary card (spent / planned / remaining)
- Quick access to every feature below, tailored to the user's car make
- Describe a mod — pick a preset (widebody kit, lowered + black rims, matte wrap, racing livery) or type a custom prompt. You will get image-edits of your own car photo
- Upload a part — upload a photo of a real part. Composites it realistically onto the user's car instead of guessing a generic version
- Upload 2–3 photos of the car and pick a backdrop theme (sunset highway, Tokyo night, track day, etc.)
- Veo 3.1 generates a short cinematic clip: two slow pans across the parked car, then a hard cut to it driving through the chosen scene
- Save directly to Photos
- Gemini-powered chatbot scoped to the user's specific make/model
- Gives step-by-step repair instructions for DIY-friendly jobs, and flags when a job needs a professional
A single hub covering four categories:
| Category | What it does |
|---|---|
| Mechanical Work | Pick a service (oil change, brakes, general service, etc.) → Get an estimated cost & time → Google Places surfaces top-rated shops nearby |
| Detailing | Same flow for exterior wash, interior, full detail, ceramic coating |
| Emergency Services | Towing, jump starts, lockouts, flat tires — wider search radius, faster path to help |
| Maintenance Log | Fully local tracker (no AI) — log tire/brake/rotor/fluid changes with date, odometer reading, cost, and notes; see "last done" at a glance |
- Manually add parts you've already found (with photo + cost)
- Ask Gemini where to buy a specific part, scoped to your car — one tap adds it to your list
- Track spent vs. planned vs. budget with progress visualization
- UI: SwiftUI (iOS)
- Auth: Firebase Authentication (Email/Password)
- AI: Google Gemini API
gemini-3.6-flash— chat, cost/time estimates, part suggestions (structured JSON)gemini-3.1-flash-image-preview— sticker generation, mod visualization, part compositingveo-3.1-generate-preview— cinematic reveal video generation
- Location/Places: Google Places API (New) — Text Search, biased by geocoded location
- Xcode 16+
- An iOS 26.2+ deployment target (adjust as needed)
- A Google AI Studio API key (Gemini + Veo)
- A Google Cloud project with Places API (New) enabled
- A Firebase project with Email/Password auth enabled
git clone https://github.com/Akkipr/acari.git
open HackDays.xcodeproj- In Firebase console: Authentication → Sign-in method → enable Email/Password.
- Add an iOS app in the Firebase console, download
GoogleService-Info.plist, and drag it into the Xcode project (checked for your app target). - In Xcode: File → Add Package Dependencies →
https://github.com/firebase/firebase-ios-sdk→ add the FirebaseAuth product.
Open Secrets.swift and set:
enum Secrets {
static let geminiAPIKey = "your-key"
static let googlePlacesAPIKey = "your-key"
}
⚠️ Do not ship these in a production client binary.
Select a simulator or device and hit Run. On first launch you'll be prompted to sign in — create an account (or use a demo user you've set up in the Firebase console) and build your garage profile.
- Maintenance log distances/mileage are tracked in kilometers — swap to miles in
MaintenanceRecord/MaintenanceTrackerViewif needed. - Veo video generation typically takes 1–3 minutes and is billed per output second — be mindful of costs during testing.