A Modern Looking Glass Panel for Multi-Line Monitoring

Recently, we needed to perform four-line monitoring tests for a client. After searching extensively online, we discovered that most existing Looking Glass panels were outdated PHP-based solutions—either with limited functionality, obsolete UI, or long-abandoned projects. None could meet our needs.

So, we decided to build our own.

Together with a few friends, we developed NetMirror, a brand-new Looking Glass project aimed at providing a more modern, user-friendly solution for data centers, oneman operations, and networking enthusiasts.

Special thanks to wikihost-opensource and Hybula for the inspiration and architecture ideas their projects provided.

🚀 What is NetMirror?

NetMirror is a feature-rich, visually appealing, and modern Looking Glass server-side panel designed for displaying and testing multi-region network nodes. It supports essential networking tools such as ping, traceroute, mtr, speedtest, and more. All nodes are displayed in a unified interface to help users evaluate latency, stability, and performance across different routes.

🔗 Live Demo

GitHub Repo: https://github.com/catcat-blog/NetMirror (Feel free to star 🌟)

Live Demo: https://lg.catcat.cloud/

🧩 Features

Modern UI: Built with Vue 3 and TailwindCSS for a responsive, clean design.
Built-in Tools: Integrated with Ping, iPerf3, Speedtest, BGP information, and more.
Live Traffic Monitoring: See real-time network interface usage.
Interactive Shell: Simulated terminal for basic diagnostics.
Easy Deployment: One-command Docker-based deployment.
Customizable: Configure server info and features via environment variables.
Multi-Node Support: Supports master/slave node grouping for geographic flexibility.
Security First: Only the panel and necessary endpoints are exposed. Nodes communicate securely via gRPC.

UI Preview

753AB0EA840F8C3A8C54F3BD84593D8E.png
image-45.png
image-46-scaled.avif
image-47-scaled.avif
image-48-scaled.avif
image-49-scaled.avif
image-51.png
image-50.png
image-52.png
image-53.png

📦 Deployment (Docker)

Clone the Repository

git clone https://github.com/Yuri-NagaSaki/NetMirror.git cd NetMirror

创建环境文件
复制环境文件示例以创建您自己的配置。

cp .env.example .env

If .env.example does not exist, simply create a .env file and refer to the documentation or table of variables.

Customize Config (Optional)
Edit .env to set your server region, public IP, and other configurations.

Here’s a sample docker-compose.yml snippet:

services:
  als:
    image: soyorins/netmirror:latest
    container_name: looking-glass-e
    restart: always
    network_mode: host
    user: root
    env_file:
      - .env
    volumes:
      - ./data:/data
      - ./.air.toml:/app/.air.toml
    healthcheck:
      test: ["CMD", "wget", "--quiet", "--tries=1", "--spider", "http://localhost:${HTTP_PORT:-80}/"]
      interval: 30s
      timeout: 10s
      retries: 3
    logging:
      driver: "json-file"
      options:
        max-size: "10m"
        max-file: "3"

docker compose up -d 

Once running, access your instance at:
http://:3000
(default port can be modified using the HTTP_PORT environment variable)

Tagged:

Comments

  • Under traffic monitor, past tense of send should be sent, not "sended".

    Otherwise it looks really good.

  • Stuck in Connecting...
    Establishing connection to the server

    Thanked by (1)Khalequzzaman
  • Looks good. Congrats

  • is it have backend ??

    PrenHost | 🚀 BDIX NVMe Hosting – Only $4/year | 5GB RAM - 2vCPU VPS Only $3 / Month
    Lightning-Fast | 99.9% Uptime | 24/7 Support

  • Your modern looking "Glass Panel" is reminding me of Windows Vista... and NO ONE wants to remember Windows Vista!

    Never make the same mistake twice. There are so many new ones to make.
    It’s OK if you disagree with me. I can’t force you to be right.

  • @somik said:
    Your modern looking "Glass Panel" is reminding me of Windows Vista... and NO ONE wants to remember Windows Vista!

    I want to remember Windows Vista

  • @imok said:

    @somik said:
    Your modern looking "Glass Panel" is reminding me of Windows Vista... and NO ONE wants to remember Windows Vista!

    I want to remember Windows Vista

    NO ONE, except for @imok, wants to remember Windows Vista!

    Never make the same mistake twice. There are so many new ones to make.
    It’s OK if you disagree with me. I can’t force you to be right.

  • AuroraZeroAuroraZero Hosting ProviderRetired

    @somik said:

    @imok said:

    @somik said:
    Your modern looking "Glass Panel" is reminding me of Windows Vista... and NO ONE wants to remember Windows Vista!

    I want to remember Windows Vista

    NO ONE, except for @imok, wants to remember Windows Vista!

    Better than remembering ME!!!

  • @AuroraZero said:

    @somik said:

    @imok said:

    @somik said:
    Your modern looking "Glass Panel" is reminding me of Windows Vista... and NO ONE wants to remember Windows Vista!

    I want to remember Windows Vista

    NO ONE, except for @imok, wants to remember Windows Vista!

    Better than remembering ME!!!

    I love ME.

  • AuroraZeroAuroraZero Hosting ProviderRetired

    @imok said:

    @AuroraZero said:

    @somik said:

    @imok said:

    @somik said:
    Your modern looking "Glass Panel" is reminding me of Windows Vista... and NO ONE wants to remember Windows Vista!

    I want to remember Windows Vista

    NO ONE, except for @imok, wants to remember Windows Vista!

    Better than remembering ME!!!

    I love ME.

    I bet you do my man I bet you do

    Thanked by (1)imok
  • Not sure what somik is about... it looks decent to me.

  • It´s only working on the IP instead the URL in the demo.

Sign In or Register to comment.