context
Each Makesales vendor needed their own website, but building individual sites for every vendor wasn't scalable. The solution: a dynamic storefront system that adapts to vendor preferences while sharing the same robust codebase underneath.
constraints
- >Had to load fast on slow networks (targeting Nigerian market)
- >Customization couldn't break core functionality or accessibility
- >SEO had to work per-vendor despite shared infrastructure
- >Shopping cart and checkout needed to work without login
approach
Built a theme engine that separated structure from style. Vendors customize colors, fonts, and layouts through the portal, while the storefront dynamically applies these preferences. Product pages use static generation for speed, with incremental regeneration for updates.
key decisions
- >Aggressive image optimization with Next.js Image component
- >Implemented anonymous checkout to reduce friction
- >Carefully implemented colors, fonts, to ensure that they conform to vendor's preference, not defaults.
outcome
Customers get a smooth, fast shopping experience tailored to each vendor's brand. Vendors can differentiate themselves without technical work. Cart abandonment decreased due to guest checkout and persistent cart state.