ArbreGénéa Lead project
Collaborative, multi-generational family tree platform
ProblemFamily history gets lost across scattered memories and closed, single-user tools — with no shared, multilingual way for relatives to build one living tree together.
ApproachAn event-driven modular monolith of eight DDD modules on .NET 10, communicating through a transactional outbox over RabbitMQ/MassTransit; Clean Architecture + CQRS with ASP.NET Core Minimal APIs (no MediatR — direct handler injection), designed to split into microservices with minimal change.
ResultEight modeled domains, 12-language localization (including RTL Arabic), real-time chat, presence & call-signalling over SSE, WebRTC family calls, RSVP events, an Angular 21 PWA with web-push, full observability (OpenTelemetry, Serilog, Sentry), and 50+ documented ADRs.
.NET 10C#Minimal APIEF Core 10PostgreSQLRedisRabbitMQMassTransit 8KeycloakAngular 21Nx 22SSEWebRTCPWAOpenTelemetryDocker
Private repo — available on request
FileStorageApi
Provider-agnostic file-storage microservice
ProblemApps get locked into a single storage provider; switching later means invasive rewrites of upload, download, and access-control logic.
ApproachOne unified .NET 9 REST API over MinIO, AWS S3, and any S3-compatible store (e.g. RustFS) — selectable purely by configuration — with Clean Architecture + CQRS, presigned URLs, event-raising copy, and background processing.
ResultSwap storage providers by changing configuration, with zero changes to application code.
.NET 9C#MinIOAWS S3RustFSHangfireDocker
Email Microservice
Templated, multi-language email microservice
ProblemPlatforms need reliable, templated, multi-language transactional email — sent consistently and tracked, not hand-rolled per feature.
ApproachA standalone .NET service on the Mailgun API with a versioned template engine, per-language variants, attachments, request validation, and a full audit trail of every template version sent.
ResultConsistent, localized transactional email with complete version history across the platform.
.NETC#MailgunMySQLEF CoreFluentValidationSerilog
Private repo — available on request
SFO — Scholarship Access
Opportunity platform for African students
ProblemTalented students miss opportunities because scholarship and fellowship information is scattered and hard to reach.
ApproachA Laravel + React platform that surfaces scholarships and educational opportunities in one place, with the guidance candidates need to prepare and apply.
ResultLowers the barrier to opportunity for candidates across Africa.
PHPLaravelReactMySQL
Private repo — available on request