Inspiration: E-waste is the fastest-growing waste stream in the world, but most people just throw away broken electronics without realizing their old laptop might still have a $145 display or a perfectly good battery. We wanted to build something that actually helps people make smarter decisions about their broken devices, not just a spec sheet lookup but a real AI agent that thinks through the economics the way a repair technician would. SDG 12 (Responsible Consumption) gave us the mission.
What it does: You upload a photo of any broken device, or just pick one of five sample devices, and TechExtract figures out what every component is worth, then makes a final call: REPAIR, SALVAGE FOR PARTS, or RECYCLE. It shows you a full breakdown of every component with USD values, the reasoning behind the decision, and step-by-step actions you can take. No human input needed beyond the photo. The agent weighs repair cost vs resale value vs scrap value completely on its own.
How we built it: We used React, TypeScript, and Vite for the frontend with Tailwind CSS for styling, all deployed on Vercel. The AI analysis runs through Google's Gemini 2.0 Flash Vision API which handles component recognition, value estimation, and the final decision in one structured prompt. We also built a Demo Mode with pre-baked results so anyone can try the full experience without an API key, and a Live AI Mode where you paste your own Gemini key and analyze any real device.
Challenges we ran into: Getting Gemini to return clean JSON every single time was genuinely hard the model kept adding extra text outside the JSON block so we had to build a parsing layer that strips all of that out. On Windows, a database dependency called better-sqlite3 refused to install because it needs C++ build tools, so we had to remove it and redesign that part of the app entirely. Gemini API quota limits also hit us hard during testing, which is actually what pushed us to build Demo Mode in the first place, and that turned out to be a great decision.
Accomplishments we're proud of: The agent actually reasons through the decision rather than just labeling things, it looks at multiple economic factors and commits to a recommendation with real logic behind it, which felt like a genuine "AI that thinks and decides" moment. We're also really proud that the app works perfectly with zero setup in Demo Mode, so anyone can see the full experience instantly without any friction.
What we learned: Prompt engineering for structured output is way harder than it looks, you have to balance getting the model to reason creatively while also making it follow a strict JSON format, and those two things fight each other a lot. We also learned that building fallbacks and handling failures gracefully matters just as much as the main feature, especially when you're doing a live demo.
What's next for TechExtract: We want to connect real-time price feeds from eBay sold listings so the component values reflect actual current market prices instead of estimates. Down the line, a community feature where users contribute verified salvage values could build a really useful crowdsourced database. There's also a real use case for repair shops and refurbishers who need to triage devices quickly at intake.
Built With
- express.js
- gemini-2.0-flash-vision-api
- google-ai-studio
- lucide-icons
- node.js
- react
- tailwind-css
- typescript
- vercel
- vite
Log in or sign up for Devpost to join the conversation.