Code Monkey home page Code Monkey logo

improved-initiative's Introduction

improved-initiative

Combat tracker for Dungeons and Dragons (D&D) 5th Edition

The official Improved Initiative app lives at https://www.improved-initiative.com

To run, install node.js and run the following in the cloned directory:

npm install

npm start

Once the Improved Initiative app is running, the ui can be accessed at http://localhost

You can start the dev build process by running grunt. This will automatically rebuild the project when you change any TypeScript or LessCSS files.

Development of Improved Initiative is supported through Patreon.

Refer to CONTRIBUTING.md if you'd like to contribute code.

App Settings

You can configure your instance of Improved Initiative with these settings. All are optional, basic functionality should work if you don't specify any.

  • PORT - Defaults to 80
  • NODE_ENV - Set to "production" to satisfy react, set to "development" to disable html view caching.
  • BASE_URL - Used in absolute URLs on client side. Falls back to relative urls if unavailable. This is the canonical URL for Patreon callback and browser localStorage.
  • SESSION_SECRET - Used to keep session continuity through app restarts or something. Handed to express-session.
  • DEFAULT_ACCOUNT_LEVEL - Set to "accountsync" or "epicinitiative" to grant rewards to all users. Useful if you have no DB.
  • DEFAULT_PATREON_ID - Set the dummy Patreon user id when running with DEFAULT_ACCOUNT_LEVEL set.
  • DB_CONNECTION_STRING - Provide a DB connection string for session and user account storage. In memory Mongo DB will be used otherwise, which is cleared on app restart.
  • KEEN_API_URL, KEEN_PROJECT_ID, KEEN_READ_KEY, KEEN_WRITE_KEY - Configuration for metrics pipeline
  • PATREON_URL, PATREON_CLIENT_ID, PATREON_CLIENT_SECRET - Configuration for Patreon integration

Docker

Running Improved Initiative within Docker is possible, but completely optional and currently experimental. Proceed with caution and when in doubt, refer to the Docker documentation.

Building the Docker Image

To build the docker image with a development build, run:

docker build -t improved-initiative:latest .

To build the image with a production build, run:

docker build --build-arg NODE_ENV=production -t improved-initiative:prod .

Running the App in a Docker Container

To start the application within the container, run:

docker run -p80:80 --name improved-initiative improved-initiative:latest

Or, to run the production build:

docker run -p80:80 --name improved-initiative improved-initiative:prod

Stopping and Removing the Container

Assuming you started the container with the name improved-initiative as shown above, the following commands will stop the container and then remove it:

docker stop improved-initiative

docker rm improved-initiative

improved-initiative's People

Contributors

arcos avatar ascendedguard avatar azzurite avatar chrisbloom7 avatar coreyjkelly avatar cynicaloptimist avatar danlite avatar dlom avatar dprothero avatar flooey avatar groke avatar kmaris avatar komagr avatar lostminion avatar omegajak avatar paulmoliva avatar ryanmurray1 avatar taylor1791 avatar thekrush avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.