Quake Report is a log analyzer designed for Quake Arena games. It processes game logs and provides insightful reports about the matches.
Before you begin, ensure you have the following installed:
- Clone the repository:
git clone https://github.com/gurgelff/quake-report.git- Install the dependencies with one of these options:
- Using Docker:
docker-compose up- Using pnpm:
npm install -g pnpm
pnpm install- Using npm:
npm installThe application is designed to be run preferably in a containerized environment.
The application can be run using Docker:
docker-compose upTo run the application locally, use the following command:
pnpm startThe application provides an API to interact with the game reports. The OpenAPI raw documentation is available at the index /.
The report endpoint is available at /report. It accepts a GET request with an optional id parameter containing the game id (defaults to 1 if not provided or invalid). The response will be a JSON object containing the report.
There's also an interactive documentaion interface built with Swagger UI available at /swagger.
If you have any problems with the Docker container, try the following:
rm -rf node_modules
pnpm install
docker-compose down -v
docker-compose up --no-deps --buildIn the case of running the application locally, try the following:
rm -rf node_modules
pnpm install
pnpm startIf the problem persists, please open an issue.
The application can be configured using the following environment variables:
SERVER_PORT: The port the server will listen to. Default: 8080SERVER_BASE_URL: The base URL of the server. Default: localhost
You may configure those variables in the .env file.
Feel free to contribute to this project and enrich it with new features or improviments. To do so, follow these steps:
- Fork the Project
- Create your Feature Branch (
git checkout -b feat/amazing-feature-name) - Commit your Changes (
git commit -m 'Useful message here') - Push to the Branch (
git push origin feat/amazing-feature-name) - Open a Pull Request
Distributed under the ISC License. See LICENSE for more information.
ISC License
Copyright 2024 Fernando Gurgel
Permission to use, copy, modify, and/or distribute this software for
any purpose with or without fee is hereby granted, provided that the
above copyright notice and this permission notice appear in all copies.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT,
OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR
PROFITS,WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING
OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
