Lurkars / gloomhavensecretariat

A Gloomhaven / Frosthaven Companion App
https://gloomhaven-secretariat.de
GNU Affero General Public License v3.0
180 stars 70 forks source link

Gloomhaven Secretariat

Latest Online Version

Publish Latest Online Version Build and Publish Release Publish Docker Image

image

Scenario 1 of Gloomhaven with starting classes of different editions

Introduction

Gloomhaven Secretariat is a companion app for Gloomhaven-based board games. The app supports all official editions, namely Gloomhaven, Frosthaven, Jaws of the Lion, Forgotten Circles and Button & Bugs, the community editions The Crimson Scales and Trail of Ashes as well as Solo scenarios and custom content.

GHS is a complete replacement for the abandoned Gloomhaven Helper app (by Esoteric Software®), enhanced with more tracking and automation features. As a single-screen web application, GHS helps manage scenario play by tracking character and monster turns, automatically setting up monsters separately for each room or section, assisting with scenario-specific rules, attack modifiers, loot deck, and much more. GHS also tracks your progress on the Character, Party and Campaign sheets, allowing you to buy and equip items, loot treasures, apply all scenario rewards, register scenario unlocks and manage your outpost. For a more detailed feature list, including a comparison of some popular applications, see Comparison of Companion Apps.

Multiple clients are supported by a server component Gloomhaven Secretariat Server with a public instance available at gloomhaven-secretariat.de.

Since GHS is a web application, no installation is required and it runs in any modern browser, even on mobile devices, but it can also be installed for offline use.

An extensive settings menu ensures highly individual customization to suit all requirements. Almost every feature can be switched on/off or customized.

Gloomhaven Secretariat is open-source software built with Angular and is open for the community to actively contribute ideas, suggestions and of course feedback and bug fixes.

A basic user guide is available online.

SPOILER WARNING: The label-spoiler folder in the data folders, and therefore the final edition data files in the releases in the ./assets/data folder, contain spoilers by including the appropriate label.

More information about spoilers in this repository

Support me

Buy me a coffee? (or Donate directly via PayPal)

Current Features

Planned next

Long term plans

Install

Install as App

You can always install any hosted version as an App (PWA) if your OS/Browser supports PWA installation. For example, here is the Latest Online Version.

Instructions for different devices/browsers:

Standalone

An Electron application is available for Linux, Mac and Windows. Download the appropriate files from the latest release assets.

Linux AppImage only tested for now

Self-hosting

To self-host Gloomhaven Secretariat on your web server, simply download the zip file from the latest release and unzip it on your web server.

The base url for this build is set to root. To use a different base URL, please build your own package.

Build and run with Docker

Publish Docker Image

If you want to use docker to run on port 80, run the following

docker pull gloomhavensecretariat/ghs
docker run --rm -p 80:80 --name ghs gloomhavensecretariat/ghs

For use with docker compose, just run docker compose up -d.

Building from source

If you want to create your own custom build (e.g. for self-hosting), prepare a development setup. Then run npm run build (available options) and access the build at ./dist/gloomhavensecretariat.

Development

Prerequisite:

Check out the source with git clone https://github.com/Lurkars/gloomhavensecretariat.git.

Install the dependencies with npm install.

Then run npm run start to create a development server at http://localhost:4200.

To develop with docker, install docker compose and run docker compose -f docker-compose.dev.yaml up -d.

Contributing

Feel free to file a new issue for bugs, features, and improvements, or start a new new discussion for help or feedback.

All game data is located in the data folder with subfolders for each release. A third-party review of all data would be great. As all files are JSON data, they should easily be human-readable. Each character, monster, and monster deck has its own file, so it should be easy to check. Each edition folder will be concatenated into a single edition data file on build.

Pull requests are also welcome!

Please note: all files in the data subfolder will be automatically formatted and added to each commit. If you have made local changes to these files and do NOT want to commit those changes, please use the --no-verify parameter for your git commit and git push commands.

Thanks to everyone who has already contributed, you're awesome!

Archive

All older versions are also available on gloomhaven-secretariat.de, for example the first version v0.0.1 is available at v0-0-1.gloomhaven-secretariat.de. All available tags are listed under Releases, just replace all . with - for a proper url. This is meant as a showcase for the evolution of GHS, but also as a fallback, if a release breaks something important, you can always fall back to a previous version.

Please note that there is no history of the server component. So connecting to the current server with older clients may not work properly!

Privacy

This application does NOT collect any personal data. Everything runs and stays in your browser/local memory. For details on the server component please go to Gloomhaven Secretariat Server#Privacy.

Copyright / License

Gloomhaven and all related properties, images and text are owned by Cephalofair Games.

Assets/Data used:

Source code is licensed under AGPL

Personal disclaimer

This is a hobby project I do in my spare time. The software fills a practical need due to the demise of the original Gloomhaven Helper application, so I am following the Quick'n'Dirty approach to get things done quickly. This of course leads to a lack of quality and testing and the code base is definitely not in line with my professional work.