Premium Doors Catalog — selektdoors.md
Interior Doors / E-commerce
Challenge
Selekt Doors Moldova needed a bilingual product catalog (Romanian and Russian) with advanced filtering across 200+ door variants, a quote-request workflow, and a lightweight admin for non-technical staff — all without a third-party CMS platform that would constrain the data model.
Solution
We built a custom TypeScript application: a Next.js front-end with server-side rendering for SEO and speed, a Node.js REST API backend, and a PostgreSQL database for product catalog and quote management. The custom admin panel lets staff add door variants, update photos, and manage quote requests without developer involvement.
Results
Product filter queries execute in under 400 ms. Staff manage 200+ SKUs independently through the admin panel. Organic search impressions tripled within three months of launch as SSR pages were indexed correctly.
The site is live at selektdoors.md.
Data protection compliance (Law 195/2024)
In September 2026, Moldova's Law 195/2024 on personal data protection came into force. We brought selektdoors.md into compliance: a cookie banner with equal-weight Accept all / Decline / Customize, Google Analytics blocked until analytics consent is given, and bilingual (RO/RU) Privacy, Cookies and Terms pages covering the CNPDCP authority, the 7 data-subject rights, data recipients, and international transfers (Google, Telegram). The footer now carries the legal entity, IDNO and address, plus a dedicated privacy@selektdoors.md contact. The quote-request form ships with an unchecked-by-default consent checkbox.
Under the hood: consent is stored in a cookie and localStorage, the choice posts to /api/consent/choice before hydration so nothing loads early, and redirects run through NEXT_PUBLIC_SERVER_URL so they resolve correctly behind nginx instead of falling back to localhost. We also delivered the paperwork the law requires off-site: a processing register, a 72-hour breach-notification procedure, a processor checklist, and a DPO assessment (a dedicated DPO is not required for this business profile).