Lux Perpetua

  • Next.js /

  • TypeScript /

  • Sanity /

  • GSAP /

Website
lux-perpetua-hero
lux-perpetua-diagram-flow

I designed and developed the content architecture in Sanity around the relationships between artists, artworks, and exhibitions. To keep the CMS scalable, I built a Factory Pattern that generated recurring field structures and automatically included English versions of each field, reducing repetitive schema work by approximately 80%. GROQ queries then resolved the nested relationships between content without duplicating data or creating unnecessary requests.

On the frontend, I built the bilingual experience with Next.js and created the site's visual interactions using GSAP and CSS Grid. The result was a system where exhibitions could automatically surface their associated artworks and artists, while the team could manage and expand the content directly through Sanity without rebuilding pages manually.

  • lux-perpetua logo
  • [01]

    26+

    Exhibitions

  • [02]

    14

    Artist

  • [03]

    80%

    Less schema work