No description
  • Python 57.5%
  • JavaScript 42.5%
Find a file
KittenTM 8363559721
All checks were successful
backend / docker (push) Successful in 47s
Update how rotations are displayed
2026-03-21 17:12:06 +01:00
.forgejo/workflows update workflow 2026-02-28 16:27:13 +01:00
judd change judd DB to not recreate the DB (how was this left in to begin with?) 2026-03-15 04:03:25 +01:00
routes Update how rotations are displayed 2026-03-21 17:12:06 +01:00
services implement proper all 3 ability showing (including MAIN) 2026-03-17 03:35:55 +01:00
.gitignore Add telemetry support from via Judd 2026-02-22 19:48:25 +01:00
config.py feat: catch & log invalid items to discord webhook 2026-03-15 00:22:58 +01:00
cover.png Update readme style 2026-02-21 23:24:25 +01:00
currentprogress.png Update readme style 2026-02-21 23:24:25 +01:00
database.py add /me/equipment/history route 2026-03-15 04:02:53 +01:00
dockerfile hopefully make autobuild possible 2026-02-28 00:48:38 +01:00
example_dot.env Update readme 2026-02-22 20:18:47 +01:00
LICENSE Initial commit 2026-02-05 01:25:39 +01:00
main.py add equipmentLast functionality 2026-03-15 04:44:59 +01:00
README.md update readme to reflect webhook_url addition in 884ef30c79 2026-03-15 00:26:08 +01:00
requirements.txt psycopg2 to binary version to remove use of compiliation 2026-02-28 03:38:28 +01:00



Basically 0% lol


SplatNet

Commits Build Status Languages License: GPL v3

This is the backend for the SplatNet Revival frontend. It is a combination of Python & JS.

Self-hosting

Important

This project is not easy to self host!! Please please please read the console logs before asking for help.

Running from source

To start, install Python 3.11+. While newer versions aren't tested they should work fine. Dependencies are installed using

pip install -r requirements.txt

Telemetry is technically not required for the server to run, however it is required for most functions on the website. Judd is run via Node /judd. First change directories to Judd, and install the node modules.

npm install

Now you must configure your .env A example .env is included for you. For a full explanation, jump to .env configuration. Once done, run /main.py. This will launch both the frontend api & telemetry.

Docker

Alternatively, this is available as a Docker image.

Note

Postgres & incoming connections will have to be manually allowed through into Docker

docker run kittentm/splatnet-backend:latest

By default, the program will look for the .env in the same directory main.py is located. If you wish to not do that, you can manually specify a .env

Here is an example of that, it pulls from your current directory for the .env.

docker run --env-file .env kittentm/splatnet-backend:latest

DB Config

This project requires postgres. Database setup is automatic upon startup, so all you need to do is add your database URL in the .env.

.env configuration

The .env file is used for server setup. A example one with the fields already there has been provided for your pleasure. Rename it to .env & fill in the fields.

Field Name Type Default Value Description / Usage
port int 5000 The port the API will listen on
db_url str Required Connection string for the database
fernet_key str Required Key used for DB encryption
cookie_httponly bool True Primarily for debugging, controls the flag in cookies
frontend_url str Required The URL where the frontend is hosted
boss_url str Required Endpoint URL for retrieving Boss
boss_aes_key str Required AES key for Boss
boss_hmac_key str Required HMAC key for Boss
cookie_secure bool True Primarily for debugging, controls the flag in cookies
judd_port int 4000 The port the Judd (telemetry) server will listen on
webhook_url str Required Where logging of blacklist.json will be sent to

Tip

For dumping your boss keys, see this HBL app. Note that the keys shown on the screen are garbage, I reccomend using a hex editor on the files it dumps.