What I learned building a mental health platform for Ethiopia
When I started building the mental health platform, I thought the hardest part would be the AI model. It wasn't.
The hardest part was figuring out what responsible AI looks like when the stakes are someone's mental health — and then building a payment system for a market that most global fintech ignores.
The constraint that shaped everything
Stripe doesn't work in Ethiopia. PayPal doesn't either. This isn't a minor inconvenience — it's a fundamental constraint that eliminates most of the standard playbook for building a paid platform.
Chapa is the answer for the Ethiopian market. It supports ETB natively, integrates cleanly via API, and is trusted by local users. Building around it from day one rather than treating it as an afterthought made the payment flow much smoother.
Why Django over Node.js
The ML model integration was the deciding factor. CatBoost and XGBoost are Python-native. Trying to serve them from a Node.js backend would have meant either a separate Python microservice or awkward subprocess calls. Django REST Framework gave us a clean API layer with the ML stack right there in the same runtime.
The video session problem
Third-party video APIs (Twilio, Agora) are expensive and have data residency concerns that matter when you're handling sensitive mental health conversations. WebRTC keeps sessions peer-to-peer — the server only handles signaling, not the actual video stream.
The tradeoff is complexity. WebRTC requires a TURN server for users behind strict NATs, which I haven't fully solved yet. For a beta, it works. For production at scale, it needs more infrastructure.
What I'd tell someone starting a similar project
Don't start with the AI. Start with the payment flow. If you can't charge users, nothing else matters. Get that working first, then build everything else around it.