This repository holds the source code of NetrunnerDB.
This is not where the cards data is
The data used by NetrunnerDB is at https://github.com/Alsciende/netrunner-cards-json. If you want to fix a mistake in some card data, or add the data of a new card, you can submit a PR there. Also, that's where the localized data is.
Installing a local copy of NetrunnerDB
Prerequisite
- you need a recent apache/php/mysql stack
- your php module must be configured with
mbstring.internal_encoding = UTF-8
How to install
- Go into the directory where your server will reside
- Clone the repository (or your own fork)
- This creates a directory named
netrunnerdb
- Also, clone the data repository (or your own fork) at https://github.com/zaroth/netrunner-cards-json
- Go into it the directory
netrunnerdb
- Install Composer (see https://getcomposer.org/download/)
- Install the vendor libs:
composer install
. You'll be asked to input your database connection parameter. - Create the database:
php app/console doctrine:database:create
- If the above command fails, edit app/config/parameters.yml and try again
- Create the tables:
php app/console doctrine:schema:update --force
- Import all the data from the data repository:
php app/console nrdb:import:std path_to_json_repository
- Configure your web server with the correct DocumentRoot. Alternatively, use PHP's built-in Web Server. Set your DocumentRoot to
netrunnerdb/web
- Point your browser to
/app_dev.php
How to add card images
- Put the card images in
web/card_image/
(web/card_image/01001.png
, etc.)
How to update
When you update your repository (git pull
), run the following commands:
composer self-update
composer install
(do not runcomposer update
)php app/console doctrine:schema:update --force
php app/console nrdb:import:std path_to_json_repository
Deck of the Week
To update the deck of the week on the front page:
php app/console nrdb:highlight decklist_id
where decklist_id
is the numeric id of the deck you want to highlight.
Setup an admin account
- register
- make sure your account is enabled (or run
php app/console fos:user:activate <username>
) - run
php app/console fos:user:promote --super <username>
Add or edit cards
- update the json data
- run
php app/console nrdb:import:json path_to_json_repository