Skip to content
/ pluto Public

No code is needed to have customized backend services.

License

Notifications You must be signed in to change notification settings

0x9n0p/pluto

Folders and files

NameName
Last commit message
Last commit date

Latest commit

04eb2f9 · Dec 29, 2023

History

87 Commits
Dec 6, 2023
Dec 10, 2023
Dec 10, 2023
Nov 14, 2023
Nov 15, 2023
Dec 29, 2023
Dec 29, 2023
Dec 10, 2023
Nov 15, 2023
Dec 6, 2023
Nov 15, 2023
Dec 6, 2023
Nov 14, 2023
Nov 11, 2023
Dec 2, 2023
Dec 2, 2023
Nov 15, 2023
Nov 11, 2023
Nov 15, 2023
Dec 3, 2023
Nov 14, 2023
Nov 30, 2023
Nov 29, 2023
Dec 3, 2023
Nov 29, 2023
Dec 3, 2023
Dec 10, 2023
Dec 10, 2023
Dec 6, 2023
Dec 6, 2023
Nov 10, 2023
Dec 3, 2023
Nov 10, 2023
Nov 29, 2023
Nov 11, 2023
Nov 14, 2023
Dec 3, 2023
Nov 15, 2023
Dec 3, 2023
Dec 3, 2023
Dec 2, 2023
Nov 15, 2023
Dec 9, 2023
Dec 10, 2023
Dec 3, 2023

Repository files navigation

Pluto

No code is needed to launch multiplayer game servers.

SDK

  • Golang
  • Unity (WIP, Help wanted)
  • Unreal Engine (Contributor needed)

Build & Run

Pluto gives you a single binary file, so you may clone the project and execute the command below.

go build -o pluto bin/main.go && ./pluto

The binary file does not take arguments, but you can pass environment variables to it.

PLUTO_HOST=localhost,127.0.0.1 PLUTO_HTTP_SERVER=0.0.0.0:80 PLUTO_PANEL_STORAGE=./tmp/ PLUTO_DEBUG=true ./pluto

Panel

APIs Examples

Login

curl -X POST http://panel.localhost/api/v1/auth \                                                                  ✔ 
  -H 'Content-Type: application/json' \
  -d '{"email":"admin", "password":"admin"}'
{
  "email": "admin",
  "token": "$TOKEN"
}

Create/Save pipelines

This API Creates/Saves the pipeline and returns the saved pipeline in response.

curl -X POST http://panel.localhost/api/v1/pipelines \                                                                                     
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer $TOKEN' \
  -d '{"name":"PIPELINE_NAME","processors":[{"name":"Write to input/output","arguments":[{"name":"io_interface","type":"InternalInterface","value":"ARGUMENT_VALUE"}]}]}'
{
  "name": "PIPELINE_NAME",
  "processors": [
    {
      "name": "Write to input/output",
      "arguments": [
        {
          "name": "io_interface",
          "type": "InternalInterface",
          "value": "ARGUMENT_VALUE"
        }
      ]
    }
  ]
}

Configuration

Architecture Overview