Alexey Belov
← All projects

DJ-M Shop

An e-commerce store for DJ equipment parts and accessories.

Next.jsStrapiTypeScriptTailwindZustandReact Query

Solution

  • Built a filterable, paginated catalog (FilterBar, MultiSelect, Dropdown, Pagination), product cards, and brand/set pages on Next.js Pages Router + TypeScript + Tailwind.
  • Integrated Strapi as a headless CMS — brands, categories, products, and offers are managed through Strapi Admin. Built an API proxy (/api/strapi/[...path]) that hides Strapi tokens from the client.
  • Built the cart on Zustand with localStorage persistence, hydrated behind a hasHydrated flag for correct SSR/CSR behavior.
  • Built a UI kit on Radix UI + shadcn/ui and Embla/Swiper carousels for the popular-products showcase.