RealmCraft Server Website - FREE v1.0 - RELEASE

A complete Free Starting-point minecraft server website.
  • RealmCraft_main (7).png
  • RealmCraft_main (4).png
  • RealmCraft_main (1).png
  • RealmCraft_main (3).png
  • RealmCraft_main (7).png
  • RealmCraft_main (4).png
  • RealmCraft_main (1).png
  • RealmCraft_main (3).png


RealmCraft FREE: Minecraft Server Website
A complete, free starting point for your Minecraft server website with a live backend.
Five public pages, a working vote system, live server status, admin panel, and a single config file to customise things.





Overview

This is a free, open-source template for your Minecraft server website. It's not a finished product, it's a polished starting point you customise and build on. Provided as-is. The code is clean, well-documented and beginner-friendly.

An application, a Node.js backend serves the entire site, pings your Minecraft server for live status, tracks player vote streaks, manages rewards and exposes a REST API your plugins can call. The frontend pulls everything from that API on load, so editing one JSON file updates every page simultaneously.




Pages Included

Home — Live Server Status Widget
The hero section has a real-time status widget that shows your server's live online/offline state, current player count, server capacity, version, and how many votes have been cast today. It pings your server through mcsrvstat.us every 30 seconds, with silent fallback if the server is temporarily unreachable. No API key required.

Play — Game Mode Showcase
Four full-width alternating sections, each with a unique CSS atmospheric background, live player count pulled from config, stats grid, feature list, and a connect button. Edit config.json to swap in your actual game modes — no HTML changes needed.

Store — Ranks, Crates, Coins
A complete storefront UI with a username input gate, four rank tiers (Wanderer free through Legend), crate key cards, and coin bundle packages. Validates the username before any purchase action. Wire the buy buttons to your Tebex checkout URLs — that's all it takes to make it live.

Vote — Full Tracking System
The flagship page. Players type their username to load a live profile card showing streak, lifetime votes, reward progress bar, and pending rewards. Vote buttons call the real backend API — votes are recorded, streaks updated, rewards earned. A global vote party progress bar counts toward a community milestone. Leaderboard refreshes every 30 seconds.

Forums — Community Hub
Category groups with post counts, a global notice banner, sidebar with recent threads, online member chips, and forum stats. Designed as a visual hub — wire the links to your forum platform (XenForo, phpBB, Discourse) or use it as a directory pointing to Discord.

Admin Panel — /admin.html
Password-protected dashboard. Overview stats (votes today, weekly, active players, pending rewards, longest streak). Full player table with per-player reset buttons. Vote simulator for testing reward flows. Live announcement editor — type a message, pick a style (info / warning / success), save, and it appears on every page immediately with no server restart needed.




Technical Specs

LayerTechnology
BackendNode.js 18+ · Express
FrontendPure HTML · CSS · Vanilla JS
DatabaseJSON flat file — zero setup
MC StatusNode built-in https → mcsrvstat.us
FontsSyne Mono · Sora · JetBrains Mono
npm packagesexpress · cors (2 total)


Open the ZIP, run npm install && npm start, and the site is live at localhost.




API Endpoints

Public
Code:
GET  /api/health              — Server health check
GET  /api/config             — Full public config (drives the entire frontend)
GET  /api/status             — Live Minecraft server ping (cached 30s)
GET  /api/server             — Vote stats: today, weekly, top voter
GET  /api/player/:username   — Player profile (auto-creates new players)
POST /api/vote               — Cast a vote, earn rewards, update streak
POST /api/claim-reward       — Claim a pending in-game reward
GET  /api/leaderboard        — Top voters ranked
GET  /api/vote-sites         — Sites with per-player cooldown status
POST /api/minecraft/vote     — Plugin webhook (NuVotifier / Skript)

Admin (requires X-Admin-Password header)
Code:
GET  /api/admin/stats                — Aggregated dashboard stats
GET  /api/admin/players              — All player records
POST /api/admin/reset-player         — Reset all stats for a player
POST /api/admin/reset-streak         — Reset streak only
POST /api/admin/simulate-vote        — Trigger a vote for testing
POST /api/admin/update-announcement  — Edit the announcement bar live
POST /api/admin/update-messages      — Edit the rotating flavor messages




Vote System Features

  • Streak tracking — 48-hour window with calendar-day logic. Miss a day and the streak resets to 1.
  • Weekly resetweeklyVotes automatically zeros on ISO week boundary. No cron job needed.
  • Per-site cooldown — each site tracked separately. Vote on Planet Minecraft and still hit TopG independently.
  • Configurable rewards — vote interval rewards (every N votes) and streak milestone rewards, both fully defined in config.json.
  • 10 achievements — Common through Legendary, computed live from player state. Unlock conditions: votes>=N, streak>=N, or allSites.
  • Level system — 10 levels from New Adventurer to Living Legend, driven by lifetime vote count.
  • Pending rewards — tracks how many rewards a player has earned vs claimed, with a one-click claim button.
NOTE: In next versions the vote system will be configured fully. The current version (RELEASE_v1.0), only showcase how the vote system works. For now you can setup however you want : )



Minecraft Plugin Integration

The webhook endpoint accepts POST requests from any vote plugin:

JSON:
POST /api/minecraft/vote
Content-Type: application/json

{ "player": "Steve", "site": "planetmc", "secret": "your-secret" }

Skript example:
Code:
on vote:
    make a POST request to "http://your-api.com/api/minecraft/vote"
      with header "Content-Type: application/json"
      with body "{""player"":""%player%"",""site"":""planetmc"",""secret"":""YOUR_SECRET""}"

Supports NuVotifier listeners, VotingPlugin command triggers, and any HTTP-capable plugin or script. Optional webhook secret for security.




Configuration Preview

One file controls everything. No code edits needed for standard customisation.

JSON:
{
  "server": {
    "name":    "YourServer",
    "ip":      "play.yourserver.net",
    "discord": "https://discord.gg/yourserver"
  },
  "theme": {
    "accentJade":  "#00e5a0",
    "accentAmber": "#ff8c00"
  },
  "voteSites": [
    { "id": "planetmc", "name": "Planet Minecraft", "reward": "Vote Key + 1,000 Coins", "cooldownHours": 24 }
  ],
  "rewards": {
    "voteInterval": 10,
    "streakRewards": [
      { "streak": 7, "name": "Elite Crate", "rarity": "Uncommon" }
    ]
  },
  "announcement": {
    "enabled": true,
    "text":    " Season 5 is live! Vote now for bonus rewards.",
    "type":    "info"
  }
}




Deployment — ~15 Minutes

Backend — Render (free tier)

[OL]
[*]Push the project to GitHub
[*]Render → New Web Service → connect your repo
[*]Build command: npm install
[*]Start command: node backend/server.js
[*]Your API is live — copy the URL
[/OL]

Frontend — Cloudflare Pages (free)

[OL]
[*]Paste your Render URL into public/js/api.js (one line, clearly marked)
[*]Cloudflare Pages → New project → output directory: public
[*]Deploy → live globally with HTTPS and CDN
[/OL]

Self-Hosted (VPS / Pterodactyl)
Bash:
npm install
PORT=80 node backend/server.js
# For production: pm2 start backend/server.js --name realmcraft

Full step-by-step guide is inside the README.




What's Not Included
  • No real payment processing — the Store page is a UI shell. Wire the buy buttons to your Tebex checkout URLs.
  • No forum backend — the Forums page is a visual hub. Point the links to your actual platform (Discord, XenForo, etc.).
  • No player accounts — vote tracking uses Minecraft username input, not a login system.
  • No WebSocket real-time — the leaderboard polls every 30 seconds via setInterval.

These are straightforward to add if you need them. The codebase is structured to make extension easy.




Requirements

  • Node.js 18 or newer
  • Any Node.js hosting — Render, Railway, VPS, Pterodactyl
  • A Minecraft server with a public IP or domain (for the live status widget)




License

Free to use. Deploy it on your own server and customize it to your content.

If you build something cool with it, a review or a tag would be appreciated, it helps me to build more resources like this.
EULA: Free EULA
323 Views
18 Downloads
Jun 6, 2026 Published
N/A Updated
Not yet rated
8.1 MB File size
Open source
  1. No
DRM-free
  1. Yes
Unobfuscated
  1. Yes
Type
  1. Minecraft server
  1. Status
Supported languages
  1. English
Creator
Owner
Recommended for you
Free Tebex Plus, Forum, Store, Blog, Support, Leaderboards, Wiki, Shared Hosting Support and more!
5.00 star(s) 5 ratings
594 purchases
Unlock your potential with a sellix.io website template!
5.00 star(s) 10 ratings
324 purchases
Your self-hosted donation store for Minecraft server (Tebex/CraftingStore analogue).
5.00 star(s) 63 ratings
214 purchases
Self-hosted license management that protects your software from unauthorized redistribution.
5.00 star(s) 8 ratings
136 purchases
All-in-one website template for hosting providers.
5.00 star(s) 9 ratings
106 purchases
323 Views
18 Downloads
Jun 6, 2026 Published
N/A Updated
Not yet rated
8.1 MB File size
Open source
  1. No
DRM-free
  1. Yes
Unobfuscated
  1. Yes
Type
  1. Minecraft server
  1. Status
Supported languages
  1. English
Creator
Owner
Recommended for you
Free Tebex Plus, Forum, Store, Blog, Support, Leaderboards, Wiki, Shared Hosting Support and more!
5.00 star(s) 5 ratings
594 purchases
Unlock your potential with a sellix.io website template!
5.00 star(s) 10 ratings
324 purchases
Your self-hosted donation store for Minecraft server (Tebex/CraftingStore analogue).
5.00 star(s) 63 ratings
214 purchases
Self-hosted license management that protects your software from unauthorized redistribution.
5.00 star(s) 8 ratings
136 purchases
All-in-one website template for hosting providers.
5.00 star(s) 9 ratings
106 purchases
Top