Welcome to the Hangar Open Beta. Please report any issue you encounter on GitHub!
Avatar for idosysstuff

Your Server's Data, On the Web.

Report WebInventory?

WebInventory

Your players' inventories, stats and leaderboards on a website, served by your Minecraft server.

WebInventory runs its own small web server inside the plugin. Players search a name and see that player's inventory, armor, ender chest, statistics and advancements, live from the game. No Apache, no Nginx, no database required.

Demo: https://webinventory-demo.bashrack.com/

Features

Player profiles

  • Inventory, armor, off-hand and ender chest exactly as in game: enchantments, custom names, lore with colors (legacy, hex and MiniMessage), durability and stack sizes.
  • Health, hunger, armor points, level with XP bar, game mode and active potion effects with the game's own icons.
  • Statistics (playtime, kills, deaths, distance, jumps, damage) and advancements.
  • 3D skin viewer, LuckPerms prefixes and groups, online status, favorites, JSON export.
  • Players decide what is public: /winv enable and /winv disable [inventory|enderchest|statistics|advancements]. Server owners can force visibility instead or tie it to a permission.

Leaderboards

  • A "Top" page with playtime, mob kills, PvP kills, deaths, distance, level and mcMMO power, with a podium and rank movement; the top players also show on the home page.
  • /winv top [list] in chat and PlaceholderAPI placeholders (%webinv_top_playtime_1_name%, %webinv_rank_playtime% ...) for holograms and scoreboards.
  • Only players who share their statistics are listed.

Web store

  • Players link their Minecraft account with a one-time code (/winv link <code>) and buy or sell items for in-game money.
  • Works with Vault (EssentialsX, CMI and other economies) and PlayerPoints; prices are shown in your economy's own format and colors.
  • Categories, stock limits, enchanted items and custom items from ItemsAdder, Oraxen, Nexo and MMOItems. Visitors can browse before they link.
  • Optional rank store (LuckPerms groups, permanent or timed).

Support tickets

  • Players open tickets on the website and get replies there; staff answer from the admin panel.
  • Works without an economy plugin.

Admin panel

  • Manage store items, categories, ranks and tickets; see every transaction.
  • Password or Minecraft-account login, optional two-factor authentication (TOTP), IP whitelist, login rate limiting and an audit log of every change.

Integrations

  • Geyser / Floodgate: Bedrock players are recognized, with their real skin and a "BE" badge.
  • Maps: link to Dynmap, BlueMap, Pl3xMap or squaremap.
  • mcMMO skills, LuckPerms ranks, SkinsRestorer skins, DiscordSRV avatars and Discord webhooks.

Built for real servers

  • Paper, Folia and Spigot, Minecraft 1.20.6 to 26.x (Java 21 or newer). Older clients through ViaVersion are fine.
  • Networks: BungeeCord or Velocity. Install WebInventory on every backend server and point them at the same MySQL or PostgreSQL database: one website for the whole network, with the server each player is on.
  • Storage in JSON files (default), MySQL or PostgreSQL; /winv migrate moves your data.
  • Languages: English, German, Spanish, Brazilian Portuguese, Russian and Serbian, in game and on the website.
  • Light and dark theme, works on phones, accessible (keyboard, screen readers).
  • Every part of the page can be switched off in config.yml (web.ui), every module too (store, tickets, ranks, leaderboards, map); /winv reload applies changes at once.

Installation

  1. Put the jar in plugins/ and restart the server.
  2. Open http://<your-server-ip>:8081 (change web.port in plugins/WebInventory/config.yml).
  3. Players run /winv enable to show their profile.

For the web store install Vault with an economy plugin, or PlayerPoints. For the admin panel set admin.password in config.yml (it is hashed on the next start) and open /admin.

Behind a reverse proxy or Cloudflare, set web.base-url and web.client-ip-header so links and rate limits use the real address.

Commands

Command What it does
/winv enable [section] Show your profile (or one section) on the website
/winv disable [section] Hide your profile (or one section)
/winv status [player] Your visibility; admins see why any player is or is not shown
/winv link [player|code] Link to a profile, or log in to the web store with a code
/winv top [list] Leaderboards in chat
/winv reload Reload the configuration (admins)
/winv admin ... Store items, categories and admin-panel login from the game
/winv migrate <type> Move player data to another storage type

Permissions

Permission Default Meaning
dimictech.webinv.use everyone Use /winv
dimictech.webinv.enable.all / .enable.<section> everyone Show your own profile or a section
dimictech.webinv.enable nobody Shown on the website in PERMISSION mode
dimictech.webinv.hide nobody Never shown, whatever the mode
dimictech.webinv.admin op Admin commands and admin-panel login from the game

For developers

Other plugins can read what the website shows (getPlayerData, isVisible, getProfileUrl), add their own statistics with a leaderboard, listen to events (profile shown or hidden, store purchases, tickets) and plug in item, economy or storage providers:

WebInventoryApi api = Bukkit.getServicesManager().load(WebInventoryApi.class);
api.registerStatistic(CustomStatistic.builder(this, "island_level")
        .displayName("Island level")
        .value(player -> islands.getLevel(player.getUniqueId()))
        .build());

The website's own JSON API is described at /docs/openapi.json on every server.

Privacy and data

  • Nothing is shown until a player opts in (or the server owner chooses a visibility mode).
  • Store logins use one-time codes typed in game; no passwords are stored for players.
  • Anonymous usage statistics go to bStats; switch them off with bstats.enabled: false.

Support

Questions and bug reports: Discord.

Sponsors

None so far!

Information

Category
Admin Tools
Published
November 2, 2026
License
Unspecified
0Downloads
0Stars
Supports Folia

Pinned Versions

Members

1