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
01
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.
legato.ai
Each card’s shape has its own hover: some rotate, some move02
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.
legato.ai
Each tab switch fires an event that starts that tab’s GSAP timeline03
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.
legato.ai
The Semrush site audit before and after the SEO pass04
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.
legato.ai
A blog post in Google’s Rich Results Test, with BlogPosting generated from the CMS
Results
77 → 98
Semrush site audit score after the technical SEO pass
99 · 92
Lighthouse Performance on desktop and mobile, with a 0.6s desktop LCP
37 posts
Published on the blog, each with BlogPosting schema generated automatically
Still live
On my build since September 2025, with ongoing support