Combat tracker for Dungeons and Dragons (D&D) 5th Edition
Den officielle Improved Initiative app bor på https://www.improved-initiative.com
Local Development
Requirements
- Node.js (v12+)
Opsætning
- Klonér repo’en til en mappe på din computer
- Åbn den klonede mappe i en kodeeditor såsom Visual Studio Code
- Åbn et terminalvindue (Powershell er det anbefalede terminalprogram til dette projekt)
- Kør følgende kommandoer i terminalvinduet for at opbygge koden til dev-miljøet:
npm installnpx grunt
- For at få dev-serveren til at køre kan du enten:
- trykke på
F5
i Visual Studio Code eller - I et nyt terminalvindue køre
npm run start
- trykke på
- Når serveren kører, skal du besøge http://localhost i en webbrowser for at se en udviklingsversion af brugergrænsefladen, der reagerer på dine kodeændringer.
- Hver gang du foretager en ændring, skal du vente på, at kompileringen er færdig, og derefter manuelt genindlæse din browser.
Udviklingen af Improved Initiative støttes via Patreon.
For at få mere at vide om, hvordan du kan bidrage med kode til Improved Initiative, henvises til BIDRAGE.md.
Linting
Improved Initiative bruger Eslint med prettier til at linte kodefilerne.
Linting sker automatisk ved commit, men du kan også køre det manuelt via: npm run lint
.
App Settings
Du kan konfigurere din instans af Improved Initiative med disse indstillinger. Alle er valgfrie, den grundlæggende funktionalitet bør fungere, hvis du ikke angiver nogen.
-
PORT
– Standardværdien er 80 -
NODE_ENV
– Indstilles til “production” for at opfylde react, indstilles til “development” for at deaktivere html view caching. -
BASE_URL
– Bruges i absolutte URL’er på klientsiden. Falder tilbage til relative url’er, hvis de ikke er tilgængelige. Dette er den kanoniske URL til Patreon callback og browser localStorage. -
SESSION_SECRET
– Bruges til at bevare sessionskontinuitet gennem app genstart eller lignende. Overdrages til express-session. -
DEFAULT_ACCOUNT_LEVEL
– Indstilles til “accountsync” eller “epicinitiative” for at tildele belønninger til alle brugere. Nyttigt, hvis du ikke har nogen DB. -
DEFAULT_PATREON_ID
– Indstil dummy Patreon-brugerid, når du kører medDEFAULT_ACCOUNT_LEVEL
indstillet. -
DB_CONNECTION_STRING
– Angiv en DB-forbindelsesstreng til opbevaring af session og brugerkonti. Ellers bruges Mongo DB i hukommelsen, som ryddes ved genstart af appen. -
METRICS_DB_CONNECTION_STRING
– Angiv en DB-forbindelsesstreng til at skrive metrikker til. -
PATREON_URL
,PATREON_CLIENT_ID
,PATREON_CLIENT_SECRET
– Konfiguration til Patreon-integration
Docker
Kørsel af Improved Initiative inden for Docker er mulig, men helt valgfri og i øjeblikket eksperimentel. Gå frem med forsigtighed, og hvis du er i tvivl, henvises til Docker-dokumentationen.
Opbygning af Docker-aftrykket
For at opbygge Docker-aftrykket med et udviklingsaftryk skal du køre:
docker build -t improved-initiative:latest .
For at opbygge aftrykket med et produktionsaftryk skal du køre:
For at opbygge aftrykket med et produktionsaftryk skal du køre:
docker build --build-arg NODE_ENV=production -t improved-initiative:prod .
Kør applikationen i en Docker-container
For at starte applikationen i containeren skal du køre:
docker run -p80:80 --name improved-initiative improved-initiative:latest
Og for at køre produktionsbygningen:
docker run -p80:80 --name improved-initiative improved-initiative:latest
Og for at køre produktionsbygningen:
docker run -p80:80 --name improved-initiative improved-initiative:prod
Stop og fjernelse af containeren
Såfremt du har startet containeren med navnet improved-initiative
som vist ovenfor, vil følgende kommandoer stoppe containeren og derefter fjerne den:
docker stop improved-initiative
docker rm improved-initiative
Licens
Applikationen Improved Initiative er stillet til rådighed under MIT-licensen.