Variables de Entorno
Para que el backend pueda funcionar correctamente se requiere que el archivo .env esté correctamente configurado.
Contenido del archivo .env
VARIABLE = tipo de dato
APP_NAME = string;
DASHBOARD_PORT = number;
CONSUMERS_PORT = number;
NOTIFICATIONS_PORT = number;
API_KEY = string;
CORS_ORIGIN = array;
DATABASE_URL = url;
JWT_ACCESS_EXP_TIME = string;
JWT_REFRESH_EXP_TIME = string;
JWT_RECOVERY_EXP_TIME = string;
JWT_REMAINING_REFRESH_TIME = string;
JWT_ACCESS_SECRET = string;
JWT_REFRESH_SECRET = string;
JWT_RECOVERY_SECRET = string;
SMTP_SERVICE = string;
SMTP_HOST = string;
SMTP_PORT = number;
SMTP_SECURE = boolean;
SMTP_AUTH_USERNAME = string;
SMTP_AUTH_PASSWORD = "string";
RECOVER_PASSWORD_URL = "url";
LOG_DIR = string;
Explicación de las Variables
APP_NAME
- El Nombre de la aplicación que se va a mostrar en lugares como: plantillas, emails, etc.
DASHBOARD_PORT
- Puerto en el que va a funcionar la API del panel web.
CONSUMERS_PORT
- Puerto en el que va a funcionar la API de los consumidores.
NOTIFICATIONS_PORT
- Puerto en el que va a funcionar el sistema de notificaciones.
API_KEY
- Llave que se va a utilizar para acceder a los endpoints.
CORS_ORIGIN
- URLs autorizadas para cors.
Ejemplo: ["http://localhost", "/\.yamanil\.com$/"]
DATABASE_URL
- URL de conexión hacia la base de datos.
Ejemplo: mysql://username:password@localhost:3306/database
JWT_ACCESS_EXP_TIME
- Cuanto tiempo va a durar el token de acceso.
Únidades válidas: [ s | m | h | d ]
Ejemplo: 1d (1 día de expiración)
JWT_REFRESH_EXP_TIME
- Cuanto tiempo va a durar el token de refresco.
Únidades válidas: [ s | m | h | d ]
Ejemplo: 7d (7 días de expiración)
JWT_RECOVERY_EXP_TIME
- Cuanto tiempo va a durar el token de recuperación.
Únidades válidas: [ s | m | h | d ]
Ejemplo: 12h (12 horas de expiración)
JWT_REMAINING_REFRESH_TIME
- Tiempo de vida mínimo para actualizar el token de refresco.
Únidades válidas: [ s | m | h | d ]
Ejemplo: 1h (1 hora de expiración)
JWT_ACCESS_SECRET
- Hash secreto
JWT_REFRESH_SECRET
- Hash secreto
JWT_RECOVERY_SECRET
- Hash secreto
nota
Si el servicio elegido es gmail los campos (host, port y secure) serán ignorados.
SMTP_SERVICE
- Tipo de servicio que se va a utilizar (Gmail, Outlook/Hotmail, iCloud, FastMail).
SMTP_HOST
- Ip del servidor SMTP.
SMTP_PORT
- Puerto del Servidor SMTP.
SMTP_SECURE
- Si se va a utilizar una conexión segura o no.
SMTP_AUTH_USERNAME
- Nombre de usuario.
SMTP_AUTH_PASSWORD
- Contraseña.
RECOVER_PASSWORD_URL
- URL de recuperación que se utilizará en la plantilla que se enviará por email al recuperar una contraseña.
RECOVER_PASSWORD_URL="http://localhost:3000/api/v1/auth/recovery"
LOG_DIR
- Ubicación para guardar los logs de la API.