Files
lxd-app/frontend
2025-07-17 13:05:19 +02:00
..
2025-07-08 20:21:50 +02:00
2025-07-17 13:05:19 +02:00
2025-07-17 13:05:19 +02:00
2025-07-08 20:21:50 +02:00
2025-07-08 20:21:50 +02:00
2025-07-08 20:21:50 +02:00
2025-07-08 20:21:50 +02:00
2025-07-08 20:21:50 +02:00
2025-07-16 12:15:55 +02:00
2025-07-08 20:21:50 +02:00
2025-07-16 12:15:55 +02:00
2025-07-08 20:21:50 +02:00

LXD Frontend (Nuxt.js)

This is the frontend Nuxt.js application that works with the LXD Proxy API to dynamically provision LXD containers based on subdomain access and user CAPTCHA validation.


🌐 Overview

  • Each user has a subdomain (e.g., mitul.lxdapp.local)
  • On visiting the subdomain, a login page prompts for CAPTCHA
  • Upon successful CAPTCHA, a request is made to the backend to:
    • Create or start an LXD container
    • Wait until it's ready
    • Proxy user to the container

🧩 Features

  • Subdomain-aware dynamic environment provisioning
  • CAPTCHA login screen for triggering container creation
  • API integration with backend (Slim PHP) service
  • Axios-based POST to /api/v1/proxy

🛠 Project Setup

  1. Install dependencies

    npm install
    
    
  2. Run the development server

    npm run dev
    
    
    
    

🗂 Project Structure

frontend/ ├── pages/ │ └── index.vue # Login screen ├── plugins/ │ └── axios.js # Axios config (if used) ├── nuxt.config.js # App config ├── static/ │ └── favicon.ico ├── package.json └── README.md