Chang Joe — construction, extensions and fit-out
Chang Joe — a contractor site that shows the work instead of describing it
A single-page site for a Bangkok contractor with more than ten years of work behind it and nowhere to show it. Three service groups, a photographed portfolio for each, and one obvious way to get hold of the team.
- Marketing site
- Local SEO
- Structured data
- Responsive build
- Pages
- One
- Service groups
- 3
- Jobs photographed
- 17
- Enquiry routes
- 3
- Structured offers
- 3
- HTML shipped
- 17 kB
The problem
A contractor is chosen on evidence. Ten years of finished kitchens, roofs, ceilings and extensions existed only as photos on a phone and posts buried in a Facebook feed, which meant every enquiry started from zero: what do you do, have you done mine, can I see it.
The second problem was reach. Customers search for a trade and a district, and a business with no site of its own is represented in that search by whatever a directory decided to write about it.
What we built
Three groups, because that is how the work is quoted. Construction, extension and fit-out each get their own band with their own photographed jobs — ceilings and interior walls, floor and wall tiling, steel carports, awnings, built-in kitchens, concrete counters. A visitor recognises their own job in a picture faster than in a service list.
The reasons, stated as commitments. Specialist crews, guaranteed work, no record of walking off a job, and a free on-site inspection before quoting. Four claims a customer can hold the business to, not four adjectives.
One obvious next move. Phone, LINE and Facebook, reachable from anywhere on the page. Trade enquiries arrive on the channel the customer already has open, so the site does not insist on a form.
How it is built
React on Vite, prerendered. The page ships as markup with the interactive parts hydrated on top — a portfolio that filters and a gallery that opens. Fast enough on mobile data, which is where a customer standing in the room they want rebuilt will open it.
HomeAndConstructionBusiness, with the services as an offer catalogue. The JSON-LD names the
trade, the district and each service as a structured offer, so a local search sees a contractor with
a defined service list rather than a page of Thai text it has to infer one from.
Static on Vercel, behind Cloudflare. No server, no admin, nothing to keep patched. New work is added by dropping photographs in — the site is a portfolio, and a portfolio should cost nothing to run between jobs.
Built with
- React 19
- Vite
- Font Awesome
- Schema.org JSON-LD
- Vercel
- Cloudflare