Saltar para o conteúdo
Edson Francisco
  • Comunidades e informação

Kukura

Plataforma para organizações comunitárias provarem impacto e captarem fundos — backend, deploy e verificação de contas.

Período
2024–2026
Estado
Em produção
Papel
Backend e DevOps: criei o repositório da API, o deploy automático e a verificação por email/SMS; revisão e merge de PRs
Cliente
EQUIP Moçambique
Parceiros
ECO-MICAIA

Problema

Organizações da sociedade civil em Moçambique têm dificuldade em formalizar processos, mostrar impacto e chegar a doadores. Precisam de uma ferramenta simples, no telemóvel.

Solução

A app Ionic/Angular é da equipa: perfil da organização, questionário de avaliação, biblioteca de recursos e causas. Eu criei o repositório do backend Laravel em 2024, montei o CI/CD de deploy e testes, e implementei o registo com verificação por email e SMS e a recuperação de senha. Revejo e faço merge dos PRs do backend. O projecto começou como protótipo "Doar Para Transformar" (DPT App), feito por um colega, e foi renomeado Kukura.

Decisões técnicas

  1. 01

    Verificação por email e SMS em paralelo

    O código de verificação segue pelos dois canais (SMS via Twilio); se um falhar, o outro chega. O email sozinho não era fiável em produção.

  2. 02

    Normalização de números moçambicanos para E.164

    `843216789` passa a `+258843216789` antes do envio, porque os utilizadores escrevem o número de várias formas.

  3. 03

    Deploy por SSH para alojamento partilhado

    GitHub Actions com modo de manutenção, `composer install`, migrations, caches e testes depois do deploy — sem precisar de servidor dedicado.

  4. 04

    Biblioteca de recursos gerada a partir de JSON partilhado

    Os mesmos ficheiros JSON alimentam os seeders do backend e a app, para os recursos não divergirem.

Imagens

01 / 03 — Página inicial do Kukura: "A Sua Comunidade Precisa de Si Agora", com links para Google Play e App Store

Tecnologias

  • Laravel
  • PHP
  • MySQL
  • Ionic
  • Angular
  • Capacitor
  • Twilio
  • Docker
  • GitHub Actions

Resultados verificáveis

migrations no backend
56

O que aprendi

Fiabilidade do email em produção pede um segundo canal; e CI/CD em alojamento partilhado exige muitas iterações até ficar estável.

ODS

  • ODS 17 · Parcerias para a Implementação dos Objectivosprincipal

    Perfil da organização, questionário de avaliação e causas dão às organizações da sociedade civil uma forma de provar impacto e de chegar a doadores.

  • ODS 10 · Redução das Desigualdadescomplementar

    Pequenas organizações fora dos grandes centros ganham um canal digital de captação numa app para o telemóvel.