Go to file
Henry Whitaker 4f79645191 Removed auth
Doesn't really need user account, no sensitive data held in DB, plus routes that do stuff are rate limited anyway.

Shouldn't be accessible to untrusted users (i.e. should be behind a RP that handles user auth)
2020-04-08 19:45:20 +01:00
2020-04-08 19:06:13 +01:00
2020-04-08 13:57:26 +01:00
2020-04-08 13:57:26 +01:00
2020-04-08 13:57:26 +01:00
2020-04-08 19:45:20 +01:00
2020-04-08 19:45:20 +01:00
2020-04-08 19:45:20 +01:00
2020-04-08 13:57:26 +01:00
2020-04-08 13:57:26 +01:00
2020-04-08 13:57:26 +01:00
2020-04-08 13:57:26 +01:00
2020-04-08 13:57:26 +01:00
2020-04-08 13:57:26 +01:00
2020-04-08 13:57:26 +01:00
2020-04-08 13:57:26 +01:00
2020-04-08 13:57:26 +01:00
2020-04-08 13:57:26 +01:00
2020-04-08 13:57:26 +01:00
2020-04-08 15:35:07 +01:00
2020-04-08 15:35:07 +01:00
2020-04-08 13:57:26 +01:00
2020-04-08 16:55:14 +00:00
2020-04-08 13:57:26 +01:00
2020-04-08 13:57:26 +01:00

Speedtest Tracker

This program runs a speedtest check every hour and graphs the results. The back-end is written in Laravel and the front-end uses React. It uses the speedtest-cli package to get the data and uses Chart.js to plot the results.

speedtest

Installation

Installing Dependencies

This program has some dependencies, to install them you need to run the following:

sudo apt update
sudo apt install software-properties-common
sudo add-apt [ONDREJ 7.4]
sudo apt install php7.4 composer python3 python3-pip
sudo pip install speedtest-cli

Then, download the code by running:

git clone https://github.com/henrywhitaker3/Speedtest-Tracker.git

Install the composer and npm dependencies:

composer install
npm install && npm run production

Scheduling Setup

To get speed test results every hour, you need to add a cronjob, run sudo crontab -e and add an entry with the following:

* * * * * cd /path-to-your-project && php artisan schedule:run >> /dev/null 2>&1

Queue Setup

sudo apt install supervisor
sudo vim /etc/supervisor/conf.d/laravel-worker.conf

Add the following, updating the command and user values:

[program:laravel-worker]
process_name=%(program_name)s_%(process_num)02d
command=php /path/to/project/artisan queue:work
autostart=true
autorestart=true
user=<user>
numprocs=8
redirect_stderr=true

Then run:

sudo supervisorctl reread
sudo supervisorctl update
sudo supervisorctl restart all
Description
No description provided
Readme GPL-3.0 130 MiB
Languages
JavaScript 89.7%
PHP 5.5%
CSS 4%
HTML 0.8%