Necromunda Campaign Tracker is a web application developed in PHP with the Symfony framework and the EasyAdmin bundle. It is designed to help Necromunda (Community Edition 2021) players track their campaigns, manage their gangs, and record battle results.
- Campaign tracking: Create and manage campaigns with detailed statistics.
- Gang management: Track members, equipment, and evolutions of each gang.
- Battle results: Record battles with detailed reports.
- Statistical reports: Analyze campaign performance with charts and summaries.
Before starting, make sure you have the following installed on your machine:
git clone https://github.com/your-username/necromunda-campaign-tracker.git
cd necromunda-campaign-tracker
From the root directory of the project, run the following command to start the Docker containers:
docker-compose up --build -d
Once the Docker containers are running, access the PHP container and install the Composer dependencies:
docker-compose exec php-fpm bash
composer install
Create a .env.local file in the project root for installation-specific variables and specify the database URL:
DATABASE_URL="mysql://user:[email protected]:3306/necromunda"
Run the migrations to create the necessary tables in the database:
php bin/console doctrine:migrations:migrate
To deploy this project in production, don't forget to compile the asset mapper.
php bin/console asset-map:compile
This project uses the makinacorpus/db-tools-bundle
package to automatically back up the database, ensuring the possibility of restoring it in case of issues. To perform a manual backup, you can run the following command:
php bin/console db-tools:backup
To restore a previous backup in case of a problem, use the following command:
php bin/console db-tools:restore
Access the application by opening your browser and visiting http://localhost:8000.
Granting admin status to a user allows them to access more menus and modify custom rules. To do this, add the role ["ROLE_ADMIN"] in the MySQL database for the user.
Custom rules have been added to the base game. These rules can be enabled from the "Custom Rules" tab, which is only accessible to the site admin.
Contributions are welcome! Please follow the steps below to contribute:
Create a branch for your feature:
git checkout -b feature/AmazingFeature
Commit your changes:
git commit -m 'Add some AmazingFeature'
Push your branch:
git push origin feature/AmazingFeature
Open a Pull Request.
This project is licensed under the GNU License. See the LICENSE file for more details.
This project, Necromunda Campaign Tracker, is a personal and non-commercial project. It uses data and content from the Necromunda board game, created by Games Workshop. Necromunda and all associated trademarks and names are the property of Games Workshop.
This project is in no way affiliated with, sponsored, or approved by Games Workshop. All data and content used in this project are the property of their respective owners and are used solely for non-commercial and educational purposes.