01 / Challenge
Let the client manage content in multiple languages and assemble pages within the supplied design.
A multilingual website editors can build from predefined sections.
Architecture · CMS · Technical leadership
Hero banner
Projects list
Configurable sections
Let the client manage content in multiple languages and assemble pages within the supplied design.
Configurable Sanity sections map to React components in Next.js.

Editors control page content and composition. The team shares an architecture.
Page content and ordered sections
A matching React component
Consistent design and behaviour
Editors choose sections, change their order, and edit their content. Components keep the interface consistent.
Page address · content · sections
Select content · build navigation
Page address · content · sections
Language versions were stored as separate Sanity documents with links between translations. Each version could have its own content and page address.
Those links were used to select content and build the language switcher. Every language was available through a URL prefix; English also worked without a prefix.
The client received a multilingual website with CMS controls for both page content and composition. The team had a shared architecture for developing and adding sections. My main contribution was the application architecture and content model, multilingual support, deployment, and technical leadership.
I was responsible for application architecture, Sanity configuration, multilingual support, and deployment. The other developer and I shared the work on sections and components roughly equally.
Have a project, a technical challenge, or a collaboration in mind? Send me a message.