openupm-cli is a command-line interface for managing Unity Package Manager (UPM) dependencies. It allows users to add, remove, search, view, and list Unity packages from various registries (primarily OpenUPM and Unity's official registry). The tool modifies the Unity project's manifest.json file to add/remove dependencies and handles scoped registries for package resolution. It features a modular architecture with clear separation between CLI interface, application logic, domain models, and I/O operations. The codebase is written in TypeScript with comprehensive test coverage and follows semantic versioning for releases.
OpenUPM is a community-driven curated registry of Unity packages, hosted as a YAML metadata repository. The repository contains structured package manifests (name, description, license, source URL, topics, etc.) for thousands of Unity UPM packages, organized into released and unreleased categories. It includes a CI pipeline for automated validation of data changes, a PR comment bot for contributor guidance, and issue templates for governance (rename, replace, unpublish). The actual validation logic lives in a separate repository (openupm-next), making this repo primarily a data store with orchestration scripts. While not a traditional data research project with notebooks or models, it exemplifies a well-governed curated dataset with automated quality checks.