Inspiration
We build websites for small businesses in Lahore. Finding the right ones was always the hard part. A café with no website will never post "looking for a developer." Existing lead tools either make up contacts with AI or depend on expensive paid APIs. We wanted a tool that finds real businesses and shows the proof for every claim.
What it does
LeadDesk is a local AI assistant for finding prospects. You describe your product and pick a location, and it:
- Finds real businesses from open map data (OpenStreetMap and Overture Maps)
- Reads their websites and spots gaps, such as no mobile layout, no online ordering or an outdated site
- Checks phone numbers and emails across several sources
- Uses a local AI model to explain why each business may need your product, citing the evidence for every reason
How we built it
- Backend: Python, SQLite, DuckDB
- Frontend: React and Vite
- AI: Ollama running local models, with NVIDIA GPU support
- Search: self-hosted SearXNG
Rules run before AI. The model only sees a numbered list of collected facts, and every reason must cite one of them. A second "verifier" pass checks each reason and can only lower confidence, never raise it.
Challenges we ran into
- Small AI models often overstated facts, so we added automatic checks that flag unsupported claims.
- Chains with many branches got mixed up, for example a Lahore café showing Karachi phone numbers. We fixed this with identity cross-checks.
- Open map data had few phone numbers, so we combined several data sources.
Accomplishments that we're proud of
- Real-estate search in Gulberg, Lahore went from 0 to 95 businesses, 77 of them with phone numbers.
- Every claim links back to its source.
- 350+ automated tests.
- Fully local and private, with no paid APIs.
What we learned
- AI is most useful when it explains facts, not when it invents them.
- Open data becomes powerful when you combine sources.
- Showing the evidence builds trust.
What's next for LeadDesk personal assistant
- Run larger AI models on NVIDIA GPUs for better analysis
- Deeper website audits
- Competitor comparison for each lead
- A sales pipeline to track prospects
Built With
- docker
- duckdb
- fastapi
- geoparquet
- httpx
- javascript
- leaflet.js
- llama
- nominatim
- nvidia
- ollama
- openstreetmap
- overture-maps
- phonenumbers
- playwright
- python
- react
- searxng
- sqlite
- uvicorn
- vite
Log in or sign up for Devpost to join the conversation.