Hi everyone,
I’d like to share a project I’ve been working on: GonoPBX – a modern, lightweight web GUI for managing Asterisk.
Why I built it: I’ve been running Asterisk for a while and wanted a simple, clean management interface without the overhead of larger solutions. Something I could deploy in minutes with Docker and that covers the day-to-day administration tasks well.
What it does:
-
Extension Management – Create and manage PJSIP extensions with live registration status
-
SIP Trunk Configuration – Registration and IP-based auth, with provider templates (currently Plusnet IPfonie Basic/Extended/Connect)
-
DID Routing – Assign incoming numbers to extensions, number block management per trunk
-
Call Forwarding – CFU, CFB, CFNR per extension with one-click toggle
-
Voicemail – Per-extension with PIN, email notification, and web-based audio player
-
CDR – Full call detail records with filtering (source, destination, status) and statistics
-
Live Dashboard – Real-time Asterisk status via WebSocket: registered endpoints, active channels, recent calls
-
Multi-User – Admin and user roles with JWT authentication
Tech stack:
-
Asterisk 20 (PJSIP)
-
FastAPI (Python) backend
-
React + TypeScript frontend (Vite, Tailwind CSS)
-
PostgreSQL
-
Docker Compose (full stack)
Getting started:
git clone https://github.com/ankaios76/gonopbx.git
cd gonopbx
chmod +x install.sh
./install.sh
The installer auto-detects your server IP, generates secure passwords, configures Asterisk, and starts everything via Docker Compose. Let’s Encrypt SSL is supported.
Links:
-
Website & Screenshots: https://gonopbx.de
-
Live Demo: https://demo.gonopbx.de
This is an actively developed hobby project and I’m very open to feedback from the Asterisk community. I’d especially like to hear:
-
Which SIP provider templates would be useful to add?
-
What features are most important to you in a web GUI?
-
Any feedback on the PJSIP configuration approach?
Thanks for checking it out!