Skip to content
Tango Web API

Quick rating

Community listing page, reviews may not be monitored by the author.

Tango Web API

By Pankraz01Owner

No reviews yet

An API to bundle Webservers and Webinterfaces for your Mods

Mod Loaders
Minecraft

About

Description

TangoWebAPI

A single shared webserver mod for Fabric/NeoForge that removes boilerplate for other mods. TangoWebAPI provides one embedded HTTP server that mods can use to expose their own endpoints or static assets.

Features

  • Shared HTTP server (Java HTTP) for all mods, start/stop in common code.
  • Simple API for routes: get/post/registerRoute with mod namespace (/modid/...).
  • Static file serving per mod (serveStatic with safe path handling).
  • Built-in health/info/route listing: /tango-webapi/health, /tango-webapi/info, /tango-webapi/routes.
  • Configuration via file (config/tango-webapi.properties) or env/system props.
  • Error pages (404/405/503) with simple HTML templates.

Configuration

File: config/tango-webapi.properties

host=0.0.0.0
port=8080
maxRequestBytes=1000000

Or via env/system properties:

  • TANGO_WEBAPI_HOST / tango.webapi.host
  • TANGO_WEBAPI_PORT / tango.webapi.port
  • TANGO_WEBAPI_MAX_BYTES / tango.webapi.max_bytes

API for other mods (examples)

// Simple text route at /mymod/ping
TangoWebAPI.get("mymod", "/ping", ctx -> ctx.sendText(200, "pong"));

// JSON response
TangoWebAPI.post("mymod", "/data", ctx -> ctx.sendJson(200, "{\"ok\":true}"));

// Static assets from config/mymod/static under /mymod/static/**
TangoWebAPI.serveStatic("mymod", "static", Path.of("config", "mymod", "static"));

Built-in endpoints

  • GET /tango-webapi/health – status
  • GET /tango-webapi/info – host/port/max-bytes
  • GET /tango-webapi/routes – all registered routes incl. prefix routes

Testing

  • After game start: http://localhost:8080/tango-webapi/health / info / routes
  • Register your own route and hit it via browser/curl.
  • Serve a static page under your mod path and verify it loads.