A JavaScript library to embed information about a Minecraft server into a website.

Link to this section Overview

McStatus.js is a JavaScript library and API backend to embed a Minecraft server status readout.

Link to this section Motivation

I wanted to be able to check who was online on my Minecraft server without having to join. I also wanted a project where I could improve my understanding of JavaScript, the DOM, and web technologies in general.

Link to this section Technical Details

mcstatus.js loads a div complete with Minecraft server information into the DOM wherever it finds a <div class="mc-status">, using the data-mc-server attr to set the server IP. The status protocol for Minecraft servers uses raw TCP sockets, so a pure-JS server query-er isn't possible. There are a lot of existing Minecraft server status tools, like, but they don't have a CORS header set, so they couldn't be used from JavaScript. So, I implemented my own at with the bare minimum API for this project to work. I'm using Dinnerbone's Server Pinger under the hood for this.

Link to this section Results

It pretty much does everything I wanted it to do, and working on the project definitely gave me a better understanding of how to style websites using CSS. I didn't really end up using the CSS/JS part for anything, but I did use the server component for Breqbot's Minecraft server functionality.