The Satisfactory Mod Repository backend API
If you are under Linux, you will need to install the following packages (or your distro's equivalent):
sudo apt update && sudo apt install -y build-essential libpng-dev
You will also need to generate the GQL server and REST docs via:
go generate -x -tags tools ./...
To start the API, execute:
go run cmd/api/serve.go
Running the API has a lot of pre-requisites.
To run the API, you will need to have a working Postgres, Redis and Storage. There is a dev composefile that you can start via:
docker compose up -d
It is suggested you create a configuration file at config.json
(but you can also use environment variables).
Main configuration options:
go run cmd/paseto/main.go
)The config format can be seen in config/config.go
(each dot means a new level of nesting).
After startup requires the following minio commands to be executed:
mc alias set local http://localhost:9000 minio minio123
mc admin user svcacct add local minio --access-key REPLACE_ME_KEY --secret-key REPLACE_ME_SECRET
mc anonymous set public local/smr
Before contributing, please run the linter to ensure the code is clean and well-formed:
golangci-lint run
For some simple formatting issues you can use the --fix
flag, but for more complex issues you will need to fix the code:
golangci-lint run --fix