The PJS platform powering Lindela, Shule, Wakili, Token-X, Talente, and 8 more. Shared auth, AI gateway, vector search, and observability out of the box.
Twelve applications across intelligence, legal, education, finance, HR, safety, and document automation, all on the shared platform.
AI intelligence platform for news aggregation, satellite acquisition, roster management, and real-time insight delivery. Next.js + FastAPI, backed by TimescaleDB and pgvector.
Kenya CBC school management system. 14 FastAPI microservices handling academic records, fees, KNEC integrations, CBC curriculum, and CBC reporting. Orchestrated by Temporal and NATS.
AI-powered legal platform for Kenyan practitioners. Modules: practice management, legal-quest research, contract drafting, cite-sentry, risk navigator, justice-lens, IP-shield, and a law academy.
Multi-chain asset tokenization platform. Native integrations for Hedera, Solana, Stellar, Tezos, Algorand, and Liquid. Temporal-orchestrated workflows; RAG copilot on vault server.
Knowledge graph platform with a dedicated graph query API and interactive explorer at kg.ale.llocal.com. Celery worker + beat for background graph enrichment jobs.
Architecture and design management platform. Next.js frontend with a FastAPI backend and arq async worker for long-running processing tasks.
Talent management and HR platform with real-time collaboration via Centrifugo WebSocket channels. Next.js web, FastAPI backend, and Centrifugo for live updates.
Women's safety platform covering Kenya and East Africa. Alert system, safe-route mapping, community support features, and emergency contact management. Also at dada-collective.com.
Strategy execution platform linking OKRs to operational tasks. Frontend, API, and an async worker for scheduled analysis and reporting.
Document automation and AI extraction platform. Accepts PDF/DOCX/XLSX via API, runs Docling for structured extraction, and returns clean JSON or generated output documents.
Personal and organisational security platform. Identity verification, threat monitoring, and incident response tooling. Also at guard.co.ke.
Production-grade financial payment switch. Routes transactions across card networks (Visa, Mastercard, UnionPay), real-time rails (FedNow, SEPA Instant, PAPSS), and correspondent banking channels through a single processing core. Sub-100 ms authorization, PCI DSS v4.0.1 compliant.
Full-stack digital credit infrastructure for regulated lenders under the Central Bank of Kenya Digital Credit Provider (CBK DCP) framework. End-to-end coverage from borrower acquisition through IFRS 9 provisioning, CBK regulatory submission, and LP reporting.
Automated website builder for African SMBs. 15-stage pipeline: scrape → brand → copy → SEO → i18n → scaffold → images → preview → Lighthouse gate → deploy. Astro + Tailwind output.
All applications share a common set of infrastructure components: no per-app auth, storage, or observability stacks to maintain.
PostgreSQL PRIMARY + hot standby. 43 extensions, 120+ GB data.
Keycloak for AuthN + SpiceDB for fine-grained AuthZ.
LiteLLM proxy on vault.lindela.io: single endpoint for all models.
Web search, document ingestion, and real-time relay on search.lindela.io.
Prometheus + Grafana + Loki + Wazuh across all 13 nodes.
OpenBao (Vault fork) on vault.lindela.io with AppRole auth.
Stalwart mail server + ops notification stack.
Temporal for durable workflows; NATS for event streaming (Shule).
13 dedicated servers across the EU, connected via an encrypted full-mesh VPN. Separated tiers for data, auth, AI/ML, observability, mail, and application workloads.
PostgreSQL primary + hot standby replica. Continuous WAL archiving with point-in-time recovery.
Dedicated auth server: Keycloak OIDC, SpiceDB relationship store, MinIO object storage, Documenso e-signature, Temporal workflow engine.
Dedicated ML server: LiteLLM gateway, Ollama, embedding, ASR, TTS, and NLLB translation. Secrets managed by OpenBao.
Dedicated node: Stalwart Mail, Prometheus, Grafana, Loki, Wazuh SIEM manager.
Dedicated node: SearXNG, Firecrawl, Docling, Soketi WebSocket relay, Umami analytics.
Three dedicated app servers running the full product suite under Caddy TLS. Two additional servers provisioned for future capacity.
Every application follows the same two-step auth pattern: Keycloak answers who is this?, SpiceDB answers can they do X on Y?
lindela realmkeycloak_sub → app_user.keycloak_idapp_user.id