cynicaloptimist / improved-initiative

Combat tracker pentru Dungeons and Dragons (D&D) ediția a 5-a

Aplicația oficială Improved Initiative trăiește la https://www.improved-initiative.com

Local Development

Requirements

  • Node.js (v12+)

Configurare

  • Clonați repo-ul într-un dosar de pe computerul dumneavoastră
  • Deschideți dosarul clonat într-un editor de cod, cum ar fi Visual Studio Code
  • Deschideți o fereastră de terminal (Powershell este aplicația de terminal recomandată pentru acest proiect)
  • Executați următoarele comenzi în fereastra Terminalului pentru a construi codul mediului de dezvoltare:
npm installnpx grunt
  • Pentru a face serverul dev să funcționeze, puteți fie:
    • Presați F5 în Visual Studio Code sau
    • Într-o nouă fereastră de terminal executați npm run start
  • După ce serverul funcționează, vizitați http://localhost într-un browser web pentru a vizualiza o versiune de dezvoltare a interfeței de utilizare care răspunde la modificările codului dumneavoastră.
  • De fiecare dată când faceți o modificare, așteptați să se termine compilarea, apoi reîncărcați manual browserul.

Dezvoltarea Improved Initiative este susținută prin Patreon.

Pentru a afla mai multe despre cum să contribuiți cu cod la Improved Initiative, consultați CONTRIBUȚIA.md.

Linting

Improved Initiative folosește Eslint cu prettier pentru a face linting-ul fișierelor de cod.

Linting-ul are loc automat la confirmare, dar puteți, de asemenea, să îl executați manual prin: npm run lint.

App Settings

Puteți configura instanța dvs. de Improved Initiative cu aceste setări. Toate sunt opționale, funcționalitatea de bază ar trebui să funcționeze dacă nu specificați niciuna.

  • PORT – Setează în mod implicit 80
  • NODE_ENV – Setați la „production” pentru a satisface reacția, setați la „development” pentru a dezactiva cachingul de vizualizare html.
  • BASE_URL – Folosit în URL-urile absolute pe partea clientului. Revine la URL-uri relative dacă nu este disponibil. Acesta este URL-ul canonic pentru apelarea Patreon și browserul localStorage.
  • SESSION_SECRET – Folosit pentru a păstra continuitatea sesiunii prin reporniri de aplicații sau ceva de genul acesta. Predat la express-session.
  • DEFAULT_ACCOUNT_LEVEL – Setat la „accountsync” sau „epicinitiative” pentru a acorda recompense tuturor utilizatorilor. Utile dacă nu aveți nici o BD.
  • DEFAULT_PATREON_ID – Setează id-ul utilizatorului Patreon fictiv atunci când rulează cu DEFAULT_ACCOUNT_LEVEL setat.
  • DB_CONNECTION_STRING – Furnizează un șir de conexiune la BD pentru stocarea sesiunii și a conturilor de utilizator. În caz contrar, se va utiliza în memorie Mongo DB, care se șterge la repornirea aplicației.
  • METRICS_DB_CONNECTION_STRING – Furnizați un șir de conexiune DB pentru a scrie metrici.
  • PATREON_URL, PATREON_CLIENT_ID, PATREON_CLIENT_SECRET – Configurație pentru integrarea Patreon

Docker

Executarea Inițiativei îmbunătățite în cadrul Docker este posibilă, dar complet opțională și în prezent experimentală. Procedați cu prudență și, în caz de îndoială, consultați documentația Docker.

Construirea imaginii Docker

Pentru a construi imaginea Docker cu un build de dezvoltare, executați:

docker build -t improved-initiative:latest .

Pentru a construi imaginea cu un build de producție, executați:

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

Executarea aplicației într-un container Docker

Pentru a porni aplicația în container, executați:

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

Ou, pentru a executa construcția de producție:

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

Oprirea și eliminarea containerului

Să presupunem că ați pornit containerul cu numele improved-initiative, așa cum se arată mai sus, următoarele comenzi vor opri containerul și apoi îl vor elimina:

docker stop improved-initiative

docker rm improved-initiative

Licență

Aplicația Improved Initiative este disponibilă sub licența MIT.

Lasă un răspuns

Adresa ta de email nu va fi publicată.