Rastreador de combate para Calabozos y Dragones (D&D) 5ª Edición
La app oficial de Improved Initiative vive en https://www.improved-initiative.com
Desarrollo local
Requisitos
- Node.js (v12+)
Configuración
- Clonar el repo en una carpeta de tu ordenador
- Abrir la carpeta clonada en un editor de código como Visual Studio Code
- Abrir una ventana de terminal (Powershell es la aplicación de terminal recomendada para este proyecto)
- Ejecutar los siguientes comandos en la ventana de Terminal para construir el código del entorno de desarrollo:
npm installnpx grunt
- Para conseguir que el servidor dev se ejecute, puede:
- Pulsar
F5
en Visual Studio Code o - En una nueva ventana de terminal ejecutar
npm run start
- Pulsar
- Una vez que el servidor se está ejecutando, visite http://localhost en un navegador web para ver una versión de desarrollo de la UI que responde a sus cambios de código.
- Cada vez que realices un cambio, espera a que termine de compilarse y luego recarga manualmente tu navegador.
El desarrollo de Iniciativa Mejorada se apoya a través de Patreon.
Para saber más sobre cómo contribuir con código a Iniciativa Mejorada, consulta CONTRIBUIR.md.
Linting
Improved Initiative utiliza Eslint con prettier para lintar los archivos de código.
Linting ocurre automáticamente en el commit, pero también puedes ejecutarlo manualmente a través de: npm run lint
.
Configuración de la aplicación
Puedes configurar tu instancia de Iniciativa Mejorada con estos ajustes. Todos son opcionales, la funcionalidad básica debería funcionar si no se especifica ninguno.
-
PORT
– Por defecto a 80 -
NODE_ENV
– Poner en «producción» para satisfacer react, poner en «desarrollo» para deshabilitar la caché de la vista html. -
BASE_URL
– Se utiliza en las URLs absolutas en el lado del cliente. Vuelve a las urls relativas si no está disponible. Esta es la URL canónica para el callback de Patreon y el localStorage del navegador. -
SESSION_SECRET
– Se utiliza para mantener la continuidad de la sesión a través de reinicios de la aplicación o algo así. Se entrega a express-session. -
DEFAULT_ACCOUNT_LEVEL
– Se ajusta a «accountsync» o «epicinitiative» para conceder recompensas a todos los usuarios. Útil si no tienes DB. -
DEFAULT_PATREON_ID
– Establecer el id de usuario Patreon ficticio cuando se ejecuta conDEFAULT_ACCOUNT_LEVEL
establecido. -
DB_CONNECTION_STRING
– Proporcionar una cadena de conexión DB para el almacenamiento de la sesión y la cuenta de usuario. En la memoria Mongo DB se utilizará de otra manera, que se borra en el reinicio de la aplicación. -
METRICS_DB_CONNECTION_STRING
– Proporcionar una cadena de conexión DB para escribir métricas a. -
PATREON_URL
,PATREON_CLIENT_ID
,PATREON_CLIENT_SECRET
– Configuración para la integración de Patreon
Docker
La ejecución de la Iniciativa Mejorada dentro de Docker es posible, pero completamente opcional y actualmente experimental. Proceda con precaución y, en caso de duda, consulte la documentación de Docker.
Construir la imagen Docker
Para construir la imagen Docker con una construcción de desarrollo, ejecute:
docker build -t improved-initiative:latest .
Para construir la imagen con una construcción de producción, ejecute:
docker build --build-arg NODE_ENV=production -t improved-initiative:prod .
Ejecutar la aplicación en un contenedor Docker
Para iniciar la aplicación dentro del contenedor, ejecute:
docker run -p80:80 --name improved-initiative improved-initiative:latest
O, para ejecutar la construcción de producción:
docker run -p80:80 --name improved-initiative improved-initiative:prod
Detener y eliminar el contenedor
Suponiendo que has iniciado el contenedor con el nombre improved-initiative
como se muestra arriba, los siguientes comandos detendrán el contenedor y luego lo eliminarán:
docker stop improved-initiative
docker rm improved-initiative
Licencia
La aplicación Iniciativa Mejorada está disponible bajo la licencia MIT.