NodeLinkstatus
No description available
Install / Use
/learn @1Lucas1apk/NodeLinkstatusREADME
NodeLink Status
NodeLink monitoring stack with a Discord bot, API, and dashboard. Designed for fast operational visibility with continuous updates and room for refinement.
Overview
- Discord bot: posts ANSI cards with live node status.
- API: exposes
/api/statsfor the dashboard. - Dashboard: web UI for metrics and charts.
Requirements
- Node.js 18+ (recommended)
- npm
- A Discord bot token with permission to send messages
- Accessible NodeLink nodes (HTTP/WS)
Project Structure
src/: bot, API, monitordashboard/: Vite + React UIconfig.js: central configuration
Configuration
Edit config.js:
bot.token: Discord bot tokenbot.channelId: target channelbot.updateInterval: update interval (ms)nodes: list of NodeLink instancesapi.port: API portattribution: dashboard footer textbrand.iconUrl: icon used in embeds
Example:
bot: {
token: 'YOUR_TOKEN',
channelId: 'CHANNEL_ID',
updateInterval: 30000
}
Install
npm install
Run
This starts the bot, API, and the Vite dashboard:
node src/index.js
API
Main endpoint:
GET /api/stats
Response includes:
nodeswith telemetry, uptime, memory, etc.historywith recent eventstimestamp
Discord Bot
The bot posts:
- Cluster summary card
- Per-node ANSI cards
If an old Components V2 message exists, it’s removed and replaced with embeds.
Dashboard
Runs via Vite in dashboard/ and consumes:
http://localhost:4000/api/stats
Style entry points:
dashboard/src/index.cssdashboard/src/App.tsx
Refinement Tips
- Performance: increase
updateIntervalor simplify data shown. - Visual: tweak colors and spacing in the dashboard.
- Metrics: add new metrics in
src/monitor/index.jsand pass through the API.
Troubleshooting
- Bot not updating: verify
bot.tokenandbot.channelId. - Dashboard empty: confirm API is running on the correct port.
- Metrics look wrong: verify
/v4/metricsand/v4/statsare reachable.
License
ISC
