Corlee Textiles
A bilingual storefront and admin panel for a fabric supplier, where buyers can see any fabric wrapped onto a 3D garment before they ask for a sample.
- Role
- Frontend developer
- Timeline
- May 2024 – Aug 2025
- Stack
- React · Three.js · Vite · Django REST
- Status
- Live
Selling a texture
Corlee sells woven fabric to garment makers. Buyers don't check out with a card. They build a bag of fabrics in the colours they want and send it as a request. The site had to make the catalogue searchable in English and Mandarin, and let the staff run all of it themselves.
I built the frontend: the storefront, the 3D viewer and the admin panel, against a Django REST API.
- Every fabric has a title, description, composition, weight and finish in both languages, plus an image set per colour.
- Search covers all of those fields and category names, in either language.
- The admin panel is in Traditional Chinese, for the staff who use it.
What I built
A 3D preview for every fabric
React Three Fiber loads a garment model, a shirt, jacket or pair of trousers, and wraps the selected colour's photograph around it as a repeating texture. Buyers rotate it to judge how the pattern reads at garment scale.
Request flow instead of checkout
Sign up with email or Google, save favourites, fill a bag with fabric and colour pairs, and send it as a product request. Past requests stay in a history page.
An admin panel for the whole catalogue
Fabrics, categories, colour categories, blogs with a rich-text editor, events, orders, users and contact requests, with filters on every list, a shared media gallery and spreadsheet exports.
The plates
Fabric is bought on texture, so the photographs are the product. Images below the fold are lazy-loaded, and textures for the 3D viewer are cached by URL so switching between colours doesn't download the same image twice.

Where it landed
The site is live at corleeandco.com, with the catalogue managed through the admin panel. It was my longest client project: fifteen months, and about 140 of the repo's 200 commits are mine, most of them rounds of design fixes across phone, tablet and desktop.