aeons-end-randomizer
aeons-end-randomizer copied to clipboard
🧙🏻♀️Awesome Companion App for Aeons End: https://aeons-end-randomizer.de 🧙🏽♂️
ToC
- About
- Updating to the newest version
-
Available Scripts
-
yarn start
-
yarn test:jest
-
yarn test:jest:ci
-
yarn test:coverage
-
yarn test:components
-
yarn test:components:coverage
-
yarn test:redux
-
yarn test:redux:coverage
-
yarn test:cy
-
yarn test:cy:open
-
yarn deploy:docs
-
yarn run build
-
yarn run build:gh-pages
-
yarn run deploy
-
yarn run analyze:app
-
yarn run analyze:vendor
-
- Using types and data in other apps
- TODO - writing client side migrations
- Contribution Guidelines
- Code of Conduct
About
Aeons End Randomizer is an unofficial companion app for the popular deck building game Aeons End. It is build as an offline first Progressive Web App, which means that it can be opened inside a regular web browser, but also be saved to you smartphone or tablet device (by using the "add-to-homescreen" option, your handheld browser provides). If you do the latter, the randomizer will behave almost like a native application.
AER currently does not communicate with any kind of backend. All user data, like e.g. your settings are saved locally on you device in your browsers instance of indexedDB. This way you will always be able to use the app, even during periods where you do not have an internet connection.
Updating to the newest version
Currently updating is a bit cumbersome (don't worry, we are working on it). To receive the newest version of the app close all instances of it (browser tabs and instances added to your homescreen) and re-open them. In most cases this should do the trick. If you still do not have the newest version (check by referencing the version number inside the apps drawer), repeat the process.
Available Scripts
This project was bootstrapped with Create React App.
In the project directory, you can run:
yarn start
Runs the app in the development mode.
Open http://localhost:3000 to view it in the browser.
The page will reload if you make edits.
You will also see any lint errors in the console.
yarn test:jest
Launches the test runner in the interactive watch mode.
See the section about running tests for more information.
yarn test:jest:ci
Runs jest single threaded for CI purposes. Otherwise memory issues might occur.
yarn test:coverage
Runs all tests and creates coverage for them
yarn test:components
Only runs component tests
yarn test:components:coverage
Only runs component tests and creates coverage
yarn test:redux
Only runs redux related tests
yarn test:redux:coverage
Only runs redux tests and creates coverage
yarn test:cy
Runs cypress test inside the command line
yarn test:cy:open
Opens the cypress app to run tests and see the dashboard
yarn deploy:docs
Deploys the ./docs
directory directly to github pages.
You need to have repository access and push permissions to run this command.
NOTE: To show the docs locally, you have to install docsify as global npm package and run
docsify serve docs -p 3001
inside the project root.
yarn run build
Builds the app for production to the build
folder.
It correctly bundles React in production mode and optimizes the build for the best performance.
The build is minified and the filenames include the hashes.
Your app is ready to be deployed!
See the section about deployment for more information.
yarn run build:gh-pages
This builds the app for github pages. This should no longer be used, as production moved to netlify!
yarn run deploy
This is currently used as a our legacy way of deployment! We now deploy manually to surge instead.
Creates the regular build and pushes to the repositories gh-pages
branch afterwards.
yarn run analyze:app
Runs the source-map-explorer and displays its results inside the browser.
This analyzes only app data. node_modules
are skipped.
yarn run analyze:vendor
Runs the source-map-explorer and displays its results inside the browser.
This analyzes only vendor data. app
data is skipped.
Docker Setup
This project can also be deployed via docker-compose.
Simply run docker-compose up -d
inside the docker folder. Open http://localhost:8080 to view it in the brwoser.
For further instructions regarding docker or docker-compose please refer to the official documentations of docker or docker-compose
Using types and data in other apps
The typings and all of our aeons end data are part of this mono-repository. However we publish both separately to npm, so they can be easily consumed by other applications and libraries.