Inspiration
Across Africa, starting an Internet Service Provider (ISP) is still a highly technical process. Even after purchasing networking equipment, operators often spend days manually configuring routers, VPNs, payment integrations, customer authentication, and monitoring before serving their first customer.
We wanted to answer a simple question:
What if launching an ISP was as easy as onboarding a new SaaS customer?
Umoja ISP was built to remove that operational complexity by combining AI-assisted automation, MikroTik provisioning, secure WireGuard management, and M-Pesa payments into a single platform.
What it does
Umoja ISP is an AI-powered ISP operating system that enables operators to onboard and manage MikroTik routers with minimal manual configuration.
An operator can:
- Register a new router
- Generate a secure bootstrap package
- Provision a management tunnel automatically
- Configure internet packages
- Accept M-Pesa payments
- Monitor router health from a centralized dashboard
The platform maintains a secure controller-managed WireGuard tunnel, allowing routers to be discovered, inventoried, monitored, and lifecycle-managed without exposing RouterOS management services directly to the public Internet.
How we built it
The platform consists of two major components.
Umoja Platform
Built with:
- Next.js
- TypeScript
- Prisma
- PostgreSQL (Neon)
- NextAuth
- Tailwind CSS
- M-Pesa Daraja APIs
This application provides tenant management, payments, router onboarding, provisioning workflows, inventory persistence, and operational dashboards.
Umoja Controller
A dedicated controller service responsible for secure infrastructure operations.
Built with:
- Fastify
- TypeScript
- WireGuard
- RouterOS API
- Ubuntu
- Nginx
The controller provisions WireGuard peers, securely communicates with MikroTik routers, performs read-only inventory discovery, validates router health, and manages the router lifecycle without requiring direct Internet exposure of RouterOS.
Challenges we ran into
Building a reliable onboarding experience proved to be one of the most challenging parts of the project.
Some of the engineering challenges included:
- Designing an idempotent router bootstrap process
- Securely provisioning WireGuard tunnels without exposing RouterOS
- Recovering router inventory automatically after onboarding
- Building a safe router decommissioning workflow that removes only Umoja-managed configuration while preserving customer-owned settings
- Handling network failures without leaving routers in inconsistent states
- Coordinating provisioning across multiple services while maintaining transactional integrity
A significant amount of effort also went into making onboarding repeatable, recoverable, and production-safe rather than simply making it work once.
What we learned
This project reinforced that infrastructure automation is as much about reliability as it is about functionality.
We learned the importance of:
- idempotent provisioning
- lifecycle-aware infrastructure management
- secure network design
- controller-based architecture
- resilient recovery workflows
- building operational tooling that network operators can trust
What's next
Umoja ISP is the foundation of a broader autonomous network operations platform.
Next steps include:
- AI-powered network diagnostics
- Natural-language router management using OpenAI models
- Automated fault detection and remediation
- Intelligent customer support agents
- Multi-router fleet orchestration
- ISP analytics and predictive capacity planning
Our vision is to make operating an ISP dramatically simpler by allowing AI to handle routine operational tasks while operators focus on growing their business.
Built With
- amazon-web-services
- api
- codex
- css
- daraja
- ec2
- fastify
- m-pesa
- mikrotik
- neon
- next.js
- nginx
- node.js
- openai
- postgresql
- prisma
- rest
- routeros
- tailwind
- typescript
- ubuntu
- vercel
- wireguard
Log in or sign up for Devpost to join the conversation.