Install your private server - YellowLabTools/YellowLabTools GitHub Wiki
Installing your own version can be useful if you work on a super-secret project, not accessible from the web, or if you need to run a lot of tests per day.
Note: As per May 2021, the project was split into two parts. The YellowLabTools repository contains the NPM module and the command line client. The YellowLabTools-server repository contains the code for the server.
Method 1: Manual installation
Recommended if you want to create your own server, or if you want to run YLT on your computer (can be useful for testing a page on localhost). Please note that I've only tested this installation on Linux and MacOS, not on Windows.
Requirements
- You need these 2 tools: Git and NodeJS (the recommended version for NodeJS is 12).
- On Debian, you also need libjpeg and fontconfig:
sudo apt-get install libjpeg-dev libfontconfig
. - On CentOS/RHEL, you also need libjpeg-turbo and fontconfig:
sudo yum install libjpeg-turbo-devel fontconfig
Install steps
- Clone the server repository somewhere on your computer:
git clone https://github.com/YellowLabTools/YellowLabTools-server.git
- Get inside the newly created folder and install the dependencies:
cd YellowLabTools-server
npm install
If npm install
fails, try these two commands npm install -g node-gyp
then npm config set unsafe-perm true
and retry npm install
after.
- Create the results folder and the tmp folder in the project's root
mkdir results
mkdir tmp
- Launch the server
node bin/server.js
4bis) If you want a minified version of YLT, you can build with grunt and use the production flag
npm install -g grunt-cli
rm -rf node_modules/cheerio-select
npm install [email protected]
grunt build
NODE_ENV=production node bin/server.js
- Open your browser to http://localhost:8383. The default port 8383 can be changed in
server_config/settings.json
. For advanced users, thebaseUrl
can be changed too, if you plan to access your server on a path that's not the root path (/
).
Method 2: In a virtual machine with Docker
@ousamabenyounes maintains a Docker image for YellowLabTools. Many thanks!
Debugging
See the page How do I debug Yellow Lab Tools?
Commercial or promotional usage
This software is released with a license that allows you to use Yellow Lab Tools in any way you like, including hosting a public instance to support your business.
But:
- Please make sure that your instance is not (accidentally or intentionally) competing with the official public instance in term of SEO on the name "Yellow Lab Tools" (use a robots.txt file to prevent indexation).
- If you change the website's name, please add a visual mention and a link to the original project.
- Any change you make to the code has to be public and open-sourced under the same license.
- If you improve the tool in any way, I'd be happy if you could submit a pull request on the main project.
- Please consider making a donation for the hard work.
- Contact me in case you need help for installing or updating your instance, or just to say hello!