diff --git a/docs/content/cli/reference.md b/docs/content/cli/reference.md new file mode 100644 index 0000000000..9dc1f83149 --- /dev/null +++ b/docs/content/cli/reference.md @@ -0,0 +1,206 @@ +# CLI Reference + +This document serves as a reference to the Medusa CLI tool including how to install it and what commands are available. + +## Overview + +The Medusa CLI serves as a tool that allows you to perform important commands while developing with Medusa. + +To use Medusa, it is required to install the CLI tool as it is used to create a new Medusa server. + +## How to Install CLI Tool + +To install the CLI tool, run the following command in your terminal: + +```bash npm2yarn +npm install @medusajs/medusa-cli -g +``` + +The CLI tool is then available under the `medusa` command. You can see all commands and options with the following command: + +```bash +medusa --help +``` + +## Common Options + +The following options can be used with all available commands. + +### --help + +Learn more about what you can do with the CLI tool or with a specific command. + +**Alias:** `-h` + +```bash +medusa new --help +``` + +### --verbose + +Turn on verbose output for detailed logs. + +**Default:** `false` + +```bash +medusa new test-server --verbose +``` + +### --no-color + +Turn off colors in the output. + +**Alias:** `--no-colors` + +**Default:** `false` + +```bash +medusa new test-server --no-color +``` + +### --json + +Turn on JSON logger. + +**Default:** `false` + +```bash +medusa new test-server --json +``` + +### --version + +If used inside a Medusa project, the version of the Medusa CLI and Medusa project is shown. Otherwise, the version of the Medusa CLI is shown. + +**Alias:** `-v` + +```bash +medusa --version +``` + +## Available Commands + +### new + +Create a new Medusa server. + +```bash +medusa new [ []] +``` + +#### Arguments + +| Name | Description | Default | +| --- | --- | --- | +| `server_name` | The name of the Medusa server. It will be used as the name of the directory created. | If not provided, you’ll be prompted to enter it. | +| `starter_url` | The URL of the starter to create the server from. | The default starter is used. | + +#### Options + +| Name | Description | +| --- | --- | +| `--seed` | If the flag is set the command will attempt to seed the database after setup. | +| `-y`, `--useDefaults` | If the flag is set the command will not interactively collect database credentials. | +| `--skip-db` | If the flag is set the command will not attempt to complete the database setup. | +| `--skip-migrations` | If the flag is set the command will not attempt to complete the database migration. | +| `--skip-env` | If the flag is set the command will not attempt to populate .env. | +| `--db-user` | The database user to use for database setup and migrations. | +| `--db-database` | The database used for database setup and migrations. | +| `--db-pass` | The database password to use for database setup and migrations. | +| `--db-port` | The database port to use for database setup and migrations. | +| `--db-host` | The database host to use for database setup and migrations. | + +### develop + +Start development server. This command watches files for any changes to rebuild the files and restart the server. + +```bash +medusa develop +``` + +#### Options + +| Name | Description | +| --- | --- | +| `-H`, `--host` | Set host. Defaults to localhost. | +| `-p`, `--port` | Set port. Defaults to 9000. | + +### start + +Start development server. This command does not watch for file changes or restart the server. + +```bash +medusa start +``` + +#### Options + +| Name | Description | +| --- | --- | +| `-H`, `--host` | Set host. Defaults to localhost. | +| `-p`, `--port` | Set port. Defaults to 9000. | + +### migrations + +Migrate the database to the most recent version. + +```bash +medusa migrations +``` + +#### Arguments + +| Name | Description | Default | +| --- | --- | --- | +| `action` | The action to perform. Values can be run or show. run is used to run the migrations, and show is used to only show what migrations are available to run. | This argument is required and does not have a default value. | + +### seed + +Migrates and populates the database with the provided file. + +```bash +medusa seed --seed-file= +``` + +#### Options + +| Name | Description | +| --- | --- | +| `-f`, `--seed-file` | Path to the file where the seed is defined. (required) | +| `-m`, `--migrate` | Flag to indicate if migrations should be run prior to seeding the database. Default is true. | + +### user + +Creates a new admin user. + +```bash +medusa user --email [--password ] +``` + +#### Options + +| Name | Description | +| --- | --- | +| `-e`, `--email` | The email to create a user with. (required) | +| `-p`, `--password` | The password to use with the user. If not included, the user will not have a password. | +| `-i`, `--id` | The user’s ID. By default it is automatically generated. | + +### telemetry + +Enable or disable the collection of anonymous data usage. If no option is provided, the command will enable the collection of anonymous data usage. + +```bash +medusa telemetry +``` + +#### Options + +| Name | Description | +| --- | --- | +| `--enable` | Enable telemetry (default) | +| `--disable` | Disable telemetry | + +## What’s Next 🚀 + +- Learn more about [anonymous usage data collection](../usage.md). +- Learn how to [configure your Medusa server](../usage/configurations.md). diff --git a/www/docs/sidebars.js b/www/docs/sidebars.js index f65f7a17e6..4d440e9297 100644 --- a/www/docs/sidebars.js +++ b/www/docs/sidebars.js @@ -431,6 +431,11 @@ module.exports = { }, ], }, + { + type: "doc", + id: "cli/reference", + label: "CLI Reference", + }, { type: "doc", id: "contribution-guidelines",