Traqueur de combat pour Donjons et Dragons (D&D) 5e édition
L’application officielle Improved Initiative vit à https://www.improved-initiative.com
Développement local
Exigences
- Node.js (v12+)
Configuration
- Clonez le repo dans un dossier sur votre ordinateur
- Ouvrez le dossier cloné dans un éditeur de code tel que Visual Studio Code
- Ouvrez une fenêtre de terminal (Powershell est l’application de terminal recommandée pour ce projet)
- Exécutez les commandes suivantes dans la fenêtre du terminal pour construire le code de l’environnement de développement :
npm installnpx grunt
- Pour faire fonctionner le serveur de dev, vous pouvez soit :
- Appuyer sur
F5
dans Visual Studio Code ou - Dans une nouvelle fenêtre de terminal, exécutez
npm run start
- Appuyer sur
- Une fois que le serveur est en cours d’exécution, visitez http://localhost dans un navigateur Web pour voir une version de développement de l’interface utilisateur qui répond à vos modifications de code.
- Chaque fois que vous apportez un changement, attendez qu’il finisse de compiler puis rechargez manuellement votre navigateur.
Le développement d’Improved Initiative est soutenu par Patreon.
Pour en savoir plus sur la façon de contribuer au code d’Improved Initiative, reportez-vous à CONTRIBUTION.md.
Linting
Improved Initiative utilise Eslint avec prettier pour linting les fichiers de code.
Linting se produit automatiquement sur commit, mais vous pouvez également le lancer manuellement via : npm run lint
.
Paramètres de l’application
Vous pouvez configurer votre instance d’Initiative améliorée avec ces paramètres. Tous sont facultatifs, les fonctionnalités de base devraient fonctionner si vous n’en spécifiez aucun.
-
PORT
– Par défaut, 80 -
NODE_ENV
– Définir à « production » pour satisfaire la réactivité, définir à « développement » pour désactiver la mise en cache de la vue html. -
BASE_URL
– Utilisé dans les URL absolues côté client. Retourne aux urls relatives si elles ne sont pas disponibles. C’est l’URL canonique pour le callback Patreon et le localStorage du navigateur. -
SESSION_SECRET
– Utilisé pour garder la continuité de la session à travers les redémarrages de l’app ou autre. Remis à express-session. -
DEFAULT_ACCOUNT_LEVEL
– Défini à « accountsync » ou « epicinitiative » pour accorder des récompenses à tous les utilisateurs. Utile si vous n’avez pas de DB. -
DEFAULT_PATREON_ID
– Définir l’id utilisateur Patreon factice lors de l’exécution avecDEFAULT_ACCOUNT_LEVEL
défini. -
DB_CONNECTION_STRING
– Fournir une chaîne de connexion DB pour le stockage des sessions et des comptes utilisateurs. En mémoire Mongo DB sera utilisé autrement, qui est effacé au redémarrage de l’app. -
METRICS_DB_CONNECTION_STRING
– Fournir une chaîne de connexion DB pour écrire des métriques à. -
PATREON_URL
,PATREON_CLIENT_ID
,PATREON_CLIENT_SECRET
– Configuration pour l’intégration Patreon
Docker
Exécuter Improved Initiative au sein de Docker est possible, mais complètement optionnel et actuellement expérimental. Procédez avec prudence et en cas de doute, reportez-vous à la documentation de Docker.
Construction de l’image Docker
Pour construire l’image Docker avec un build de développement, exécutez :
docker build -t improved-initiative:latest .
Pour construire l’image avec un build de production, exécutez :
docker build --build-arg NODE_ENV=production -t improved-initiative:prod .
Exécuter l’application dans un conteneur Docker
Pour démarrer l’application dans le conteneur, exécutez:
docker run -p80:80 --name improved-initiative improved-initiative:latest
Ou, pour exécuter la construction de production :
docker run -p80:80 --name improved-initiative improved-initiative:prod
Arrêter et supprimer le conteneur
En supposant que vous ayez démarré le conteneur avec le nom improved-initiative
comme indiqué ci-dessus, les commandes suivantes arrêteront le conteneur puis le supprimeront :
docker stop improved-initiative
docker rm improved-initiative
Licence
L’application Initiative améliorée est mise à disposition sous la licence MIT.