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.

- 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

- 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.
- 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.
- 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.
- 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.

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
More work
E-learning · Live Sessions · Payments
Curriculum Learning Platform
A West African curriculum platform for WASSCE, BECE and IGCSE, where students learn, tutors teach live, and guardians pay for and watch progress across five roles.
Marketing Site · CMS · SEO
Embroidery & Branding Site
A search-first website for a twelve-year-old Ghanaian embroidery and apparel branding business, with the whole catalogue editable by the people who run it.
Web Platform · Health · Cloud
National Health Management System
A hospital management platform where eleven staff roles work one shared patient visit, and a national console licenses each facility's departments.
Mobile Apps · Marketplace · Payments
Executive Mobility Platform
A luxury chauffeur marketplace booked by the hour or the day, with customer and chauffeur apps, admin console, wallet and live tracking, built as one platform.
E-commerce · Product Customiser
Customisable Commerce Platform
A Ghana-first storefront where customers personalise a product and preview it live, plus the locked plan that takes it to mobile-money payments and launch-safe auth.
Landing Site · Email
Engineering Network: Waitlist Launch
A standalone coming-soon site that held the brand and collected the waitlist months before the platform was ready to launch.