Backend/2026/In progress
AfricodeLab ERP
An ERP suite for African businesses, put together as separate services in Java, Rust, and Python that sit behind an API gateway and talk to each other over RabbitMQ. It covers accounting, HR, procurement, CRM, and compliance, with a Next.js front end kept well clear of the backend so either side can change without breaking the other.
Context
Smaller African businesses need a proper ERP, but the off-the-shelf suites are expensive and rarely fit how they actually run. This one is built from scratch as a set of services, so it can grow one capability at a time instead of arriving all at once.
Approach
- 01Designed 12+ independently deployable microservices in a deliberately polyglot stack — Java (Spring Boot), Rust (Actix/Tokio), and Python (FastAPI/Flask) — each chosen for its domain.
- 02Wired them together with Netflix Eureka service discovery, a Java API gateway, and RabbitMQ for message-driven communication.
- 03Isolated data per service in PostgreSQL schemas, with MinIO for object storage and Redis for caching.
- 04Covered accounting, HR, CRM, procurement, inventory, sales, risk/compliance, reporting, analytics, and monitoring behind a decoupled Next.js 16 / React 19 front end.
Notable
- Distributed-systems architecture with independently deployable, message-driven services.
- Polyglot by design — the right language per domain, not one stack everywhere.
- Schema-isolated data model that scales capability-by-capability.
Next project
IntelliFraud Copilot