Back to company projects
Company ProjectWebflow Development

Project Relay

A sports-tech website where I got to go much deeper into Webflow interactions, custom code, animation tools, and third-party libraries.

The site itself supports a sports broadcasting platform, so the build had a lot more motion, media, and interactive behavior than a typical static marketing site.

Alias again. Same deal: real work, fake name, very real amount of time spent making interactions behave. :)

Build notes

Rive animations inside Webflow

Lenis smooth scrolling

Finsweet CMS utilities

Custom video tab controls

Swiper.js draggable interactions

Animated number scaling

Scroll-based text reveals

Custom CSS inverted corners

Why this one mattered

Webflow started feeling like a playground.

This was one of the projects where I stopped thinking of Webflow as only a visual development tool and started getting much more comfortable extending it.

I worked with Rive animations, Lenis smooth scrolling, Finsweet CMS utilities, Swiper.js, custom JavaScript, custom CSS, and several scroll-based interactions.

Basically, this was where “can Webflow do that?” started turning into “okay, let me try.”

Rive + motion

The animation part finally started clicking.

The project included Rive animations, and working with them here helped me get much more comfortable bringing interactive animation assets into Webflow and making them feel like part of the page instead of something pasted on top.

Smooth scroll

This was also when Lenis started becoming part of my toolkit.

I started using Lenis for smoother scrolling and then carried that experience into later projects whenever the site benefited from a softer, more polished scroll feel.

Custom video tabs

Native Webflow tabs. Custom behavior.

One section used Webflow's native Tabs component, but every tab contained its own video.

I added custom JavaScript so users could manually play each video and toggle the audio without the videos fighting the tab behavior.

It was one of those small features that made me realize I was getting much more comfortable writing code around Webflow instead of only staying inside its native tools.

Tab 01

Video plays when the user wants it to.

Tab 02

Audio stays under the user’s control.

Tab 03

Tabs switch without the videos getting confused.

Elsewhere in the build

Lots of small things doing their job.

Finsweet + CMS

Used Finsweet utilities to extend CMS-driven sections and make the content behavior more flexible.

Number scaling

Built an animated number interaction that moves through values from 1 up past 100.

Swiper.js

Added draggable, swipeable content using Swiper.js where native Webflow interactions were not enough.

Scroll text reveals

Used scroll-triggered text reveals to add movement without turning every section into an animation showcase.

Inverted corners

Used custom CSS to create those inverted / cut-out corner shapes that are simple to look at and weirdly annoying to build.

What I took from it

Webflow is nicer when you stop being afraid to leave Webflow.

This project made me much more comfortable combining Webflow with animation tools, JavaScript libraries, CMS utilities, and custom CSS whenever the native toolset needed a little help.

It also changed how I approached later projects. Instead of immediately asking whether Webflow had a native feature for something, I started thinking more about what behavior I actually needed and what tool made the most sense for it.

Turns out the answer is occasionally “some JavaScript and a mildly unreasonable amount of testing.”

End note

Rive, Lenis, Swiper, custom code...
Webflow survived.

Work with me