memory-bank/components/dashboard.md
The Dashboard is the web-based user interface for Gitpod, providing users with access to workspaces, settings, account management, and other platform features. It's a single-page application (SPA) built with modern web technologies.
The primary purposes of the Dashboard are:
The Dashboard is a React-based single-page application with the following architectural characteristics:
App.tsx: Entry point for the SPA, sets up routingsrc/account/: Components for account-related pages (Profile, Notifications, Subscriptions)src/settings/: Components for settings-related pages (DefaultIDE, EnvVars, GitIntegration, FeaturePreview)src/workspaces/: Components for workspace managementpublic/: Static assetscomponents/gitpod-protocol:lib: Protocol definitions for communicating with Gitpod servicescomponents/public-api/typescript:lib: TypeScript client for the Gitpod public APIcomponents/public-api/typescript-common:lib: Common TypeScript utilities for the public APIThe Dashboard provides interfaces for:
Workspace Management:
Account Management:
Platform Configuration:
Redirection Logic:
gitpod.io/# to app.ona.com/#hash !== "")/) on gitpod.io domainsgitpod.io/ without hash fragmentsThe Dashboard supports several development workflows:
Local Development:
yarn start-local to start the development serverDevelopment Against Live Gitpod:
Testing:
yarn test:unit or in watch mode with yarn test:unit:watchThe Dashboard is built using:
The build process includes:
The Dashboard integrates with:
The Dashboard is typically used to: