DnD-Montreal / session-tome

[React / Laravel 8.x / InertiaJS] A web application for tracking Player Adventurers' League Logs
MIT License
3 stars 2 forks source link
adventurers-league dnd5e dungeons-and-dragons javascript laravel php react reactjs typescript

Build Status License

SessionTome

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.

Installation

For more in-depth development environment set-up & application installation instructions, see the Wiki entry about Development Environments.

Quick Start

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.

Without Local Dependencies Installed

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'

With Local Dependencies Installed

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

Usage

Docker Compose

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!

Contributing

If you're interested in contributing to Session Tome, see our Contributing guidelines.

Credit

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.

License

Session Tome is open-sourced software licensed under the MIT license.

Security Vulnerabilities

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.