AI SaaS site with motion

An AI SaaS site with motion I proposed and built

Built in Webflow from a static design, animated with GSAP and SVG, then a technical SEO pass that took the site audit from 77 to 98.

legato.ai, home page
Client
Legato AI, software that helps SaaS platforms and implementation partners turn forward-deployed engineering (FDE) work into product
Role
Webflow developer, motion and technical SEOagency project via Upwork; static design supplied
Stack
  • Webflow
  • Webflow CMS
  • GSAP
  • Webflow Interactions
  • Custom JavaScript
  • Lottie
  • JSON-LD
Timeline
Launched September 2025ongoing support
77 → 98
Semrush site audit score
99 / 92
Lighthouse Performance, desktop / mobile
37
blog posts, each with schema generated from the CMS
4
schema types across the site

Overview

Legato sells a fairly abstract AI product to SaaS companies, so the site has to make the idea feel concrete. I received a static design and built the site in Webflow. The design had no motion, so I built a motion layer on top of it and presented it to the client, who kept all of it. Before launch I ran a technical SEO pass, and I’ve kept supporting the site since, including publishing every blog post.

My role

  • Built the full site in Webflow from the supplied static design
  • Designed and built the site’s motion with GSAP, SVG, custom JavaScript and Webflow Interactions, and integrated the client’s hero Lottie
  • Ran the technical SEO pass and implemented structured data across the site
  • Set up the blog CMS and publish every post (37 so far), plus ongoing copy changes

Challenges & solutions

Motion I proposed for a static design

The design was static, and the client hadn’t asked for animation. A product this abstract benefits from movement that shows what it does, so I built a motion layer on top of the design and presented it. The client kept all of it.

Next to the client’s hero Lottie, which I integrated into the layout, the motion is my own:

  • Cards: each card’s shape reacts on hover with its own Webflow Interaction. Some shapes rotate, others move.
  • Feature tabs: each tab has its own animated illustration (see 02)

The motion respects the reduced-motion preference wherever possible.

Each card’s shape has its own hover: some rotate, some move

Illustrations that follow the tabs

The feature tabs rotate automatically, and each one has its own SVG illustration animated with a GSAP timeline. Keeping them in step was the hard part: an illustration that starts late, or keeps playing after its tab has gone, breaks the effect. I wired the tab script to fire a custom event on every switch, and each illustration’s timeline listens for it, so every animation starts with its tab and resets when the tab changes.

Each tab switch fires an event that starts that tab’s GSAP timeline

Technical SEO from 77 to 98

After the build, a Semrush site audit scored 77. I worked through the issues it flagged, including metadata, broken links, redirects, alt text, the sitemap and canonical tags, and brought the score to 98.

The Semrush site audit before and after the SEO pass

Structured data that maintains itself

I added JSON-LD schema across the site: Organization, WebPage and AboutPage on the static pages, and BlogPosting on articles. The blog schema is generated from CMS fields on the post template, so every new post ships with structured data without anyone touching code. That matters here because I publish the posts: 37 so far, none needing manual schema work.

A blog post in Google’s Rich Results Test, with BlogPosting generated from the CMS

Results

  • Semrush site audit score after the technical SEO pass

  • Lighthouse Performance on desktop and mobile, with a 0.6s desktop LCP

  • Published on the blog, each with BlogPosting schema generated automatically

  • On my build since September 2025, with ongoing support

The web is full of worlds

Let's build yours!