Ultimate Mikrotik Dashboard

MikroTik RouterOS dashboard - MikroDash

Hey Mikrotik community :waving_hand:

I already posted this on Reddit r/mikrotik, but I thought i would post it here as well.

I've been running MikroTik hardware at home for a while and got tired of having to SSH in or dig through WinBox just to check what's going on with my network. So I built MikroDash, a self-hosted, real-time web dashboard for RouterOS.

I set out to try my hand at some vibe coding using Claude to make an idea a reality and this was the result. (I am not a programmer). I wanted to share this with the Mikrotik community as I am sure there are others out there that will find this just as useful as it is to me.

What it does:

  • Live traffic chart, CPU/RAM/storage gauges, temperature and uptime.

  • Wireless clients with signal quality, band (2.4/5/6 GHz), IP and TX/RX rates.

  • World map showing where your traffic is going in real time.

  • DHCP leases, WireGuard VPN peers, firewall rule hit counts, and a live log stream.

  • Browser push notifications for interface down, WireGuard drops, high CPU and ping loss.

It connects directly to the RouterOS binary API. No agents, no SNMP, no page refreshes. Everything streams live via Socket.IO.

Self-hosted, Docker-ready, MIT licensed.

:warning: Designed for local network use only. Do not expose to the internet.

:spouting_whale: docker pull ghcr.io/secops-7/mikrodash:latest

:link: https://github.com/SecOps-7/MikroDash

Please let me know what you all think. Would love feedback, bug reports, or feature ideas!

rich text editor imagerich text editor imagerich text editor imagerich text editor image

4 Likes

no arm64

The code for MikroDash was written by AI. Not sure for any updates.

Live connection map animation is great.

I noticed that an ARM image is now available, so I gave it a try today.

The setup was a bit difficult, as I ran into TLS handshake errors. I wasn’t able to get it working via the API over SSL, so for a short evaluation I used the plain API instead.

The dashboard seems quite “unstable”. The connection count fluctuates significantly (for example between none, 1, and the real value of 70+), and I observed similar behavior in the resource monitor, where statistics briefly show as “unknown.” Overall, the data appears inconsistent. The interfaces dashboard was the weirdest of all. It sometimes showed 3Gbps rates on my LTE link, which is a 50/10 plan right now. No way this could push 3Gbps. And ether1 showed also 2Gbps+ values, but it is a gigabit port. Very very spooky.

From my perspective, the system feels quite unstable at the moment. Also, the requirement to use a test policy just to run a ping seems unnecessary - it would be helpful if this could be disabled.

Hi,

like @infabo , with insecure tls, nothing work on api-ssl port.
But work on the old non tls api port.

Thank you for the very helpful feedback. Ill get to work on these issues.

Yes, it's running fine now with TLS insecure.

Handle ipv6 ? it's in most case like ipv4, just call for ipv6 endoints...

1 Like

Nice. Small issues

  • ping bellow 1 ms, for example 0.350 ms is shown as 350 ms (millileconds). Actually it’s 350 us (microseconds).
  • ethernet status - router 1 - ether1 is permanently down., router 2 - ether1 is permanently up. When I switch from one router to another, I get notification - ether1 up (or down). But ether1 on router 1 is not the same interface as ether1 on router 2

Thank you for the nice dashboard