Website | Documentation | Changelog server | Changelog testrunner | Mastodon
This project helps you set up your own online version of sitespeed.io. You get:
A server with GUI and API:
Test Runners:
Search Functionality:
Follow these steps to quickly set up and run the online version of sitespeed.io on your local machine. Make sure you have Docker, docker-compose, sitespeed.io and NodeJS installed on your machine.
Clone the repository:
git clone https://github.com/sitespeedio/onlinetest.git
Navigate to the project directory:
cd onlinetest
Start the Docker containers (Redis/PostgreSQL/Minio):
docker compose up
Open a new terminal tab or window and navigate to the server directory:
cd server
Start the server:
node app.js
Open another new terminal tab or window and navigate to the testrunner directory:
cd ../testrunner
Start the testrunner:
node app.js
Now you can open your web browser and navigate to http://127.0.0.1:3000 to run your first test.
To get it up and running (the docker-compose file), you need:
A Message broker: - A Redis-like data storage/message broker. The default setup uses keydb and has also been tested with Valkey.
A Database: - PostgreSQL - the open source database.
A Test Result Storage: - Somewhere to store test results. The default setup uses minio, an open source implementation of S3 but you can use all the result storages that work with sitespeed.io: S3, Google Cloud Storage or your own storage where you can scp the result.
Additionally, there's a server and one or multiple test runners that run the sitespeed.io tests.
Onlinetest is super flexible and highly configurable. I'm working on the documentation and you will find the full documentation at https://www.sitespeed.io/documentation/onlinetest when it's ready.
Running servers and testing costs money and you can help support sitespeed.io at Open Collective.