The mig-ui repository is the user interface component for OpenShift Migration, a tool designed to facilitate the migration of applications and data within OpenShift environments. Written primarily in TypeScript, this project serves as the frontend interface for the broader migration toolkit ecosystem, which includes related repositories like mig-controller, mig-operator, and mig-agnosticd that share overlapping contributors and work together as part of the complete migration solution.
The repository provides a web-based interface that allows users to manage and monitor migration operations across OpenShift clusters. The UI development is built on modern web technologies, requiring NodeJS version 12.13.0 or higher and Yarn 1.x as the package manager. The project includes a configuration system that allows developers to customize settings through a config.dev.json file, which can be generated from the provided example configuration template.
The development workflow is streamlined for ease of contribution. Developers can start a local development server using the yarn start command, which runs the UI in local dev mode with mocked external dependencies. This approach allows UI developers to work on the interface without needing access to actual cluster infrastructure or authentication systems. For a complete build of the project, developers use the yarn build command. Code quality is enforced through linting checks that must pass before pull requests can be merged, with developers able to run yarn lint locally to verify their code meets the project's style standards before submission.
For developers who need to test against real OpenShift clusters rather than mocked services, the repository supports a remote dev mode. This mode allows the UI to communicate with actual backend clusters by configuring the clusterApi setting in the development configuration file. When running in remote mode, the UI uses the configured cluster for OAuth login and operates as if it were being served directly from that cluster. This functionality requires the OpenShift client tool oc to be installed and available in the system PATH, and developers must be authenticated to their target cluster using oc login before starting the remote development server.
The project is actively maintained with clear contribution guidelines documented in a CONTRIBUTING.md file that provides recommendations for contributors. The repository is tagged with the hacktoberfest topic, indicating participation in community contribution initiatives. The codebase spans multiple functional areas including UI development, database migration tools, schema management, data transformation, and interactive design patterns. The project serves as a frontend framework and application interface for the broader migration toolkit, handling user interface design and project management aspects of the OpenShift migration process. The interconnected nature of this repository with mig-controller, mig-operator, and mig-agnosticd demonstrates that mig-ui is part of a comprehensive migration platform where the UI layer communicates with backend controllers and operators to orchestrate complex migration workflows across OpenShift infrastructure.