Spliteks

Spliteks is a large corporate site for an industrial-equipment manufacturer (the successor to Sulzer Chemtech in Russia). The frontend came to me already built and alive: GSAP animations, maps, sliders — the whole visual layer was there. All of it lived in two files, main.js and main.css, as one undivided block, and carrying it forward in that shape was getting harder.
I set about putting it in order. Styles split into SCSS modules and rewritten — of roughly eight thousand lines of CSS, more than seventy percent passed through my hands; logic moved onto TypeScript. For the build I first tried Vite, but it didn't square with Bitrix's requirements, so I rebuilt the pipeline on Gulp. The output is two bundles — global and homepage — each with its own orchestrator that boots only the code a page needs; if one module fails, the rest keep running.
Features grew alongside the rebuild. A section that expands to full screen on scroll and morphs into a list. A carousel with real physics: inertia, resistance at the edges, a settling ease. A header where a full-screen menu, search, a floating button, and a cookie card stay out of each other's way. A pull-up footer with a Lottie animation.
Performance was its own thread. GSAP with ScrollSmoother ran heavy and was itself causing a fair share of the freezes, so I moved some animations onto native sticky and swapped ScrollSmoother for Lenis. All told: CSS went from 1.2 MB to 143 KB, JS to ~153 KB, desktop PageSpeed from 69 to 89.
One honest note at the end: all of this is work inside living, inherited code, without the luxury of a clean slate. To me that's what real frontend most often looks like — stepping into something that already works and already matters to someone, and leaving it lighter, faster, and calmer than it was.
View project