Marketplace · Mobile

Marketplace

Multi-shop marketplace with unified authentication (email code + Google/Yandex), 1:N stores, geo-based listings, and a mobile build.

2025·Full-stack
Spring BootMongoDBNext.jsCapacitorMapLibre GL

Context

Launching a niche marketplace required a single profile for both buyers and sellers, simple passwordless registration, and a simultaneous web + mobile presence. A map with geo-based listings was a mandatory part of the UX.

Solution

A single User model with three sign-in methods: email code, Google OAuth, Yandex OAuth. On top of it, a 1:N store model so a seller can run several storefronts. The web build proxies the API through Next.js rewrites; the mobile build does a static export and reaches the backend by an absolute URL through a single api() wrapper. The map is MapLibre GL.

Stack and architecture

  • Backend: Spring Boot, Spring Data MongoDB, Spring Mail (email OTP), Spring Security OAuth2, Spring Actuator.
  • Frontend: Next.js 16 (App Router), React 19.
  • Mobile: Capacitor 7 (@capacitor/{core,ios,android,app,browser,geolocation,splash-screen}).
  • Geo: MapLibre GL + react-map-gl.
  • API transport: env-aware fetch wrapper, dev rewrites in next.config.ts.

Role and outcome

We designed the unified auth, the store domain model, and a network layer that works identically on web and mobile. The MVP included scaffolding, registration, profile, and store creation — a foundation for expansion (items / search / payments / chat).

Similar project?

Discuss a similar task

Describe the task — we'll share relevant experience and estimate the implementation.