Inspiration
My dad was born and raised in Puerto Rico, in a two-bedroom house my grandparents built brick by brick. He treated his cars the same way: a Mazda RX-3, a Toyota Starlet, an RX-7. He taught me and my brothers everything, from a simple oil change to rebuilding a rotary engine on a five-gallon Home Depot bucket. His lesson was simple: take care of your things and they last a lifetime, because when things really break, it gets expensive.
When his 2001 Acura Integra became mine, I kept up the engine and the suspension, but I skipped the transmission service. By the time I noticed, it was too late. Skipping one service cost me my dad's car.
I was lucky to have someone who taught me. Many students at Georgia State and people commuting into Atlanta depend on one car they can't afford to replace. They want to take care of it, but they don't know what's due, and hours of searching rarely gives a clear answer. My brother, a dealership technician, told us the most important thing on a repair order is what was recommended and never done. That's exactly what drivers never see.
What it does
DueTime is a bilingual (English/Spanish) web app that tells you what your car needs before it breaks. Enter a VIN, snap a photo of the VIN sticker, or type the year, make, model, and mileage.
- Has this been done? A checklist of services due by your mileage, ranked by what ignoring them can cost. Check off what's done, add roughly when, and it goes into your service log.
- Safety recalls from NHTSA, rewritten in plain language.
- Known problems for your exact car from NHTSA owner complaints, with a bar showing where owners report each failure and where your car sits. [Delete this sentence's second half if complaints aren't loaded.]
- Maintenance due now and fix it yourself or go to a shop? cards: difficulty, tools, time, and parts vs. shop cost.
- Buying mode: a pre-purchase checklist, questions for the seller, and a price check against 363,899 real private-sale listings.
- Your service log, exported to your own device.
No accounts. No tracking. Nothing about you is stored. The right to repair starts with the right to know.
How we built it
- Frontend: React + Vite, built as an installable Progressive Web App so anyone can open it from a link or QR code on any phone. Hosted on Vercel.
- Backend: FastAPI (Python), hosted on Render.
- Tiger Data: two hypertables of public data only.
listings: 363,899 cleaned Craigslist listings. Price comps usepercentile_cont, andtime_bucketgives price trends over time.complaints: NHTSA owner complaints with mileage at failure, which the NHTSA API doesn't expose. For each component we compute the mileage range where failures cluster and flag your car when it falls inside it:
$$P_{25}(\text{failure mileage}) \le m_{\text{your car}} \le P_{75}(\text{failure mileage})$$
[Delete the complaints bullet and the formula if not loaded.]
- Google Gemini API: turns raw recall, complaint, and price data into plain-language guidance in English or Spanish, and reads the VIN from a photo. The prompt forbids inventing recalls, counts, mileages, or prices. Numbers come from data; words come from Gemini.
- Resilience: Gemini falls back across models, then to Groq, then to raw safety data, so the app never shows a blank screen. Finished reports are cached for instant loads.
Challenges we ran into
- AI outages mid-hackathon. Gemini was overloaded (503), timing out (504), and over quota (429), and the model we started on was retired for new users. We built model fallbacks, a Groq backup, tighter timeouts, and report caching. -Power outages due to the hurricane: We did not stay on campus to do our work; we liked our home setups, but that cost us a lot of downtime when the storm would cut power
- Missing mileage data. The NHTSA complaints API has no mileage field, so we loaded NHTSA's raw complaints file into Tiger Data instead.
- Car names don't match. NHTSA calls a BMW 330Ci a "3 SERIES." There are several sub-models for cars.
- Messy real-world data. The Craigslist dataset included a car listed for $3 billion. We filtered prices, years, and mileage on import.
- Phone photos. HEIC files and huge images broke the VIN reader until we converted every photo to a small JPEG on the server.
- Deployment. A separate frontend and backend meant learning CORS the hard way.
Accomplishments that we're proud of
- A live, deployed app judges can open on their own phone.
- Real data end to end: NHTSA recalls and complaints, and 363,899 listings in Tiger Data.
- Fully bilingual and fully Zero Data.
- It still works when the AI doesn't.
What we learned
- How to keep AI honest: the model explains, the data decides.
- Car data is naturally time-series. Complaints and listings are events over time and mileage, which is exactly what Tiger Data is built for.
- In a live demo, designing for failure matters more than any single feature.
What's next
- "What's wrong with my car?" Describe a symptom and get likely causes with web sources, using Gemini with Google Search grounding (prototyped this weekend).
- A community where experienced DIYers answer model-specific questions.
- "Is this quote fair?" Compare a shop's quote to typical parts and labor.
- SMS access for drivers without a data plan, and a hand-off to book service at a shop.
Disclosure
Public datasets: NHTSA APIs and complaints file (U.S. government) and the Craigslist used-cars dataset (Kaggle). To build a report, car details are sent to NHTSA and Google Gemini, which process them under their own policies; we keep nothing. We used Claude (Anthropic) to help plan the project and scaffold the starter code; all design decisions, integration, data work, debugging, and the demo were done by our team during the event.## Inspiration
Built With
- claude
- css3
- fastapi
- gemini-api
- github
- google-gemini
- groq
- html5
- javascript
- nhtsa-api
- pillow
- postgresql
- pwa
- python
- react
- render
- tiger-data
- timescaledb
- uvicorn
- vercel
- vite
Log in or sign up for Devpost to join the conversation.