Skip to content

Frontend (client-ui)

The frontend is a Nuxt 4 SSR web application that provides the user interface for managing projects, analyses, nodes, and platform administration.

Running

bash
# Development (from repo root)
npm run client-ui

# Docker
docker run -e ... privateaim/hub ui

Dependencies

  • Core API — REST API for all domain operations
  • Authup — OAuth2 identity provider (login, registration, permissions)

Environment Variables

VariableDefaultDescription
NUXT_PUBLIC_CORE_URLCore API base URL
NUXT_PUBLIC_AUTHUP_URLAuthup URL
NUXT_PUBLIC_STORAGE_URLStorage service URL
NUXT_PUBLIC_TELEMETRY_URLTelemetry service URL
NUXT_PUBLIC_MESSENGER_URLMessenger service URL

Key Features

  • Project management — create and manage collaborative research projects
  • Analysis workflows — define, configure, and monitor distributed analyses
  • Node management — register and manage compute nodes
  • Administration — realm management, user roles, approval workflows
  • Real-time updates — live status via WebSocket (Messenger service)

Technology

  • Nuxt 4 with SSR
  • Vue 3 composition API
  • @privateaim/client-vue — shared component library
  • @privateaim/core-http-kit — typed HTTP client for Core API
  • Authup client libraries — authentication and authorization UI

Released under the Apache-2.0 License.