Skip to content

Latest commit

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

NexaLink Banner

NexaLink

Multi-Tenant ISP Management SaaS Platform

LicenseLaravelPHPPostgreSQLStatusMade in Pakistan

🌐 Website · 📖 Documentation · 🐛 Report Bug · ✨ Request Feature


What is NexaLink?

NexaLink is a production-grade, multi-tenant SaaS platform built specifically for Internet Service Providers (ISPs). It consolidates PPPoE session management, RADIUS authentication, customer billing, NOC monitoring, and support operations into a single unified system.

Built by a working ISP engineer, NexaLink solves real infrastructure problems — not hypothetical ones.

Target: Pakistani ISPs first → regional expansion → global SaaS


✨ Core Features

🔌 PPPoE & Network Management

  • MikroTik RouterOS API integration for live PPPoE session control
  • Real-time session monitoring: connect, disconnect, bandwidth stats
  • Multi-NAS support with dynamic client provisioning
  • VLAN-aware customer assignment

📡 FreeRADIUS Integration

  • Auto-provisioning of RADIUS users on customer creation
  • Dynamic NAS client management via SQL (nas table) — no config file edits
  • PPPoE profile binding per customer plan
  • Authentication logs and session tracking

💳 Billing & Invoicing

  • Automated invoice generation (PDF via DomPDF)
  • Subscription plan management
  • Payment tracking and overdue handling
  • Per-tenant invoice branding

🖥️ NOC Dashboard

  • Real-time network health widgets
  • Active sessions, bandwidth utilization, alarm summary
  • Per-ISP tenant isolation
  • MikroTik health metrics via RouterOS API

🎫 Support Ticket System

  • Customer-facing and staff-facing ticket management
  • Priority levels, status tracking, and internal notes
  • Per-tenant ticket queues

👥 Customer Management

  • Full customer lifecycle: onboarding → suspension → termination
  • Bulk import/export (CSV)
  • Plan assignment and service history
  • Role-based staff access per tenant

🏢 Master Panel (Super Admin)

  • Centralized multi-tenant management
  • Tenant provisioning and licence control
  • System health and usage metrics
  • Access restricted to WireGuard VPN + internal IP ranges

🏗️ Architecture Overview

┌─────────────────────────────────────────────────────┐
│ NexaLink SaaS │
├──────────────────────┬──────────────────────────────┤
│ Master Panel │ Admin Panel │
│ (Super Admin) │ (Per ISP Tenant) │
│ VPN-restricted │ Public HTTPS │
├──────────────────────┴──────────────────────────────┤
│ Laravel 13 + Filament v5 │
│ Stancl/Tenancy (Single-DB Multi-Tenant) │
├─────────────┬───────────────┬────────────────────────┤
│ PostgreSQL │ Redis │ Laravel Horizon │
│ 16 │ 8 │ (Queue Workers) │
└─────────────┴───────────────┴────────────────────────┘
│ │
┌───────▼──────────┐ ┌──────────▼──────────┐
│ FreeRADIUS │ │ MikroTik RouterOS │
│ (Auth Server) │ │ (PPPoE / Sessions) │
└──────────────────┘ └─────────────────────┘

🛠️ Tech Stack

LayerTechnology
Backend FrameworkLaravel 13 / PHP 8.3
Admin UIFilament v5 (Admin + Master panels)
FrontendLivewire, Alpine.js, Tailwind CSS
Multi-TenancyStancl/Tenancy (single-database)
DatabasePostgreSQL 16
Cache / QueueRedis 8 + Laravel Horizon
Auth ServerFreeRADIUS 3.2.5
Network DeviceMikroTik RouterOS API
VirtualizationProxmox VE
Reverse ProxyNginx
VPNWireGuard
CI/CDGitLab CE (test → build → deploy)
Code QualitySonarQube

📸 Screenshots

Screenshots coming soon. See nexalink.app for a live demo preview.

NOC DashboardCustomer Management
(screenshot)(screenshot)
InvoicingSupport Tickets
(screenshot)(screenshot)

📖 Documentation

DocumentDescription
PPPoE ManagementSession control, MikroTik integration
RADIUS IntegrationFreeRADIUS setup, auto-provisioning
InvoicingBilling, PDF generation, plans
NOC DashboardReal-time monitoring widgets
Support TicketsTicket system usage
Customer ManagementLifecycle, import/export
API OverviewREST API reference

🗺️ Roadmap

  • PPPoE Management (MikroTik API)
  • FreeRADIUS Integration
  • Invoicing & PDF Billing
  • NOC Dashboard
  • Support Ticket System
  • Customer Import/Export
  • Multi-Tenant Master Panel
  • WhatsApp/SMS Notification Gateway
  • Mobile App (customer self-service)
  • Stripe / JazzCash Payment Integration
  • Public API (v1)
  • Bandwidth Monitoring (SNMP/MKTXP)
  • Reseller / Sub-tenant Module

See CHANGELOG.md for release history.


🔐 Security & Access

  • Master panel access enforced at Nginx level: WireGuard VPN only
  • Tenant isolation at database row level via Stancl/Tenancy
  • All secrets managed via .env — never committed
  • SonarQube integrated in CI/CD pipeline for continuous quality checks
  • SSL enforced across all subdomains via Nginx reverse proxy

Found a security issue? Please do not open a public issue. Contact: zilleali1245@gmail.com


👨‍💻 Built By

Zill E Ali — Junior Network Engineer & Founder of Developer Zon


📄 License

NexaLink is proprietary software. All rights reserved.

This repository contains public-facing documentation only. The source code is not distributed under an open-source license.

© 2025–2026 Zill E Ali / Developer Zon. All rights reserved.

About

No description, website, or topics provided.

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors