Building HeiLocal, our own AI search engine for the Romanian web
Our own AI search engine for .ro websites: a distributed crawler, semantic product search, an AI assistant, a virtual wardrobe and AI-made marketing.
Technologies: Python, FastAPI, Qdrant, CLIP, MySQL, Node.js, .NET MAUI, MCP
The Challenge
HeiLocal started in 2026 as Softescu's own product: a search engine for the Romanian web that covers only .ro websites and finds products, services and information from a request written in plain words.
To get there, the platform had to discover Romanian online shops on its own, crawl them politely, extract structured product data from very different sites and keep the index fresh. The search had to understand meaning, not only keywords.
Our Solution
A distributed crawler discovers Romanian e-commerce domains and crawls them from several virtual machines that coordinate through a shared MySQL database. It respects robots.txt, slows down adaptively and signs its requests, so sites can verify who is crawling.
Products are extracted with templates for each shop platform. Their images get CLIP embeddings and colours, and text and images are indexed in Qdrant for semantic search. An AI assistant refines a request written in plain words and recommends the best results; the virtual wardrobe lets users try clothes on their own photo, generated with AI. A mobile app for Android and iOS, built with .NET MAUI, and an MCP server for AI assistants use the same search.
Marketing runs on AI as well: Claude plans the campaigns, videos, music and voiceovers are generated with AI, and our own MCP server publishes and schedules the posts on Facebook, Instagram, YouTube and LinkedIn, then reads the results back for the next round.