The brief
CNK sources drilling, well control and oilfield equipment worldwide: new, used and reconditioned. The competitor they were measured against runs a WordPress product archive: thirteen pages of pagination, no way to ask a question without leaving the grid, and a category called Uncategorized visible to the public.
The client asked for one thing above all else, repeatedly and in his own words: he had to be able to add a category, add a sub-category, upload photos and mark something out of stock without calling anyone. The taxonomy had to be data, never hardcoded.
What we built
A catalogue with a two-level taxonomy where both levels are client-editable, backed by Postgres. Categories, sub-categories, items, photography, specifications and availability states are all managed from an admin the client signs into, so the site keeps up with the yard instead of ageing between developer tickets.
On the front end, search and filters replace pagination, and every card carries the enquiry with it: a one-tap WhatsApp message or a single-field requirement form, sent without opening the product page first. WhatsApp is the primary path, because that is where this business is actually done.
- Full site design and build, mobile first
- Two-level equipment taxonomy, both levels client-editable
- Self-service admin for categories, items, photos and stock states
- Search and filtering instead of paginated archives
- One-tap WhatsApp and single-field requirement enquiries from any card
- Sourcing, about and contact pages written for procurement buyers
The detail that decided the build
CNK is a sourcing partner, not a warehouse: name the spec and they go and find it. So the site had to sell the network, not just the shelf, which is why an item that is not in stock is still a conversation rather than a dead end.
Stack
- Next.js
- React
- TypeScript
- Supabase
- Postgres
- Tailwind
- Vercel


