a lightweight, frameless desktop widget that lives in the corner of your screen and watches your network go brr ٩(◕‿◕。)۶
it shows you real-time download & upload speeds, a scrolling 60-second history chart, and a full wifi manager — all wrapped in the cozy catppuccin mocha dark theme ♡
- ╭( ・ㅂ・)و live ↓ download & ↑ upload speeds with auto-scaling units (B/s → KB/s → MB/s → GB/s)
- ( ´ ▽ ` ) 60-second dual-line speed chart with hover tooltip — move your mouse over the chart to peek at past speeds
- ヾ(^∇^) interface selector that remembers your last choice
- ✧(≧ ◡ ≦) wifi manager — scan networks, see signal strength bars & lock icons
- ◝(ᵔᵕᵔ)◜ connect to new networks with password entry, or reconnect to saved ones in one click
- ( •̀ ω •́ )✧ disconnect button that actually works
- ʕっ• ᴥ • ʔっ frameless rounded window — drag it anywhere, minimize, close
- 。ᵔ ᴥ ᵔ。 no background threads left dangling when you close it, pinky promise
linux only! reads from
/proc/net/devand usesnmclifor wifi magic ✦
- python 3.11+
- PyQt6 >= 6.4
- pyqtgraph >= 0.13.0
- NetworkManager +
nmcli(for wifi features)
# clone the repo
git clone https://github.com/KsmBl/network-chan.git
cd network-chan
# install dependencies
pip install -r requirements.txt
# run ♡
python main.pyTip
want it to start with your desktop? add python /path/to/main.py to your autostart! ✿
| action | how |
|---|---|
| drag window | click & drag the title bar |
| minimize | click − |
| close | click ✕ or alt+f4 |
| switch interface | use the dropdown at the top |
| scan wifi | click Scan (auto-refreshes every 12s too) |
| connect | click a network → enter password if needed → Connect |
| disconnect | click the red Disconnect button |
| peek at past speeds | hover your mouse over the chart ♡ |
network_monitor/
├── __init__.py # app entry point
├── theme.py # catppuccin mocha palette + stylesheet
├── config.py # persists last-used interface
├── data_source.py # /proc/net/dev reader + nmcli wifi wrapper
├── chart_widget.py # 60s dual-line pyqtgraph chart + hover
└── main_window.py # frameless window, all ui, background workers
all colors come from catppuccin mocha ♡
| role | color | hex |
|---|---|---|
| background | 🟣 base | #1e1e2e |
| panels | 🟣 surface0 | #313244 |
| download | 🔵 blue | #89b4fa |
| upload | 🟣 mauve | #cba6f7 |
| connected | 🟢 green | #a6e3a1 |
| errors | 🔴 red | #f38ba8 |
MIT — do whatever you want with it (੭ ˃̣̣̥ ω˂̣̣̥)੭ु⁾⁾
made with ♡ and too much coffee
if it broke something, that's a feature (´• ω •`)ノ