Skip to content

config.json

json
{
  "$schema": "node_modules/@thomasfarineau/anvil/src/client/config.schema.json",
  "identifier": "com.mycompany.launcher",
  "app_name": "My Launcher",
  "data_folder": ".my-launcher",
  "java_version": 21,
  "logo": "logo.svg",
  "session": "none",
  "update_url": "",
  "target": "dist",
  "window_decorations": true,
  "window_resizable": false,
  "instances": [
    {
      "id": "survival",
      "name": "Survival",
      "mc_version": "1.21.4"
    },
    {
      "id": "modded",
      "name": "Modded",
      "mc_version": "1.21.4",
      "loader": "fabric",
      "loader_version": "0.16.9",
      "mods": [
        {
          "name": "Sodium",
          "url": "https://cdn.modrinth.com/data/AANobbMI/versions/.../sodium-fabric-0.6.5.jar"
        }
      ]
    }
  ]
}

Field reference

FieldTypeDescription
identifierstringReverse-domain app identifier (e.g. com.mycompany.launcher)
app_namestringApp name shown in the native window and UI
data_folderstringSub-folder in %APPDATA% / ~/Library for game data
java_version17 | 21Java version to download automatically
logostringPath to the logo (relative to src/) — .svg or .png, auto-converted to app icon
session"none" | "mojang" | "custom" | "anvil-session"Authentication mode — see Session and Anvil Server
update_urlstringURL of the update manifest (leave empty to disable)
targetstringOutput folder for compiled executables (e.g. dist)
window_decorationsbooleanShow the native title bar
window_resizablebooleanAllow the user to resize the window
instancesarrayList of available Minecraft instances (ignored when anvil-server is set)
anvil-serverstringBase URL of an anvil-server: the launcher fetches its enabled instances from it at startup
anvil-keystringAPI key generated in the anvil-server web UI — required to query the server

Instance fields

FieldTypeDescription
idstringUnique identifier (used as the folder name)
namestringLabel shown on the play button
mc_versionstringMinecraft version (e.g. "1.21.4")
loader"fabric" | "forge" | "neoforge" | "quilt"Mod loader (optional)
loader_versionstringMod loader version (e.g. "0.16.9")
server_ipstringServer IP for auto-connect on launch
server_portnumberServer port (default: 25565)
modsarrayMods downloaded into the instance — see Mods per instance
filesarrayExtra files ({path, url}) deployed into the instance folder at setup — usually provided by an anvil-server

Next steps

Released under the MIT License.