All Projects → Ryandev → NetStatus

Ryandev / NetStatus

Licence: MIT License
Internet speed & offline status monitor. Upload, download, ping, latency dashboard display

Programming Languages

typescript
32286 projects
HTML
75241 projects
CSS
56736 projects
shell
77523 projects

Projects that are alternatives of or similar to NetStatus

react-router-v4-maizuo
react+react-router-4.0版本 单页面应用实战
Stars: ✭ 48 (-48.39%)
Mutual labels:  react-router
react-visualized-platform
🐞 基于 React 的雾霾数据爬虫分析平台
Stars: ✭ 31 (-66.67%)
Mutual labels:  react-router
FlipED
A LMS built specifically for Thailand's Education 4.0 system.
Stars: ✭ 24 (-74.19%)
Mutual labels:  react-router
vue-ioc
IoC and DI for Vue powered by InversifyJS and inspired by Angular Module syntactic sugar.
Stars: ✭ 39 (-58.06%)
Mutual labels:  inversifyjs
OpenBook-E-Commerce
An e-commerce progressive web application, built with mern stack. It has features like product buy, order management by admin, payment gateway, cart, checkout and lot more.
Stars: ✭ 53 (-43.01%)
Mutual labels:  react-router
telephone-ts
Telephone-ts: The "Event Emitter-less" TypeScript Event Architecture.
Stars: ✭ 22 (-76.34%)
Mutual labels:  inversifyjs
deeperience-react-native
React native boilerplate made by Deeperience
Stars: ✭ 85 (-8.6%)
Mutual labels:  react-router
react-douban
豆瓣电影-react版本
Stars: ✭ 45 (-51.61%)
Mutual labels:  react-router
amazon-ivs-chime-web-demo
A demo web application intended as an educational tool for demonstrating how to load and play Amazon IVS streams alongside the Amazon Chime SDK.
Stars: ✭ 35 (-62.37%)
Mutual labels:  react-router
HealthCare-Insurance-Ethereum
Medical insurance claiming DApp which uses a Multi-Sig type approach to grant claim (ConsenSys project)
Stars: ✭ 65 (-30.11%)
Mutual labels:  react-router
react-theme
Production ready Wordpress theme built with React, Redux, Redux-Thunk, Intl, React Router v4, etc... and packaged by Webpack 2. Enjoy!
Stars: ✭ 14 (-84.95%)
Mutual labels:  react-router
react-ssr-spa
Server side rendered single page app using reactjs official libraries.
Stars: ✭ 30 (-67.74%)
Mutual labels:  react-router
react-router
React Router kütüphanesi Türkçe çeviri
Stars: ✭ 87 (-6.45%)
Mutual labels:  react-router
boring-router
A type-safe MobX router with parallel routing support.
Stars: ✭ 74 (-20.43%)
Mutual labels:  react-router
auth-with-saga-example
code for https://medium.com/@stepankuzmin/authentication-with-react-router-redux-5-x-and-redux-saga-55da66b54be7
Stars: ✭ 14 (-84.95%)
Mutual labels:  react-router
transitionable-routes
Perform transitions when changing routes with React Router
Stars: ✭ 26 (-72.04%)
Mutual labels:  react-router
nodejs-boilerplate
Clean Architecture for node.js projects (Typescript + Express + TypeORM + Typedi)
Stars: ✭ 199 (+113.98%)
Mutual labels:  inversifyjs
glific-frontend
Frontend for the Glific platform
Stars: ✭ 18 (-80.65%)
Mutual labels:  react-router
timeoff-server
TimeOff is an application that allows companies' employees to set vacations before they begin taking their time off. Implemented in modern tech stack i.e. Node, Express, MongoDB.
Stars: ✭ 33 (-64.52%)
Mutual labels:  react-router
Socialgram
Clone of Facebook with limited features
Stars: ✭ 15 (-83.87%)
Mutual labels:  react-router

NetStatus

NetStatus is designed as an always-on dashboard WebUI to track internet connectivity It will periodically recheck its connection & provide a live view of status, online or off. speed up/down & latency

Live: http://netstatus.ryanpowell.dev

This project was intended for use with Raspberry Pi + 3.5" LCD display, however it supports multiple devices, aspect-ratios Raspberry PI screenshot Device setup instructions for Raspberry PI, (flasing image, package installs, autostart setup) RPI

Features

  • Offline notifications
  • Periodic netspeed speed checks (latency, jitter, upload/download speed)
  • Configurable
  • Easy to run (Docker)
  • Optimized for small screens, however designed to work on any screensize or orientation,

Screenshots

Everything ok

Dashboard status ok

No network connection found/lost

Dashboard offline

Latency/Upload error status & download warning status

Dashboard status slow

Bottom row: left is the time elapsed since the last speed test. Right is your public IP address

When the WiFi icon is showing, a new speed-test is underway, display will be updated once all results are in

Run

Options:

  1. Load url https://netstatus.ryanpowell.dev in Browser
  2. Build project & serve static files (Download project, run npm run build & serve contents from ./build)
  3. Deploy locally with Docker below & open http://localhost:80
  4. Deploy with balena (more details below)

Docker Deployment

Run below (supports amd64, arm64 & arv7, aka PC, Pi4, Pi3) sudo docker run --name netspeed -d --restart=always -p 80:80 ryandev/netspeed

Docker Configurables

Name Description Environment name Value units Default value
Frequency of ping checks How frequently to fetch a favicon to check if the network is there. This is needed as navigator.isOnline implmentation varies across browsers REACT_APP_PINGINTERVAL Seconds 15
Which websites to check connectivity with Used with the above parameter, a random website from this list is pulled and the favicon is fetched from. To override this value please set as a JSON array REACT_APP_PINGWEBSITES N/A See config/ping.ts
Speed test interval How frequently to check network speed (latency, jitter, upload & download speed) REACT_APP_TESTINTERVAL Seconds 300
Speed test servers List of speed test servers to use to test speed against. Configuration is passed to Librespeed, for more info see the config or Librespeed/speedtest website REACT_APP_SERVERCONFIGURATIONS N/A See config/speedtest.ts
Upload warning threshold Threshold at which the color of the upload status will be shown as a warning. Example: if after a speed test the upload speed is less than REACT_APP_UPLOADWARN then display as warning REACT_APP_UPLOADWARN Mbit/s 4
Upload error threshold Same as above except for displaying as error status REACT_APP_UPLOADERROR Mbit/s 1
Download warning theshold REACT_APP_DOWNLOADWARN Mbit/s 8
Download error threshold REACT_APP_DOWNLOADERROR Mbit/s 1
Latency warning threshold REACT_APP_LATENCYWARN ms 40
Latency error threshold REACT_APP_LATENCYERROR ms 100
Jitter warning threshold REACT_APP_JITTERWARN ms 50
Jitter error threshold REACT_APP_JITTERERROR ms 100
All configurables can be found under src/config/*.ts

Docker Deployment Example

Set speed test interval to 10mins, ping checks every 1min, & latency warn threshold to 20ms

sudo docker run --name netspeed -d --restart=always -p 80:80 --env REACT_APP_TESTINTERVAL=600 --env REACT_APP_PINGINTERVAL=60 --env REACT_APP_LATENCYWARN=20 ryandev/netspeed:arm64

Balena Deployment Example

You can use balenaCloud to deploy this project to Raspberry Pis and other single board computers in just a few clicks, avoiding the need to manually configure any software packages.

or, manually:

  • Install the balena CLI tools
  • Login with balena login
  • Download this project and from the project directory run balena push <appName> where <appName> is the name you gave your balenaCloud application in the first step

Attributions

License

MIT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].