Commercial landing for a WB/Ozon fulfillment centre: in-house design system, lead form through our own BFF, shipped end to end.
A fulfillment centre serving Wildberries and Ozon sellers. S2 owned the whole contour: design, frontend, BFF, infrastructure and the production rollout - from a signed proposal to a live site on its own domain with a valid TLS certificate.
The client needed a conversion-focused one-pager with a quote request form, due within days. Three hard constraints: a lead must never be lost, even while the CRM is down; the site had to be compliant with Russian personal-data law from day one; and design changes could not depend on hand-rewriting markup.
Approach
Built an in-house design system on a canvas and ship it to code 1:1 with our own builder: desktop and mobile frames are sliced into a single responsive shell, so design is edited at the source, not in the markup.
Frontend is Next.js 15 (App Router) with a static export: no server runtime on the front, nginx serves the page as static files.
The form posts to our own Go BFF instead of the CRM directly: validation, idempotency, a transactional outbox in PostgreSQL and a retry worker - the lead survives CRM downtime.
The legal contour is baked into the build: privacy policy, personal-data consent, cookie banner, analytics enabled only after consent. The builder hard-fails if the design introduces a legal link with no route.
Production in the same window: Docker Compose on our own node, Caddy + Let's Encrypt, GitLab CI, task → branch → MR → main, no direct pushes.