Application to make Arkham Horror games easier.
This repository is closely linked to another one, which handles the frontend, while this one is the backend.
The application was designed to simplify managing characters and game elements during Arkham Horror board game sessions. It provides real-time updates on the game phase and allows easy management of items, spells, companions, and other resources directly through the interface.
NestJS is a progressive, open-source Node.js framework for building efficient and scalable server-side applications using TypeScript. It leverages modern JavaScript features and is built with a modular architecture, making it ideal for building enterprise-level applications.
PostgreSQL is an open-source, reliable, and scalable relational database system known for its support of advanced SQL features and ability to handle large volumes of data.
Socket.IO client is a JavaScript library for real-time, bidirectional communication between web clients and servers, allowing the frontend to easily connect to a Socket.IO server for features like chat, live updates, and real-time notifications.
Docker is an open-source platform that automates the deployment and management of applications using containers, allowing for consistent environments across different systems.
To simplify the installation process, the project uses a Docker.
Remember, this application is tightly linked to the frontend, and you should also set up that project to get the full functionality.
Copy .env.example file to .env and edit the file. These are the variables you need to fill with descriptions:
- POSTGRES_DB: Database name (ex.
arkham_horror_db) - POSTGRES_PASSWORD: Database user password (ex.
TheStrongestPassword123!@$) - JWT_SECRET: Private key to sign and verify JWT. Just go to JwtSecret.com, click generate and copy whole key there.
- MAIL_HOST: The SMTP server address used for sending emails (in this case, Mailtrap).
- MAIL_PORT: The port number for the SMTP server (in this case,
465). - MAIL_SECURE: A flag indicating if the connection should be encrypted (in this case,
false). - MAIL_USER: The email address or username used for authentication with the SMTP server.
- MAIL_SECURE: The password associated with the email account for authentication.
cp .env.example .env
nano .envJust run the command to build the container and wait.
docker-compose up -d

