A web application for managing Dungeons and Dragons Adventurer's League Characters. Featuring player rating and magic item trading systems!
This Project is built as a React front end SPA and communicates with Laravel via InertiaJS.
Session Tome was built for and in collaboration with DnD MTL.
For more in-depth development environment set-up & application installation instructions, see the Wiki entry about Development Environments.
To run this project locally, all you truly need is Docker. Though to develop locally, it's helpful to install PHP8.0, Composer, and Node14 + Yarn.
If you are not running this application to develop locally, then you can simply leverage the docker containers and docker compose to run the required commands.
cp .env.example .env
# Before proceeding make sure to set APP_ENV=production in the .env to automate running migrations
# use Docker to run the required set-up commands
docker compose run --rm --no-deps php bash -ci "composer install && php artisan key:generate"
docker compose run --rm --no-deps node bash -ci 'yarn install && yarn run prod'
If you have all the required dependencies installed, then you can rely much less on running docker containers and instead run the commands directly on your host machine.
cp .env.example .env
composer install
php artisan key:generate
yarn install
yarn dev
# To install backpack fully you must publish the front-end assets
php artisan vendor:publish --provider="Backpack\CRUD\BackpackServiceProvider" --tag=public
Once all the dependencies have been installed and set-up is complete, from the project root simply run:
docker network create web-public
docker compose up -d
# If you're running the site with local dependencies you'll need to migrate your database with
php artisan migrate
At which point, docker will begin to download all the required images if they're missing and initialize them. The first time this will take a few moments; though subsequent runs should be much quicker.
Once complete, the site should be available at http://localhost!
If you're interested in contributing to Session Tome, see our Contributing guidelines.
This project was designed and created by "Wizards of the Code" consisting of:
note: Wizards of the Code is in no way affiliated with Wizards of the Coast. Any similarities are purely coincidental.
Session Tome is open-sourced software licensed under the MIT license.
If you discover a security vulnerability within Session Tome, please send an e-mail to Massimo Triassi via massimo@dndmtl.com. All security vulnerabilities will be promptly addressed.