feat(MyNeS): add MyNeS - My Network Scanner - #993
Open
fxerkan wants to merge 1 commit into
Open
Conversation
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



Adds MyNeS (My Network Scanner) — a self-hosted LAN scanner and device inventory.
linux/amd64+linux/arm64, pinned to1.3.0io.github.fxerkan.mynesWhat it does
It discovers devices over ARP, mDNS/Bonjour, SSDP/UPnP, Matter, Bluetooth LE and MQTT. That last one is the point of the app: reading retained Zigbee2MQTT / Z-Wave JS / Tasmota topics is the only way to inventory a radio device that has no IP address at all, so Zigbee bulbs and Z-Wave sensors end up in the same list as the laptops and the NAS.
Plus vendor lookup over a 1000+ entry OUI database, automatic device-type classification, topology and force-directed graph views, scan history, rule-based alerts on new / missing / changed devices (Web Push, webhook, e-mail or Home Assistant), and two-way Home Assistant integration over MQTT Discovery and REST/WebSocket.
No cloud, no account, no telemetry. UI in English and Turkish, both declared in the
x-casaosblock.Why it needs host networking
network_mode: hostwithNET_ADMINandNET_RAW. Raw ARP frames and mDNS/SSDP multicast do not cross a bridge network — from a bridge the scanner sees the Docker bridge instead of the LAN, which makes the app pointless.It does not run as root (
USER scanner, uid 1000) and it is not a privileged container. Without those capabilities it does not fail: it degrades to a ping sweep plus the OS ARP cache and finds fewer devices, andGET /api/capabilitiesreports exactly what is missing.tips.before_installsays this in both languages so nobody installs it and wonders why it only found two devices.Validation
./scripts/build_dist.shruns clean against this branch — 0 errors,io.github.fxerkan.mynesbuilds withversion: 1.3.0, assets converted,meta.jsongenerated.One note: locally
min_image_size.arm64resolved to0whileamd64resolved correctly. The image is a multi-arch manifest (docker manifest inspect fxerkan/my_network_scanner:1.3.0lists both), so I believe this is an unauthenticated Docker Hub lookup on my machine rather than a manifest problem — it should resolve in CI whereDOCKERHUB_USERNAMEis set. Happy to be told otherwise.Contents
Apps/MyNeS/—docker-compose.yml,icon.svg,thumbnail.png,screenshot-1..3.png.There is also a third-party store for it at https://github.com/fxerkan/mynes-casaos-store if you would rather it stayed outside the official store; I would much prefer it here.