A Minecraft-themed web interface built with Webpack, Tailwind CSS, and an Express.js API backend.
Provides authentication, Discord integration, support ticketing, and more.
🇮🇷 Looking for the Persian version? See README_fa.md.
- 🔑 JWT authentication with MySQL
Supports login, logout, profile updates, password changes, and health checks. - 🤝 Discord OAuth2 login and profile synchronization
- 🎫 Support ticket API (JSON file storage) →
GET/POST /api/tickets - 📢 Update feed served from
data/updates.json→GET /api/updates - 🧑💻 Mojang username lookup for player skins →
GET /api/mojang/:username - 👤 Front-end account page: edit profile, change password, sync Discord
- 🎨 UI styled with Tailwind CSS, Flowbite, and custom fonts
- ⚡ Dev server: Webpack Dev Server mounts Express routers at
/apion port 8081
.
├── data/ # JSON storage for tickets and updates
│ ├── tickets.json
│ └── updates.json
├── config/ # json storage for list products
│ └── products.json
├── src/
│ ├── app.js # Front-end entry
│ ├── server/ # Express routers
│ │ ├── authRouter.js
│ │ ├── mojangRouter.js
│ │ ├── supportRouter.js
│ │ ├── ordersRouter.js
│ │ ├── cartRouter.js
│ │ ├── updatesRouter.js
│ │ ├── urils/ #new
│ │ │ └── respond.js #new
│ │ └── middlewares/ #new
│ │ ├── asyncHandler.js #new
│ │ └── error.js #new
│ ├── static/ # Front-end assets (JS, CSS, images, fonts)
│ │ ├── account.js
│ │ ├── all.min.css
│ │ ├── antiskid.js
│ │ ├── auth.js
│ │ ├── index.js
│ │ ├── index.js.bak
│ │ ├── modal.js
│ │ ├── style.css
│ │ ├── support.js
│ │ ├── fonts/
│ │ └── images/
│ │ │ ├── blogs/
│ │ │ ├── shop/
│ │ │ ├── background.jpg
│ │ │ ├── favicon.ico
│ │ │ └── logo.png
│ └── templates/ # HTML templates
│ │ ├── 404.html
│ │ ├── account.html
│ │ ├── cart.html
│ │ ├── index.html
│ │ ├── login.html
│ │ ├── support.html
│ │ └── shop.html
├── webpack.dev.js # Dev build with API middlewares
├── webpack.prod.js # Production build configuration
├── tailwind.configRouter.js
├── package.json
├── server.js
├── webpack.common.js
└── postcss.configRouter.js
- Node.js 20+
- MySQL database (configured via environment variables)
- npm (Node Package Manager)
website.mov
git clone <repo-url>
cd MinecraftUI-website
npm install
npm run dev
npm run build