Inspiration I saw a TikTok about GeoSpy and was blown away by its ability to pinpoint a photo's location using AI. But when I tried to use it, I realized it wasn't accessible to the public — only to paying enterprise customers. I wanted to build a free, open alternative that anyone could use, especially journalists and fact‑checkers fighting misinformation every day.
What it does ProofPoint lets anyone upload a photo and type where it claims to be from. It sends the image to the Picarta AI geolocation API, predicts the real GPS coordinates, compares them to the claimed location, calculates a trust score, and displays a verdict on an interactive map. If the locations don't match, ProofPoint flags the image as likely misleading. It also includes a chatbot assistant, a simulated user account system, and a full landing page explaining use cases for newsrooms, dating safety, and social media.
How we built it We used React with TypeScript and Tailwind CSS for the frontend. The core logic calls the Picarta API to geolocate images and OpenStreetMap Nominatim to geocode the claimed location. We calculate the Haversine distance and a weighted trust score. The map is rendered with Leaflet. We built a mock authentication system using localStorage and a chatbot with keyword‑based responses. The entire app was scaffolded with Vite.
Challenges we ran into API access: We originally planned to use GeoSpy, but the developer demo required a manual approval process we couldn't wait for. We pivoted to Picarta, which had a similar REST API but less documentation. We had to reverse‑engineer the request format by inspecting their Python SDK.
Debugging the API connection: The API key wasn't being read from the .env file initially, causing cryptic console errors. We fixed it by properly configuring Vite's environment variables and restarting the dev server.
Git push struggles: A series of merge conflicts and remote‑tracking issues made pushing to GitHub a real challenge in the final hours. We learned the hard way about force‑pushing and cleaning up accidentally committed files.
Accomplishments that we're proud of We're incredibly proud of the UI design — the dark, OSINT‑inspired theme with the scanning animation, evidence breakdown, and interactive map feels like a real product, not just a hackathon demo. We're also proud that we built a functional AI integration in a weekend, something we initially thought would be far too complex.
What we learned How to build a user authentication flow (simulated with localStorage) and an account dashboard.
How to integrate a chatbot into a React app.
How to use the Leaflet mapping library to visualize geolocation data.
The importance of having fallback APIs and not relying on a single vendor.
What's next for ProofPoint We plan to publish the website publicly so anyone can use it for free. We're also working on a Slack bot that lets teams verify images directly in their workspace. Once we get access to the full GeoSpy API, we'll upgrade the AI backend for even higher accuracy.
Built With
- css
- html
- javascript
- react
- tailwind
- typescript
- vite
Log in or sign up for Devpost to join the conversation.