dasmlab_home is the main landing page and interactive dashboard for the DASMLAB ecosystem — a living lab environment showcasing projects, infrastructure, and integrations. This project is designed as a modern, performant Vue.js-based SPA (Single Page Application) built with the Quasar Framework, and fully containerized for scalable deployment across Kubernetes environments.
-
⚡ Vue.js 3 + Quasar-based SPA
Leveraging Pinia for state management, Vue Router for navigation, and built-in Quasar components for fast UI scaffolding. -
🔌 Live Data via SSE (Server-Sent Events)
Real-time updates from backend agents and controllers streamed directly into the interface. -
🧩 Modular Component Design
Includes reusable ProjectCard, Gauge, StatusPanel, and ConsoleLog components, styled for dark/light mode flexibility. -
📦 Containerized Deployment
Packaged vianginxas a static web asset container. Wrapped usingbuildme.shandrunme.shfor local or CI builds. -
🚀 CI/CD Ready with GitHub Actions & K8s Envelope
Integrated into a 5-phase pipeline (Build, Run, Secure, Validate, Publish) that publishes to a GitOps target repository for live deployment via Flux or ArgoCD.
dasmlab-home/
├── src/ # Quasar frontend sources (layouts, pages, components, router)
├── public/ # Static assets
├── buildme.sh # Build wrapper script (Docker)
├── runme.sh # Local runner script (Docker)
├── k8s_envelope/
│ └── dasmlab-home_deploy.yaml # K8s manifest (Deployment + Service template)
├── .github/workflows/ # CI/CD pipeline
└── README.md # This file
To build and run this project locally or in CI, ensure the following are installed:
| Tool | Version | Link |
|---|---|---|
| Ubuntu | 22.04+ | https://ubuntu.com/download |
| Node.js | ≥ 18.x | https://nodejs.org/en/download |
| npm | ≥ 9.x | https://docs.npmjs.com/downloading |
| Docker | ≥ 24.x | https://docs.docker.com/get-docker |
| Quasar CLI | ≥ 2.x | https://quasar.dev/start/installation |
Install Quasar globally:
npm install -g @quasar/cliTo run in local dev mode (hot reload, dev server):
quasar devTo build the production container and run it locally:
./buildme.sh
./runme.shThis will expose the containerized app at:
👉 http://localhost:8080
This project is fully wired into a GitHub Actions pipeline that follows a 5-phase structure:
- Build – Quasar app is built into static assets
- Run – Container image is assembled using
nginx - Secure – Security scans (Trivy, custom DAST/SAST hooks)
- Validate – Runtime container tests & image inspection
- Publish – Final image is pushed to registry and K8s manifest is templated and sent to:
lmcdasm/dasmlab_live_cicd/
└── clusters/
└── dasmlab-prod-1/
└── dasmlab_home/<tagged_manifest>.yaml
This GitOps target repo is picked up by FluxCD or ArgoCD, which applies the deployment to the live cluster.
(You can include your PNG architecture diagram and UI screenshot here)
This is a living project within the DASMLAB ecosystem. PRs and ideas are welcome — feel free to fork and customize your own lab page or contribute enhancements!
AAL License — see LICENSE bump

