Skip to main content
TekXpat

Transport · Chileka

Namanjirinji Investments

Elliot Khoza has run taxis out of Chileka International Airport since 2013, with two cars and no office. The site had to carry enough detail for a traveller to choose him before they land — and no detail he had not actually confirmed.

Sector
Transport
Where
Chileka, Blantyre, Malawi
Live at
namanjirinji.tekxpat.com

The brief

What they needed

  • Be findable by travellers arranging a pickup before they fly into Chileka.

  • Show the cars, because a passenger with luggage wants to know what is coming.

  • Give a number that works when dialled from abroad.

See it yourself

namanjirinji.tekxpat.com

The site is live. Open it, check it loads, search for the business. That is better evidence than a screenshot we control.

Visit the live site

What we built

The work

The fleet, described from the photographs

A Nissan Juke and a Nissan X-Trail, five seats each, with the colour read off the pictures Elliot supplied and the drivetrain given in his own words. Nothing about either car is stated that a photograph or Elliot does not support.

Opening hours that are literally true

Monday to Sunday, 06:00 to 20:00, held once and rendered both as the 24-hour form the structured data needs and the 12-hour form a person reads, so the two cannot drift apart.

Payment methods stated plainly

Airtel Money, TNM Mpamba, cash and bank transfer, on the contact page and in the structured data, so a traveller knows before arrival that they will not need to find an ATM.

Five static pages, no backend

No database, no forms, no API routes. Enquiries go by phone or WhatsApp, which is how this business already works.

Built with

  • Next.js 15 (App Router)
  • TypeScript (strict)
  • Tailwind CSS
  • Fully static — no database, no API routes
  • Schema.org structured data with opening hours and payment methods
  • Managed hosting on our own server

Decisions

Why it was built this way

The parts that took the longest and are hardest to see. These are the reasons this site exists to talk about, rather than a gallery of screenshots.

Late flights are a separate fact from opening hours

Elliot will meet a flight outside his published hours by arrangement. Folding that into the opening hours would have made the schema claim he is open until midnight, which is not true and would strand somebody at an airport. It is held as its own flag, said in the copy where a traveller reads it, and kept out of the hours the schema publishes.

“Since 2013”, not “13 years of experience”

The founding year is stored and the phrasing derives from it. A baked-in duration goes stale on a date nobody has diarised, and is then quietly wrong by several years.

The site disagrees with the printed business card, on purpose

The card shows an email address that does not reach him. The site uses his working inbox and records the mismatch in the code, so that the next person to compare the two does not "correct" the site back to an address that goes nowhere.

No local phone format exists in the codebase

Numbers are stored in international form and every displayed, dialled and WhatsApp variant is derived from it. This site is largely for people arriving from outside Malawi, and a local 0-prefixed number is undiallable from a roaming phone — so there is no code path that can produce one.

A number plate is blurred at the client’s request

One of the vehicle photographs is published with the plate obscured because Elliot asked for it. Worth stating because it is the kind of request that gets forgotten between a conversation and a deploy.

See for yourself

namanjirinji.tekxpat.com is live right now

Open it on your phone. Time how long it takes to load. Search for the business on Google. Everything on this page is checkable, which is the only kind of claim worth making.

The other one

Phonex Taxi

Taxi and airport transfer service in Blantyre. A Next.js site with a booking system, set up to be found by people searching for a ride.

Read it →

Prefer to talk? WhatsApp us.