Files
dashboard/api/package-lock.json
fegger 55e871bd4f Add backend data aggregator and API proxy services
- update-data.js: cron job that aggregates Google Calendar ICS feeds
  (today + upcoming, node-ical), Netbird reachability, Gitea/GitLab
  commit stats and Open WebUI models into data.json
- server.js: small Node proxy behind nginx exposing /api/chat
  (Open WebUI completions), /api/gpu-stats and /api/ollama
- gitlab-relay.js: prepared HTTP relay for GitLab over a Netbird VPN
  (not wired up yet; the setup key was rejected by vpn.ixsol.at)
- docker-entrypoint.sh: starts updater in the background, API proxy,
  cron (15 min refresh) and nginx without blocking startup
- nginx: proxy locations + no-cache for data.json
- compose: TZ, token env wiring from .env, gpu-stats service
  (python + rocm-smi with device passthrough)
- dockerignore: keep .env out of the build context
2026-09-04 14:07:01 +02:00

60 lines
2.1 KiB
JSON

{
"name": "dashboard-calendar-updater",
"version": "1.0.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "dashboard-calendar-updater",
"version": "1.0.0",
"dependencies": {
"node-ical": "^0.27.1"
}
},
"node_modules/node-ical": {
"version": "0.27.1",
"resolved": "https://registry.npmjs.org/node-ical/-/node-ical-0.27.1.tgz",
"integrity": "sha512-5fiKuh/h2HrWKzFt20LtRQdjtjdGfijGfDnCfdAEc++SFX9gA6sa7xwj7/BJmRfWtW/NJWBenN4tOJhg0vM3pg==",
"license": "Apache-2.0",
"dependencies": {
"rrule-temporal": "^2.0.0",
"temporal-polyfill": "^1.0.1"
},
"engines": {
"node": ">=22"
}
},
"node_modules/rrule-temporal": {
"version": "2.2.3",
"resolved": "https://registry.npmjs.org/rrule-temporal/-/rrule-temporal-2.2.3.tgz",
"integrity": "sha512-FAhonFfd9UUy6VI9kjzlbDPMjp/lgEGLH+dAGKJ9WYi7J4tHNaNb3Qp5jjjEhpOxFQgCwb2xz8HjMHbdFVLJoQ==",
"license": "MIT",
"dependencies": {
"temporal-spec": "^1.0.0"
}
},
"node_modules/temporal-polyfill": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/temporal-polyfill/-/temporal-polyfill-1.0.4.tgz",
"integrity": "sha512-MLEU0qOD2uXlz24oINNtdLZQl8RgmMxSnRtKEGZGGetTJjlRwQJjk+VsJ4EREaUoiaTb8NJOcUiKtoAiWn9EBg==",
"license": "MIT",
"dependencies": {
"temporal-spec": "1.0.1",
"temporal-utils": "1.0.2"
}
},
"node_modules/temporal-spec": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/temporal-spec/-/temporal-spec-1.0.1.tgz",
"integrity": "sha512-wxVoanmDeavXie1vu2JaQ3WIc3JZnWAOYFBsJyATaVsXsycKYUflGsyBmrRSnoCpZJpwPyr38VpgSUlQ8CbFxg==",
"license": "Apache-2.0"
},
"node_modules/temporal-utils": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/temporal-utils/-/temporal-utils-1.0.2.tgz",
"integrity": "sha512-1B8Dl4KzrOvsNUlpoWGno2VLQlxroLjDgc5NBjVC9ax9ymdo+ezfyvhyjEMx+IVfhINr6CIG2gcnlP95iRrybQ==",
"license": "MIT"
}
}
}