Nxtgauge Admin Panel
|
All checks were successful
build-and-release / build (push) Successful in 1m6s
Same fix as nxtgauge-frontend-solid: registry_prune.py sorted candidate tags by the manifest GET response's Date header (the moment of the request, not the image's actual build time), making the "keep newest N" sort effectively random whenever multiple tags are touched in the same prune run - which happens on every single run, since the tag just pushed by this same build is always one of the candidates. That let the prune step delete the image a run had just built, before gitops even got a chance to reference it. Now reads the real "created" timestamp from the image's config blob and always protects the current run's own SHA from deletion regardless of sort order. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> |
||
|---|---|---|
| .claude | ||
| .forgejo | ||
| .gitea/workflows | ||
| .github/workflows | ||
| .nitro/types | ||
| .playwright-cli | ||
| .storybook | ||
| docs | ||
| public | ||
| scripts | ||
| src | ||
| tests | ||
| .dockerignore | ||
| .eslintrc.cjs | ||
| .gitignore | ||
| .prettierrc | ||
| admin-solid.dev.pid | ||
| admin-solid.start.pid | ||
| admin.pid | ||
| docker-compose.yml | ||
| Dockerfile | ||
| Dockerfile.simple | ||
| package-lock.json | ||
| package.json | ||
| playwright.a11y.config.ts | ||
| playwright.config.ts | ||
| playwright.external.config.ts | ||
| playwright.storybook.config.ts | ||
| playwright.visual.config.ts | ||
| README.md | ||
| screenshot.ts | ||
| tsconfig.json | ||
| vite.config.timestamp_1776803609838.js | ||
| vite.config.ts | ||
| vitest.config.ts | ||
| vitest.shims.d.ts | ||
NXTGAUGE Admin Solid
SolidStart migration target for nxtgauge-nov-2025-frontend (admin panel).
Principle
Port admin modules one by one with strict API/permission parity.
See docs/MIGRATION_MASTER_PLAN.md.
CI (Woodpecker)
Required secrets:
REGISTRY_USERNAMEREGISTRY_PASSWORD
This project was created with the Solid CLI
Local Docker test (low RAM, no port conflict)
This repo ships an Alpine runtime image and a docker-compose.yml profile mapped to port 9102.
Build and run:
docker compose up --build -d
Check:
curl -I http://localhost:9202
Stop:
docker compose down
Run additional isolated instances (9103, 9104, ...):
docker run -d --name nxtgauge-admin-solid-9103 -p 9103:9202 nxtgauge-admin-solid:local
docker run -d --name nxtgauge-admin-solid-9104 -p 9104:9202 nxtgauge-admin-solid:local