Client Site

Fluvial

A natural stone gallery built in Webflow from a Figma file, with one CMS collection feeding two gallery views, handed over live.

Year
2026
Scope
Figma to Webflow build. Six core pages plus utility pages, full project setup, CMS, Animation, complete on-page SEO, responsive across all breakpoints. Contracted April 2026 with a two week soft target and open QA rounds.
Client
Fluvial
View live site
Fluvial's homepage, About page and Collection page shown side by side

Project Details

A gallery that had to show the same collection two different ways

Fluvial sells natural stone, and the whole site rests on how the stone looks. The designs came to me as a finished Figma file, so my job was translation rather than invention: get it faithful, get it responsive, and build it so the studio could keep adding stock without coming back to me every time.

I set up the project properly before touching a section. Variables, a style system, components, then the CMS. That front-loading is what made the rest of the build fast and what made the QA rounds short.

  • A faithful translation of the Figma, not a loose interpretation
  • A site that works properly on every screen size, not just desktop
  • Stock that can be added and updated without developer involvement
  • Motion that supports the photography rather than competing with it
  • On-page SEO in place from launch rather than bolted on later
Fluvial collection page with series filters and a list or grid toggle

Early exploration

Sketches and wireframes

The gallery page needed a toggle that switched between two different views of the same collection. My first instinct was to build two galleries and show one at a time. That works until someone adds a new piece of stock, at which point they have to remember to add it twice, and eventually they will not. A build that depends on the client never making a mistake is a build that breaks.

Fluvial homepage section on the gallery standard, with a stone on a plinth

Working through the structure

Project results

One collection, one source of truth. I combined Webflow's native tabs with Finsweet Attributes so the tabs handle the view switch and the filter layer handles the content. Adding a new piece of stock means adding one CMS item, and it appears correctly in both views automatically.

The rest of the build followed Client-First naming throughout, so the class system stays readable for whoever picks it up next. GSAP animation was scoped in during the build and kept deliberately subtle, since the photography is the product.

The toggle went through QA unchanged. The client was happy with the result and has since discussed further work with the studio. The site is live.

Fluvial About page section on documentation, beside a photographed stone

The finished system

other projects

Need a Webflow site built, fixed or migrated?