The Tarkov Data manager web app to manage the sql database
Go to file
Grant Birkinbine db2b5526d1
Merge pull request #733 from the-hideout/updates
Updates
2026-03-30 13:17:25 -07:00
.github Pin dependencies in workflow files to specific commits for stability 2026-03-30 13:08:41 -07:00
data add mysql_data dir 2024-03-11 18:54:26 -06:00
docs/assets update docs 2022-03-15 23:34:25 -07:00
script Serialize TDM deploys on the shared host 2026-03-30 12:14:31 -07:00
src Extract ingress from the TDM stack 2026-03-30 11:57:11 -07:00
terraform pull network config from remote tf state 2024-03-14 14:15:14 -06:00
.gitignore Upload flat json files 2026-03-24 15:31:47 -05:00
LICENSE add docs 2022-03-10 22:48:42 -08:00
Makefile use a split docker-compose setup for a dev and production mysql database 2024-03-11 22:43:07 -06:00
README.md Extract ingress from the TDM stack 2026-03-30 11:57:11 -07:00
SECURITY.md Update SECURITY.md 2022-03-25 21:38:23 -07:00
docker-compose.override.yml Extract ingress from the TDM stack 2026-03-30 11:57:11 -07:00
docker-compose.prod.yml Extract ingress from the TDM stack 2026-03-30 11:57:11 -07:00
docker-compose.yml Extract ingress from the TDM stack 2026-03-30 11:57:11 -07:00
package-lock.json fix routing 2025-04-08 13:55:16 -05:00

README.md

Tarkov Data Manager 🛢️💻

deploy Discord

The Tarkov Data Manager, which is forked from kokarn's original creation, is a tool to manage the Tarkov item data.

It is a web application that allows you to do the following:

  • Start, stop, and interact with scanners
  • View the data collected by the scanners
  • Make modifications to items or add missing images

Components 🛠️

This repo contains two main components:

  • The Tarkov Data Manager - Web application for managing Tarkov game data and scanners.
  • The MySQL + Backup stack - Database and optional backup jobs used by the manager.

Tarkov Data Manager

The Tarkov Data Manager can be run locally without Docker by running the following commands:

This section is still under construction. We are working on creating a local environment to test the application locally with Docker and a mock instance of the database. Right now, developers connect to a testing branch of the prod database. Developers also need database credentials stored in src/tarkov-data-manager/creds.env. For active developers with database connections, you can run the following commands:

  1. Enter the proper directory:

    cd src/tarkov-data-manager
    
  2. Install dependencies:

    npm install
    
  3. Run the application:

    npm run dev
    

Example 📸

local example

Running locally with Docker 🐳

This is the suggested option for local development

First, edit the src/tarkov-data-manager/creds.env file to include your proper credentials.

An example of this file can be found at src/tarkov-data-manager/creds.env.example.

You now have two options to start the local docker-compose stack (both do the exact same thing):

  • make run
  • docker-compose up --build

Browse to the web app at http://localhost:4000.

The local websocket server is exposed on ws://localhost:5000.

Production TLS and public routing for manager.tarkov.dev are handled by the standalone the-hideout/ingress repo, not by this repository.

You can test that the database has initialized correctly with the sample data by exec'ing onto the database container and running the following command:

mysql -u root -p'password' -e "USE tarkov; SELECT COUNT(*) FROM price_data;"

creds.env variables

The following variables should be configured in your creds.env file for the data manager to function properly:

  • AWS_SECRET_ACCESS_KEY/AWS_ACCESS_KEY_ID: For interacting with the AWS bucket where images are stored.
  • AUTH_PASSWORD: The password to log into the web interface.
  • AUTH_SECRET: Used for secure cookies.
  • CLOUDFLARE_TOKEN: Used for putting data in cloudflare for the API.
  • PSCALE_USER/PSCALE_PASS: Username and password for the database.
  • TC_USERNAME/TC_PASSWORD/TC_URL: Connect to tarkov-changes to get latest item information.
  • TB_KEY/TB_URL: Connect to tarkov-bot to get latest translation information.
  • WS_PASSWORD: Used to authenticate commands sent to price scanners.
  • WEBHOOK_URL: The Discord webhook url for alerts.
  • WEBHOOK_USER: The optional user name that should be used for any sent Discord webhook alerts.