- Communities & information
Kukura
A platform for community organisations to prove impact and raise funds — backend, deployment and account verification.
- Period
- 2024–2026
- Status
- In production
- Role
- Backend and DevOps: created the API repository, automated deployment and email/SMS verification; PR review and merging
- Client
- EQUIP Moçambique
- Partners
- ECO-MICAIA
Problem
Civil-society organisations in Mozambique struggle to formalise processes, show impact and reach donors. They need a simple tool on the phone.
Solution
The Ionic/Angular app is the team's work: organisation profile, assessment questionnaire, resource library and causes. I created the Laravel backend repository in 2024, set up deployment and test CI/CD, and implemented sign-up with email and SMS verification and password recovery. I review and merge backend PRs. The project started as the "Doar Para Transformar" prototype (DPT App), built by a colleague, and was renamed Kukura.
Technical decisions
01
Email and SMS verification in parallel
The verification code goes out on both channels (SMS via Twilio); if one fails, the other arrives. Email alone was not reliable in production.
02
Normalising Mozambican numbers to E.164
`843216789` becomes `+258843216789` before sending, because users type their number in many formats.
03
SSH deployment to shared hosting
GitHub Actions with maintenance mode, `composer install`, migrations, caches and post-deploy tests — no dedicated server needed.
04
Resource library seeded from shared JSON
The same JSON files feed the backend seeders and the app, so the resources never drift apart.
Images
01 / 03 — Kukura home page: "Your community needs you now", with Google Play and App Store links
Technologies
- Laravel
- PHP
- MySQL
- Ionic
- Angular
- Capacitor
- Twilio
- Docker
- GitHub Actions
Verifiable results
- migrations in the backend
- 56
What I learned
Email reliability in production calls for a second channel; and CI/CD on shared hosting takes many iterations to get stable.
SDGs

SDG 17 · Partnerships for the Goalsprimary
An organisation profile, an assessment questionnaire and causes give civil-society organisations a way to prove impact and reach donors.

SDG 10 · Reduced Inequalitiescomplementary
Small organisations outside the main cities gain a digital fundraising channel in an app on the phone.
