johannesbot 6cc15b1a98
Build and Deploy / build (push) Successful in 33s
Build and Deploy / deploy (push) Successful in 21s
test
2026-05-29 19:54:40 +02:00
2026-05-29 19:14:21 +02:00
2026-05-26 12:27:23 +02:00
...
2026-05-29 19:17:46 +02:00
2026-05-26 12:27:23 +02:00
2026-05-29 19:14:21 +02:00
...
2026-05-29 19:17:46 +02:00
2026-05-29 19:54:40 +02:00
2026-05-26 12:27:23 +02:00
2026-05-26 12:27:23 +02:00
2026-05-26 12:27:23 +02:00
2026-05-26 12:27:23 +02:00
2026-05-26 12:27:23 +02:00
2026-05-29 19:41:19 +02:00

Minecraft ComputerCraft API Frontend

Vue 3 + TypeScript single page application for the ME System Monitor backend. It shows the live contents of a Minecraft ME system over a websocket and renders per-item history charts.

Features

  • Live view over a websocket (wss://…/api/ws/live) updates in real time.
  • Persistent filters text search, sort column/order and mod filter are kept in localStorage and re-applied by the server on every update.
  • Item history clicking an item opens a detail page with a Chart.js line chart plus current / min / max / change statistics.
  • Abbreviated numbers 12000 → 12k, 43452542 → 43.45M. The full value is available as a tooltip.
  • HTTPS / WSS by default via a self-signed certificate.

Tech stack

Concern Choice
Framework Vue 3 (<script setup>) + TypeScript
Build tool Vite 6
Routing vue-router 4
Charts Chart.js 4
Dev TLS @vitejs/plugin-basic-ssl
Production nginx (HTTPS, self-signed cert)

Quick start (development)

npm install
cp .env.example .env   # adjust VITE_API_BASE / VITE_WS_BASE if needed
npm run dev

The dev server runs on https://localhost:5173 with a self-signed certificate. Your browser will warn about it once accept the exception.

The backend also uses a self-signed certificate. Open https://localhost:3000/api/docs once and accept that certificate too, otherwise the browser blocks the API and websocket connections.

Build & preview

npm run build     # type-checks and builds into dist/
npm run preview   # serves the build on https://localhost:4173

Environment variables

Variable Default Description
VITE_API_BASE https://localhost:3000 Backend HTTP API base URL
VITE_WS_BASE derived from API base Backend websocket base URL

VITE_* variables are inlined at build time.

Docker

docker build \
  --build-arg VITE_API_BASE=https://localhost:3000 \
  -t mc-cc-frontend .

docker run -p 8443:443 mc-cc-frontend

The container generates a self-signed certificate on first start and serves the SPA on port 443 (mapped to 8443 above) → https://localhost:8443.

Project structure

src/
  api/          config, shared types, HTTP client
  components/   FilterBar, ItemTable, HistoryChart
  composables/  useLiveData (websocket + filter state)
  router/       route definitions
  utils/        number / date formatting
  views/        LiveView, ItemHistoryView
S
Description
No description provided
Readme 62 KiB
Languages
Vue 56.3%
TypeScript 28.8%
CSS 7.7%
Dockerfile 3.3%
Shell 2%
Other 1.9%