Skip to content

Commit

Permalink
Add more descriptions (#70)
Browse files Browse the repository at this point in the history
* Add body to topics read/write

* Add more usefull command guides

* Add missing descriptions and reformat
  • Loading branch information
luisquix authored Sep 10, 2024
1 parent faf125e commit f884558
Show file tree
Hide file tree
Showing 117 changed files with 758 additions and 400 deletions.
7 changes: 7 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -65,12 +65,19 @@ Quix CLI can be installed on various operating systems using different methods.
> [!NOTE]
> For version specification, replace `{version}` with the actual version number you intend to install (e.g., `1.2.3`). Omitting the `{version}` parameter will install the latest available version of Quix CLI. Ensure that the directory where Quix CLI is installed is included in your system's PATH.
### Installation using Release Binaries
1. Visit the [latest release page](https://github.com/quixio/quix-cli/releases/latest) and download the executable matching your OS/architecture.
2. Copy the executable to a location of your choice.
3. Add that location to your system's PATH.

### Keeping Your CLI Up-to-Date

It's important to regularly update your Quix CLI to ensure you have access to the latest features, bug fixes, and improvements. You can do this easily using the `quix update` command, which installs the latest stable version by default.
You can also install specific versions or pre-releases if needed. For more details on the update process, including how to update to pre-release versions, visit the [Quix CLI update command documentation](https://quix.io/docs/quix-cli/cli-reference/update).
## Usage
To view a complete list of available commands, run:
Expand Down
78 changes: 52 additions & 26 deletions docs/cli-commands-summary.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,28 +4,30 @@ This quick reference guide lists common use cases for the Quix CLI with the corr

## Core commands

| Use Case | Command |
| ---------------------------------------------------------------------------------- | ---------------------- |
| [Update application `.env` files from `quix.yaml`](./cli-reference/init.md) | `quix init --update` |
| [Run applications with the variables from `.env`](./cli-reference/run.md) | `quix run` |
| [Update pipeline configuration](./cli-reference/pipeline/update.md) | `quix pipeline update` |
| [Bring pipeline up in Docker](./cli-reference/pipeline/up.md) | `quix pipeline up` |
| [Get a global status check of the CLI settings](./cli-reference/status.md) | `quix status` |
| [Display the current status of the local pipeline](./cli-reference/pipeline/status.md) | `quix pipeline status` |
| [Push local changes to Git and sync with Quix Cloud](./cli-reference/pipeline/sync.md) | `quix pipeline sync` |
| Use Case | Command |
| -------------------------------------------------------------------------------------- | -------------------------- |
| [Update application `.env` files from `quix.yaml`](./cli-reference/init.md) | `quix init --update` |
| [Run applications with the variables from `.env`](./cli-reference/run.md) | `quix run` |
| [Update pipeline configuration](./cli-reference/pipeline/update.md) | `quix pipeline update` |
| [Bring pipeline up in Docker](./cli-reference/pipeline/up.md) | `quix pipeline up` |
| [Get a global status check of the CLI settings](./cli-reference/status.md) | `quix status` |
| [Display the current status of the local pipeline](./cli-reference/pipeline/status.md) | `quix pipeline status` |
| [Push local changes to Git and sync with Quix Cloud](./cli-reference/pipeline/sync.md) | `quix pipeline sync` |
| [Read messages from a topic in your pipeline](./cli-reference/broker/topics/read.md) | `quix broker topics read` |
| [Write messages to a topic in your pipeline](./cli-reference/broker/topics/write.md) | `quix broker topics write` |

## Initialization

| Use Case | Command |
| ---------------------------------------------------------------------------------- | -------------------------- |
| Use Case | Command |
| -------------------------------------------------------------------------------------- | -------------------------- |
| [Initialize a new Quix project](./cli-reference/init.md) | `quix init` |
| [Initialize with DevContainer support](./cli-reference/init.md) | `quix init --devcontainer` |
| [Initialize a project updating `.env` files from `quix.yaml`](./cli-reference/init.md) | `quix init --update` |

## Application Management

| Use Case | Command |
| -------------------------------------------------------------------------- | -------------------- |
| Use Case | Command |
| ------------------------------------------------------------------------------ | -------------------- |
| [Create a new application](./cli-reference/apps/create.md) | `quix app add` |
| [Edit the variables of an application](./cli-reference/apps/edit.md) | `quix app edit` |
| [List applications in the project](./cli-reference/apps/list.md) | `quix app list` |
Expand All @@ -34,8 +36,8 @@ This quick reference guide lists common use cases for the Quix CLI with the corr

## Pipeline Management

| Use Case | Command |
| ------------------------------------------------------------------------------------------ | --------------------------- |
| Use Case | Command |
| ---------------------------------------------------------------------------------------------- | --------------------------- |
| [Update pipeline from current applications configurations](./cli-reference/pipeline/update.md) | `quix pipeline update` |
| [View pipeline graph](./cli-reference/pipeline/view.md) | `quix pipeline view` |
| [Bring pipeline up in Docker](./cli-reference/pipeline/up.md) | `quix pipeline up` |
Expand All @@ -48,26 +50,50 @@ This quick reference guide lists common use cases for the Quix CLI with the corr

## Broker Management

| Use Case | Command |
| ------------------------------------------------------------------------------------------ | ------------------------ |
| [Start local pipeline broker](./cli-reference/broker/up.md) | `quix broker up` |
| [Stop local pipeline broker](./cli-reference/broker/down.md) | `quix broker down` |
| [List all the topics from your pipeline broker](./cli-reference/broker/topics/list.md) | `quix broker topic list` |
| [Read the content of a topic from your pipeline broker](./cli-reference/broker/topics/read.md) | `quix broker topic read` |
| Use Case | Command |
| ---------------------------------------------------------------------------------------------- | -------------------------- |
| [Start local pipeline broker](./cli-reference/broker/up.md) | `quix broker up` |
| [Stop local pipeline broker](./cli-reference/broker/down.md) | `quix broker down` |
| [List all the topics from your pipeline broker](./cli-reference/broker/topics/list.md) | `quix broker topic list` |
| [Read the content of a topic from your pipeline broker](./cli-reference/broker/topics/read.md) | `quix broker topic read` |
| [Read messages from a topic in your pipeline](./cli-reference/broker/topics/read.md) | `quix broker topics read` |
| [Write messages to a topic in your pipeline](./cli-reference/broker/topics/write.md) | `quix broker topics write` |

## SDK Broker Configuration

| Use Case | Command |
| -------------------------------------------------------------------------------- | ----------------------------------------------- |
| Use Case | Command |
| ------------------------------------------------------------------------------------ | ----------------------------------------------- |
| [Set SDK broker to custom local address](./cli-reference/sdk/broker/set.md) | `quix sdk broker set <broker-address> --enable` |
| [Set SDK broker to Quix Cloud](./cli-reference/sdk/broker/cloud.md) | `quix sdk broker cloud` |
| [Set SDK broker to default local configuration](./cli-reference/sdk/broker/local.md) | `quix sdk broker local` |

## Running Applications

| Use Case | Command |
| --------------------------------------------------------------------------- | ---------------------- |
| Use Case | Command |
| ------------------------------------------------------------------------------- | ---------------------- |
| [Run with the variables from `.env`](./cli-reference/run.md) | `quix run` |
| [Update the `.env` variables from the pipeline and run](./cli-reference/run.md) | `quix run --update` |
| [Run and stop deployed version of the application](./cli-reference/run.md) | `quix run --stop` |
| [Run and intercept deployed version of the application](./cli-reference/run.md) | `quix run --intercept` |
| [Run and intercept deployed version of the application](./cli-reference/run.md) | `quix run --intercept` |

## Common Options

Quix CLI offers several common options that can be used across all commands:

| Option | Description |
| ---------------------------- | -------------------------------------------------------------- |
| `-v, --verbose, --verbosity` | Displays detailed, verbose output, useful for troubleshooting. |
| `-h, -?, --help` | Shows help and usage information for the current command. |

### Help Output Overview

When using the `--help` option with any command, you’ll see the following structure:

- **Description**: A short explanation of what the command does.
- **Aliases**: Lists any alternative names or shortcuts for the command.
- **Usage**: The command syntax, showing how to apply arguments and options.
- **Commands** (optional): If the command has subcommands, these will be listed here.
- **Options**: Displays all available flags and parameters that modify the command’s behavior.
- **Documentation Link**: A link to detailed documentation for further guidance.

This layout provides a quick, at-a-glance reference to help you efficiently run and customize the command.
8 changes: 4 additions & 4 deletions docs/cli-reference/apps/convert.gen.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,11 +14,11 @@ quix apps convert <file-path> [options]

**Arguments:**

- `<file-path>` : The path of the source file to convert
- `<file-path>`: The path of the source file to convert

**Options:**

- `-l, --to-library-json` : Converts an 'app.yaml' to a 'library.json'
- `-a, --to-app-yaml` : Converts a 'library.json' to an 'app.yaml'
- `-o, --output <output>` : The directory where the file will be generated
- `-l, --to-library-json`: Converts an 'app.yaml' to a 'library.json'
- `-a, --to-app-yaml`: Converts a 'library.json' to an 'app.yaml'
- `-o, --output <output>`: The directory where the file will be generated

12 changes: 6 additions & 6 deletions docs/cli-reference/apps/create.gen.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,13 @@ quix apps create [<library-item-id>] [options]

**Arguments:**

- `<library-item-id>` : If omitted, an interactive list is displayed. Use this argument to manually specify the library item you want to use. Use 'quix app library' to see all available items.
- `<library-item-id>`: If omitted, an interactive list is displayed. Use this argument to manually specify the library item you want to use. Use 'quix app library' to see all available items.

**Options:**

- `-n, --name <name>` : Application name
- `-p, --application-path <application-path>` : Application path
- `-d, --directory <directory>` : Base directory (defaults to current directory)
- `-l, --language <language>` : Application language [default: python]
- `--no-git` : Skip the git root directory check
- `-n, --name <name>`: Application name
- `-p, --application-path <application-path>`: Application path
- `-d, --directory <directory>`: Base directory (defaults to current directory)
- `-l, --language <language>`: Application language [default: python]
- `--no-git`: Skip the git root directory check

16 changes: 15 additions & 1 deletion docs/cli-reference/apps/create.md
Original file line number Diff line number Diff line change
Expand Up @@ -80,4 +80,18 @@ After selecting the output topic:
✓ Application 'Starter Source' created successfully in '$\Starter Source'
```

Then your new `Starter Source` application is created.
Then your new `Starter Source` application is created.


!!! tip
If you prefer searching the library instead of using the interactive mode, you can use the `quix app library` command to filter by language, tags, or search terms:

```bash
quix app library --tags Easy
```

Once you've found the desired library item, create a new application with the following command, replacing `[library-item-id]` with the item's ID:

```bash
quix apps create [library-item-id]
```
2 changes: 1 addition & 1 deletion docs/cli-reference/apps/delete.gen.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,5 @@ quix apps delete [options]

**Options:**

- `-d, --directory <directory>` : Base directory (defaults to current directory)
- `-d, --directory <directory>`: Base directory (defaults to current directory)

2 changes: 1 addition & 1 deletion docs/cli-reference/apps/edit.gen.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,5 @@ quix apps edit [options]

**Options:**

- `-d, --directory <directory>` : Base directory (defaults to current directory)
- `-d, --directory <directory>`: Base directory (defaults to current directory)

16 changes: 8 additions & 8 deletions docs/cli-reference/apps/index.gen.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,12 @@ quix apps [command] [options]

**Commands:**

- [convert](convert.md) : Converts applications from and to library item format
- [create](create.md) : Creates a new application locally based on a code sample of the library
- [delete](delete.md) : Remove an application
- [edit](edit.md) : Edit the application values
- [library](library.md) : Retrieve all library items
- [list](list.md) : Lists all the local applications of the project
- [update](update.md) : Updates the application's '.env' file with the variables from 'quix.yaml'
- [variables](variables/index.md) : Manage your local application's variables
- [convert](convert.md): Converts applications from and to library item format
- [create](create.md): Creates a new application locally based on a code sample of the library
- [delete](delete.md): Remove an application
- [edit](edit.md): Edit the application values
- [library](library.md): Retrieve all library items
- [list](list.md): Lists all the local applications of the project
- [update](update.md): Updates the application's '.env' file with the variables from 'quix.yaml'
- [variables](variables/index.md): Manage your local application's variables

8 changes: 4 additions & 4 deletions docs/cli-reference/apps/library.gen.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@ quix apps library [options]

**Options:**

- `-o, --output <json|table>` : Output type of the retrieved data
- `--language <language>` : Filter items by language
- `--tags <tags>` : Filter items by tag(s)
- `-s, --search <search>` : Search for this string within the library item fields
- `-o, --output <json|table>`: Output type of the retrieved data
- `--language <language>`: Filter items by language
- `--tags <tags>`: Filter items by tag(s)
- `-s, --search <search>`: Search for this string within the library item fields

66 changes: 65 additions & 1 deletion docs/cli-reference/apps/library.md
Original file line number Diff line number Diff line change
@@ -1 +1,65 @@
{% include-markdown './library.gen.md' %}
{% include-markdown './library.gen.md' %}

## Sample Usage

### Listing All Library Items

To view all available apps in the library:

```bash
$ quix app lib
```

Sample output:

```
| Id | Name | Description | Tags |
| -------------------- | -------------------- | ----------------------- | ----------------- |
| kafka-connect-source | Kafka Connect Source | Install a Kafka Connect | Advanced, Source, |
| | | source connector in the | Connectors, Kafka |
| | | Quix platform | |
```

### Searching the Library

To search for items containing the term `dashb`, run:

```bash
$ quix app lib -s dashb
```

Sample output:

```
| Id | Name | Description | Tags |
| --------- | ------------------- | -------------------------------------- | --------------------------------- |
| streamlit | Streamlit dashboard | Run a Streamlit real-time dashboard | Medium, QuixStreams, Destination, |
| | | that displays data from a Kafka topic. | Streamlit |
```

!!! tip
Use the search option to quickly find relevant items by name or description.

### Filtering by Tags

To filter library items by tag, such as `Easy`:

```bash
$ quix app lib --tags Easy
```

Sample output:

```
| Id | Name | Description | Tags |
| ----------------------- | --------------- | ------------------------ | --------------------------------------- |
| nodejs-starter-template | Sample template | A template for Quix Code | Easy, Basic templates, Samples, Node.js |
| | | applications | |
```

!!! tip "Create a New App"
To create a new app from a library item, run:

```bash
quix app add [library-item-id]
```
4 changes: 2 additions & 2 deletions docs/cli-reference/apps/list.gen.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,6 @@ quix apps list [options]

**Options:**

- `-o, --output <json|table>` : Output type of the retrieved data
- `-d, --directory <directory>` : Base directory (defaults to current directory)
- `-o, --output <json|table>`: Output type of the retrieved data
- `-d, --directory <directory>`: Base directory (defaults to current directory)

12 changes: 6 additions & 6 deletions docs/cli-reference/apps/update.gen.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,10 @@ quix apps update [options]

**Options:**

- `-a, --all` : Forces the update of all applications regardless of the current directory
- `--workspace-id <workspace-id>` : The environment to use if your SDK broker configuration is set to Quix Cloud
- `--env-file-name <env-file-name>` : Set the name of the environment file [default: .env]
- `--directory <directory>` : Base directory (defaults to current directory)
- `--reset` : Removes all the values of existing env variables and adds them from the 'quix.yaml' file [default: False]
- `--only-new` : Add only the missing variables in the '.env' file [default: False]
- `-a, --all`: Forces the update of all applications regardless of the current directory
- `--workspace-id <workspace-id>`: The environment to use if your SDK broker configuration is set to Quix Cloud
- `--env-file-name <env-file-name>`: Set the name of the environment file [default: .env]
- `--directory <directory>`: Base directory (defaults to current directory)
- `--reset`: Removes all the values of existing env variables and adds them from the 'quix.yaml' file [default: False]
- `--only-new`: Add only the missing variables in the '.env' file [default: False]

Loading

0 comments on commit f884558

Please sign in to comment.