explaingit

sammwyy/mikumikubeam

5,755GoAudience · ops devopsComplexity · 3/5Setup · moderate

TLDR

MikuMikuBeam is a Go-based network stress-testing tool with a Hatsune Miku-themed web interface for launching HTTP flood, Slowloris, and TCP tests against a target, with live stats and a CLI mode.

Mindmap

mindmap
  root((mikumikubeam))
    Attack Methods
      HTTP Flood
      HTTP Bypass
      Slowloris
      TCP Flood
      Minecraft Ping
    Interfaces
      Web UI
      CLI mode
      Live stats
    Tech Stack
      Go backend
      React frontend
      Docker
    Config
      Thread count
      Duration
      Packet size
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Test how many concurrent HTTP requests your server handles before slowing down by running an HTTP flood from the web UI.

USE CASE 2

Simulate a Slowloris attack to check whether your server connection slot limit is exposed.

USE CASE 3

Send raw TCP traffic to stress-test a game server or custom protocol endpoint using the TCP Flood method.

USE CASE 4

Run the tool in CLI mode to launch a named attack method with a set thread count and watch live console output.

Tech stack

GoReactDocker

Getting it running

Difficulty · moderate Time to first run · 30min

Requires two plain-text files, a proxy list and a user-agent list, before the server will start, in addition to Go 1.21+ and Node.js 18+.

In plain English

MikuMikuBeam is a network stress-testing tool built in Go, styled around the virtual pop star Hatsune Miku. The idea is that it gives you a web interface, complete with a Miku-themed design and background music, where you configure and launch network load tests against a target. The backend is written in Go and the frontend is a React app. Both can be run together from a single server process or inside a Docker container. The tool supports several types of network traffic for testing. HTTP Flood sends a high volume of random HTTP requests. HTTP Bypass attempts to mimic real browser behavior by including realistic headers, cookies, and redirect handling. HTTP Slowloris opens many connections and sends data very slowly, which can hold a server's connection slots open. TCP Flood sends raw TCP packets. There is also a Minecraft Ping method that sends server status requests to a Minecraft server port. Each method can be configured with a target address, packet size, duration, and delay between packets. On the technical side, each active test runs across multiple goroutines, which are Go's lightweight concurrent threads. This lets the tool send traffic from many parallel workers at once. The web interface shows live statistics as a test runs, including how many packets have been sent and whether they succeeded or failed. Multiple browser clients can connect to the same server and run their own separate test instances at the same time. There is also a command-line interface in addition to the web UI. From the terminal you can specify the attack method, target, thread count, and verbosity level, and watch live output in the console. Setup requires Go 1.21 or later and Node.js 18 or later. You also need two plain text files: one listing proxy addresses and one listing user-agent strings. The README includes a Makefile with commands to install dependencies, build the frontend and backend binaries, and start the server.

Copy-paste prompts

Prompt 1
Set up mikumikubeam on my local machine using Docker and run an HTTP flood test against http://localhost:8080 for 30 seconds with 50 threads, show me the exact commands.
Prompt 2
I want to write a Go HTTP stress tester similar to mikumikubeam HTTP Bypass method that mimics real browser headers and handles redirects, give me a starting implementation.
Prompt 3
How do I use mikumikubeam CLI mode to run a Slowloris attack, set verbosity to high, and save the output to a log file?
Prompt 4
Create a docker-compose.yml that builds and runs mikumikubeam Go backend and React frontend together and exposes the web UI on port 3000.
Prompt 5
How does mikumikubeam use goroutines to send traffic from many parallel workers at once, walk me through the concurrency model in the Go code.
Open on GitHub → Explain another repo

← sammwyy on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.