Skip to content
← All workCase 01 / 07

RainbowTex

Manufacturer website

Year
2024 — 26
Built with
TanStack Start, React 19, TypeScript, Vite 7 +5 more ↓
rainbowtexbd.com
RainbowTex — screenshot of the live site

(01) Overview

The website of RainbowTex, a garment manufacturer in Dhaka exporting to more than thirty countries since 2006. It is written for buyers: what the floor makes, how an order runs from tech pack to container, and how to start one.

(02) Features

  1. 01Silk heroSatin in the four thread colours of the logo, drifting as you scroll and dipping under the mouse.
  2. 02Collections ringEight product lines on a 3D ring that turns with the scroll; each card opens its collection.
  3. 03LookbookA page per line, its garments in columns that drift at different speeds, with a full-screen viewer you can swipe or arrow through.
  4. 04Brief builderBuyers pick their product lines, quantities and a message, and the site writes the enquiry into their email or WhatsApp.
  5. 05Buyer FAQGrouped questions with a sticky index that follows your place down the page.

(03) Screens

rainbowtexbd.com
RainbowTex — Eight collections on a ring that turns as you scroll
03.1Eight collections on a ring that turns as you scroll
rainbowtexbd.com
RainbowTex — The denim line, one of eight lookbook pages
03.2The denim line, one of eight lookbook pages
rainbowtexbd.com
RainbowTex — The brief builder, which writes an email or WhatsApp enquiry
03.3The brief builder, which writes an email or WhatsApp enquiry

(04) On a phone

Same app, smaller screen.

Captured from the live site at 390 pixels wide — the width of most phones in a hand.

RainbowTex on a phone — The silk hero
The silk hero
RainbowTex on a phone — A collection page
A collection page

(05) Stack

Nine tools, and the job each one does here.

  • FrameworkTanStack StartFile-based routes, every page prerendered to static HTML
  • UIReact19Rendered at build time, hydrated in the browser
  • LanguageTypeScriptRoutes, the catalogue and the company facts
  • BuildVite7The silk shader ships as a chunk of its own
  • StylingTailwind CSS4Tokens sampled from the thread colours of the logo
  • UIWebGLOne hand-written fragment shader, no 3D library
  • UILucideIcons
  • HostingDigitalOceanStatic site on App Platform
  • HostingCloudflareCDN and cache in front of it

(06) Under the hood

  1. 01

    The silk is one fragment shader on a single full-screen triangle in raw WebGL. It loads once the browser is idle, renders at half resolution (a third on phones, at 30fps), stops when off screen, and draws one still frame for reduced motion.

  2. 02

    There is no animation library. Reveals, pinned scenes, tilt and magnetic buttons run on shared IntersectionObservers and one batched scroll loop that writes CSS variables, and with reduced motion the ring becomes a plain grid.

  3. 03

    Every page gets its own title, canonical, share card and schema.org data — organisation, FAQ, breadcrumbs and collections — built from one file of company facts.

  4. 04

    Images carry their real size and a srcset of smaller widths, so nothing shifts as they load and phones never download the originals.

Next case

Lumora