Overview

Consulting engineers across Africa work in English, French, Portuguese and Arabic, and no single platform serves them. We shipped a deliberately narrow first release, a question-and-answer forum, in all four languages, then grew mentorship past page shells into verification, request lifecycle and real-time chat.

The platform home: forum, mentorship, research and video, in four languages.
The platform home: forum, mentorship, research and video, in four languages.
Client
Professional network for African consulting engineers
Industry
Professional community

The challenge

  • The audience spans anglophone, francophone, lusophone and arabophone Africa, so four locales, including right-to-left Arabic, were a launch requirement, not a later internationalisation pass.
  • A community product is worth nothing empty. Launching broad would have spread the first cohort of users across too many half-used features.
  • Mentorship is not a directory: it needs verification of who is real, a request lifecycle, and somewhere for the two people to actually talk.

Approach

The wedge in practice: a real question about a cantilever retaining wall in lateritic soil, answered with drained phi, surcharge and a contract clause reference.
The wedge in practice: a real question about a cantilever retaining wall in lateritic soil, answered with drained phi, surcharge and a contract clause reference.
  1. 01

    Ship a wedge, and say what would kill it

    The first release is a forum wedge, questions and answers, with an explicit written kill criterion: 50 questions posted and 75 weekly-returning users by day 90, both required for the bet to continue. Research, video and live sessions were deliberately held back.

  2. 02

    Four locales from the first commit

    next-intl across English, French, Portuguese and Arabic, with right-to-left handled in the design system rather than patched on afterwards, and locale coverage asserted in the test suite.

  3. 03

    Mentorship with real machinery

    Browse and filter mentors, admin verification before anyone is listed, a request lifecycle with states, and in-app real-time messaging over Socket.IO so a matched pair never has to leave for email.

  4. 04

    Boring, regional infrastructure

    Background jobs on BullMQ and Redis, transactional email through Resend, assets on object storage behind a CDN, all hosted in EU-West to keep latency to African users predictable.

The same thread in Arabic. The whole interface mirrors to right-to-left, including navigation, voting controls and metadata, because RTL is in the design system, not bolted on.
The same thread in Arabic. The whole interface mirrors to right-to-left, including navigation, voting controls and metadata, because RTL is in the design system, not bolted on.

What shipped

4

locales at launch: EN, FR, PT, AR

RTL

right-to-left support built into the design system

Realtime

in-app mentorship chat over Socket.IO

Day 90

kill criterion agreed before a line was written

Stack

  • Next.js 16
  • React 19
  • NestJS 11
  • TypeScript
  • Drizzle ORM
  • PostgreSQL
  • Redis
  • BullMQ
  • Socket.IO
  • next-intl
  • Tailwind 4
  • Cloudflare R2