PerGo: Open-Source Omnichannel CPaaS Platform in Go & NATS JetStream
Self-hosted, open-source Omnichannel Communications Platform as a Service (CPaaS) built in Go 1.25+ and Echo v5. Unifies message delivery ac...
Organization / Context: Projeto Autônomo / Open Source
Timeline: 2025 - Present
Domain Category: Data Engineering
Technologies: Go, Echo v5, NATS JetStream, PostgreSQL, pgx/v5, a-h/templ, HTMX, Tailwind CSS, Docker, whatsmeow
Executive Overview
Self-hosted, open-source Omnichannel Communications Platform as a Service (CPaaS) built in Go 1.25+ and Echo v5. Unifies message delivery across multiple providers (WhatsApp Cloud WABA, WhatsApp Web via whatsmeow, and Telegram) under a single REST payload, with NATS JetStream durable queuing, automatic backpressure, and a reactive dashboard in a-h/templ and HTMX.
Architecture & Data Flow
The diagram below illustrates the sanitized high-level component topology and data processing pipeline:
flowchart TD
A[Sistemas Externos / CRM / ERP] --> B[API Gateway REST Echo v5]
B --> C[Validador & Enfileirador NATS JetStream]
C --> D[Worker Pool de Despacho Assíncrono]
D --> E1[Canal WhatsApp Cloud WABA]
D --> E2[Canal WhatsApp Web whatsmeow]
D --> E3[Canal Telegram Bot API]
D --> F[Persistência de Logs PostgreSQL pgx/v5]
G[Operador / Admin] --> H[Dashboard Templ + HTMX]
H --> B
Key Engineering Highlights
- Unified REST Payload: Single endpoint (POST /api/v1/messages) for multi-channel routing and automated fallback across WABA, WhatsApp Web, and Telegram.
- JetStream Queuing: Durable, decoupled message broker on NATS JetStream with queue backpressure limits (1,000 messages/session).
- Reactive SSR Dashboard: Admin console compiled at build time with a-h/templ and server-driven HTMX interactions without SPA overhead.