Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/openupm/openupm-cli

The OpenUPM-CLI is a command-line interface for maintaining UPM registries.
https://github.com/openupm/openupm-cli

cli hacktoberfest openupm openupm-cli unity unity-registry upm upm-registry

Last synced: 6 days ago
JSON representation

The OpenUPM-CLI is a command-line interface for maintaining UPM registries.

Awesome Lists containing this project

README

        

# openupm-cli

![npm](https://img.shields.io/npm/v/openupm-cli) ![NPM](https://img.shields.io/npm/l/openupm-cli) ![npm](https://img.shields.io/npm/dm/openupm-cli)

The command-line tool to maintain the Unity manifest file for 3rd-party upm registries, offering a similar but lighter experience like *npm* or *yarn* for Node.js.

The tool is designed to work with [the OpenUPM registry](https://openupm.com), but can also work with any upm registries, including the official Unity registry.

- [openupm-cli](#openupm-cli)
- [How it works](#how-it-works)
- [Installation](#installation)
- [Windows platform troubleshooting](#windows-platform-troubleshooting)
- [Cannot find module 'node:net'](#cannot-find-module-nodenet)
- [Commands](#commands)
- [Add packages](#add-packages)
- [Remove packages](#remove-packages)
- [Search packages](#search-packages)
- [View package information](#view-package-information)
- [View package dependencies](#view-package-dependencies)
- [Global command options](#global-command-options)
- [General help pages](#general-help-pages)
- [Contributors](#contributors)

## How it works

The command-line tool installs the 3rd-party registry as a scoped registry and maintains the `Packages/manifest.json` file when adding/removing packages. If the manifest file is modified, the *Unity Package Manager* will detect the changes and try to resolve the package dependencies.

> Notice: the command-line tool does not directly install/uninstall package tarballs, at least for now.

## Installation

- Requires [nodejs 18 or above](https://nodejs.org/en/download/).
- Install via npm:

```sh
npm install -g openupm-cli
```

- Or install via [yarn](https://yarnpkg.com/):

```sh
yarn global add openupm-cli
```

### Windows platform troubleshooting

If npm is not available in your CMD/PowerShell/Git-Bash, please configure your [environment variables](https://stackoverflow.com/questions/27864040/fixing-npm-path-in-windows-8-and-10).

```
# for npm
c:\Program Files\nodejs

# for npm global bin
C:\Users\{yourName}\AppData\Roaming\npm
```

### Cannot find module 'node:net'

```sh
internal/modules/cjs/loader.js:818
throw err;
^

Error: Cannot find module 'node:net'
```

Please install [Node.js 18 or above](https://nodejs.org/en/download/).

## Commands

### Add packages

Use `openupm add` to add one or more dependencies to your project.

```sh
openupm add [email protected]
```

Checkout [the commands doc page](./docs/cmd-add.md) for more information.

### Remove packages

Use `openupm remove` to remove one or more dependencies from your project.

```sh
openupm remove com.my.package
```

Checkout [the commands doc page](./docs/cmd-remove.md) for more information.

### Search packages

Use `openupm search` to search for remote packages by name.

```sh
openupm search something
```

Checkout [the commands doc page](./docs/cmd-search.md) for more information.

### View package information

Use `openupm view` to view detailed information about a remote package.

```sh
openupm view com.my.package
```

Checkout [the commands doc page](./docs/cmd-view.md) for more information.

### View package dependencies

Use `openupm deps` to print package dependencies.

```sh
openupm deps com.my.package
```

Checkout [the commands doc page](./docs/cmd-deps.md) for more information.

### List installed packages

Use `openupm ls` to print the names and versions of installed packages.

```sh
openupm ls
```

Checkout [the commands doc page](./docs/cmd-ls.md) for more information.

### Global command options

There are also some global options that work for every command. You can read about them [here](./docs/global-opts.md).

## General help pages

We also have a few guide pages on specific topics if you need help:

- [Working with 3rd party registries](./docs/help-registry.md)
- [Using Windows system-user authentication](./docs/help-system-user.md)

## Contributors



Favo Yang
Favo Yang

๐Ÿ’ป ๐Ÿšง
Ramon Brullo
Ramon Brullo

๐Ÿ’ป ๐Ÿšง
Koji Hasegawa
Koji Hasegawa

๐Ÿ’ป ๐Ÿ›
MonoLogueChi
MonoLogueChi

๐Ÿ›
Masahiro Yamaguchi
Masahiro Yamaguchi

๐Ÿ›
Max Himmel
Max Himmel

๐Ÿ›
Wilfredo Velรกzquez-Rodrรญguez
Wilfredo Velรกzquez-Rodrรญguez

๐Ÿ›


Christopher Arendt
Christopher Arendt

๐Ÿ›
Felix Winterhalter
Felix Winterhalter

๐Ÿ›
Antoine Lelievre
Antoine Lelievre

๐Ÿ›
Tyler Temp
Tyler Temp

๐Ÿ›
Marc Bernard
Marc Bernard

๐Ÿ“–