You will need the following in order to run ABR locally:
- MySQL (preferably)
- PHP 7.1
- PHP Composer
- NodeJs v10, NPM v6 recommended
- JQ - download via apt-get (Debian) or homebrew (Mac), this is NOT an npm module
- imagemagick
-
Clone ABR from GitHub
-
Install npm dependencies, install npm gulp globally
npm install npm install -g gulp
-
Install PHP dependencies
php composer.phar install
-
Run gulp to prepare assets (do this every time if you change JS or CSS)
gulp
-
Configure the settings of your local environment. Rename the .example.env file to .env. Edit the DB settings to connect to your locally running DB. Ask the main dev (madarasz / Necro) for NetrunnerDB keys. Google API keys, you can create yourself.
-
Prepare ID icons by running this script (downloads from NetrunnerDB, run it regularly)
./get_id_images.sh
-
Prepare DB tables
php artisan migrate
-
Add Badges and Tournament Type and format data to your database by importing
seed.sql
-
Run the webapp. It should be available at http://localhost:8000 afterwards.
php artisan serve
-
Make yourself an admin. Go to the webapp in your browser. Login via NetrunnerDB to enter your user in the DB. Check your DB (use phpMyAdmin), in table users set the admin value of your user to 1. If you reload the webapp you should see the Admin section in the top menu.
-
Download all the data required from NetrunnerDB. Go to Admin section and click the Update Card cycles, Update Card packs and Update Identities buttons to get the data. Do this every time a new pack comes out.
-
You are done :)
Due to dependency conflicts, you have to have a seperate environment to test and build :(
- nodejs 14
- delete the
node-modules
folder - overwrite
package.json
withtest-package.json
- overwrite
package-lock.json
withtest-package-lock.json
- install cypress globally with
npm install -g cypress
npm install
Open Cypress with npx cypress open
command.
image snapshots will be probably different, disabling such fails
Run: npx cypress run --env failOnSnapshotDiff=false
under development
nvm is a nice tool to run multiple versions of npm. example: nvm exec 10 npm install
Previous Nigthwatch tests were deprecated. Files are still found in /tests/nightwatch/