cynicaloptimist / improved-initiative

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

公式の Improved Initiative アプリは https://www.improved-initiative.com

ローカル開発

Requirements

  • Node.Nodes.NET Framework Combat Tracker for D&D 第5版 Combat Tracker for D&Planner (D&Planner) Combat Tracker for D&Planner (D&Planner)js (v12+)

Setup

  • Repo をコンピューター上のフォルダにクローンします
  • Visual Studio Code などのコード エディターで、クローン フォルダを開きます
  • Terminal ウィンドウ(このプロジェクトでは Powershell がおすすめのターミナル アプリケーション)を開き、次のコマンドを実行して開発環境のコードをビルドします。
npm installnpx grunt
  • 開発サーバーを実行するには、
    • Visual Studio Code で F5 を押すか、
    • 新しいターミナル ウィンドウで npm run start
  • サーバーを実行したら、Web ブラウザで http://localhost にアクセスしてコードの変更に対応する開発バージョンの UI を表示できます。
  • 変更を加えるたびに、コンパイルが完了するのを待ち、手動でブラウザを再読み込みします。

Improved Initiative の開発は Patreon で支援されています。

Improved Initiative へのコードの提供方法については、「貢献すること」を参照してください。md.

Linting

Improved Initiative は Eslint と prettier を使用してコードファイルを Lint しています。

Lintはコミット時に自動的に行われますが、以下の方法で手動で実行することも可能です。 npm run lint.

App Settings

Improved Initiative のインスタンスは、これらの設定を行うことができます。

  • PORT – デフォルトは80
  • NODE_ENV – “production” に設定すると反応し、 “development” に設定するとhtmlビューキャッシュが無効になる。
  • BASE_URL – クライアント側の絶対URLで使用する。 利用できない場合は相対 URL にフォールバックします。 これは、Patreon コールバックとブラウザの localStorage.
  • SESSION_SECRET – アプリの再起動などを通じてセッションの継続性を維持するために使用されます。 express-session.
  • DEFAULT_ACCOUNT_LEVEL – “accountsync” または “epicinitiative” に設定し、すべてのユーザーにリワードを付与するようにしました。 DBがない場合に便利です。
  • DEFAULT_PATREON_IDDEFAULT_ACCOUNT_LEVEL セットで実行した場合のダミーPatreonユーザーIDを設定。
  • DB_CONNECTION_STRING – セッションとユーザーアカウントの保存にDB接続文字列を提供します。
  • METRICS_DB_CONNECTION_STRING – メトリクスを書き込むためのDB接続文字列を指定します。
  • PATREON_URL, PATREON_CLIENT_ID, PATREON_CLIENT_SECRET – Patreon統合用の設定

Docker

Improved InitiativeをDocker内で動かすことはできますが、完全に任意で現在は実験的なものです。 Dockerのドキュメントを参照し、慎重に進めてください。

Dockerイメージの構築

開発ビルドでDockerイメージを構築するには、以下を実行します:

docker build -t improved-initiative:latest .

本番ビルドでイメージを構築するには、以下を実行します:

docker build -t improved-initiative:latest .

開発ビルドでイメージは構築できます。

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

Running the App in a Docker Container

コンテナー内でアプリケーションを起動するには、以下を実行します:

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

あるいは、production buildを実行するには、以下のように実行します。

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

Container の停止と削除

上記のように improved-initiative という名前でコンテナを起動したと仮定して、次のコマンドでコンテナを停止してから削除します:

docker stop improved-initiative

docker rm improved-initiative

License

改善イニシアティブアプリは MIT ライセンスで提供されます。

コメントを残す

メールアドレスが公開されることはありません。