The strategic challenge
The small-ads market in Europe is dominated by a handful of large sites, and every country has its own local leader. The client needed a platform that works across borders from day one: one site, many languages, a shared pool of listings and users. Off-the-shelf classifieds scripts were out of the question — they limit growth, cope badly with large volumes of listings and give no control over SEO or performance.
Solution architecture
- Built from scratch, on 20 years of experience — architecture designed for a scale of hundreds of thousands of listings: Next.js 16, React 19 and PostgreSQL. No ready-made templates; every module written for what this particular site needs.
- Custom content management system — an admin panel with more than 25 modules: categories (drag and drop), listings, users, moderation and banned phrases, seller verification, banners, static pages, menus, email templates, newsletter, payments, custom SEO settings and feature switches — all without involving a developer.
- 16 language versions — PL, EN, DE, FR, ES, IT, NL, PT, CS, SK, HU, RO, SV, EL, UK, RU. Correct hreflang and separate URLs for every language.
- SEO-friendly URLs — a category / subcategory / region / city hierarchy, plus make and model for vehicles. A database of 47,000 towns and an automatic sitemap with thousands of URLs.
- User-to-user shipping — buyer and seller arrange delivery inside the site, with no middleman.
- Recruitment in the Jobs category — candidates apply through a form with their CV, and the employer receives applications in their own panel.
- Business accounts, plans and payments — a B2B offer and featured listings.
- Communication and trust — messages, push notifications, saved listings, seller reviews, complaints and a vehicle history report on automotive listings.
Under the hood
- Account security: NextAuth sign-in, two-factor verification, email verification, account recovery, sanitising of user content before it is stored (DOMPurify).
- Images processed automatically (sharp) and kept in S3 storage — lightweight thumbnails, full-size photos in a zoomable gallery.
- Geolocation (MaxMind GeoIP) suggests the location and the distance to a listing.
- Monitoring: Sentry catches errors on users' devices before anyone reports them.
- Lighthouse (desktop): Performance 91, Accessibility 98, Best Practices 96, SEO 92 — on a home page carrying hundreds of listing photos.
Result and ongoing work
The platform serves almost 280,000 listings and over 140,000 accounts in 16 languages, and the architecture is ready for further growth without a rewrite. The site is developed continuously together with the client — every new module (shipping, recruitment, business accounts) is added to the running platform with no downtime.