@asyncapi/modelina-cli v5.3.0
NOTICE: If you are only working exclusively with AsyncAPI documents, using the AsyncAPI CLI is the preferred way to interact with Modelina as it has the exact same features.
Table of contents
- Table of contents
- Installation
- Download latest release
- Install it
- Download latest release
- Install it
- Download
- Install
- Download
- Install
- Usage
- Commands
Installation
Here are all the ways you can install and run the Modelina CLI.
MacOS
brew install modelinaInstall it through dedicated .pkg file as a MacOS Application
# Download latest release
curl -OL https://github.com/asyncapi/modelina/releases/latest/download/modelina.x64.pkg
# Install it
sudo installer -pkg modelina.pkg -target /Install it through dedicated .pkg file as a MacOS Application for arm64
# Download latest release
curl -OL https://github.com/asyncapi/modelina/releases/latest/download/modelina.arm64.pkg
# Install it
sudo installer -pkg modelina.pkg -target /Windows
choco install modelinaManually download and run modelina.x64.exe
Manually download and run the executable modelina.x86.exe
Linux
# Download
curl -OL https://github.com/asyncapi/modelina/releases/latest/download/modelina.deb
# Install
sudo apt install ./modelina.deb# Download
curl -OL https://github.com/asyncapi/modelina/releases/latest/download/modelina.tar.gz
# Install
tar -xzf modelina.tar.gzRemember to symlink the binaries ln -s <absolute-path>/bin/modelina /user/local/bin/modelina to access the CLI anywhere.
Others
npm install -g @asyncapi/modelina-cliUsage
$ npm install -g @asyncapi/modelina-cli
$ modelina COMMAND
running command...
$ modelina (--version)
@asyncapi/modelina-cli/5.3.0 linux-x64 node-v18.20.8
$ modelina --help [COMMAND]
USAGE
$ modelina COMMAND
...Commands
modelina autocomplete [SHELL]modelina configmodelina config contextmodelina config context add CONTEXT-NAME SPEC-FILE-PATHmodelina config context currentmodelina config context edit CONTEXT-NAME NEW-SPEC-FILE-PATHmodelina config context init [CONTEXT-FILE-PATH]modelina config context listmodelina config context remove CONTEXT-NAMEmodelina config context use CONTEXT-NAMEmodelina generate LANGUAGE FILEmodelina help [COMMAND]modelina pluginsmodelina plugins add PLUGINmodelina plugins:inspect PLUGIN...modelina plugins install PLUGINmodelina plugins link PATHmodelina plugins remove [PLUGIN]modelina plugins resetmodelina plugins uninstall [PLUGIN]modelina plugins unlink [PLUGIN]modelina plugins updatemodelina version
modelina autocomplete [SHELL]
Display autocomplete installation instructions.
USAGE
$ modelina autocomplete [SHELL] [-r]
ARGUMENTS
SHELL (zsh|bash|powershell) Shell type
FLAGS
-r, --refresh-cache Refresh cache (ignores displaying instructions)
DESCRIPTION
Display autocomplete installation instructions.
EXAMPLES
$ modelina autocomplete
$ modelina autocomplete bash
$ modelina autocomplete zsh
$ modelina autocomplete powershell
$ modelina autocomplete --refresh-cacheSee code: @oclif/plugin-autocomplete
modelina config
CLI config settings
USAGE
$ modelina config
DESCRIPTION
CLI config settingsSee code: src/commands/config/index.ts
modelina config context
Manage short aliases for full paths to inputs
USAGE
$ modelina config context
DESCRIPTION
Manage short aliases for full paths to inputsSee code: src/commands/config/context/index.ts
modelina config context add CONTEXT-NAME SPEC-FILE-PATH
Add a context to the store
USAGE
$ modelina config context add CONTEXT-NAME SPEC-FILE-PATH [-h] [-s]
ARGUMENTS
CONTEXT-NAME context name
SPEC-FILE-PATH file path of the spec file
FLAGS
-h, --help Show CLI help.
-s, --set-current Set context being added as the current context
DESCRIPTION
Add a context to the storeSee code: src/commands/config/context/add.ts
modelina config context current
Shows the current context that is being used
USAGE
$ modelina config context current [-h]
FLAGS
-h, --help Show CLI help.
DESCRIPTION
Shows the current context that is being usedSee code: src/commands/config/context/current.ts
modelina config context edit CONTEXT-NAME NEW-SPEC-FILE-PATH
Edit a context in the store
USAGE
$ modelina config context edit CONTEXT-NAME NEW-SPEC-FILE-PATH [-h]
ARGUMENTS
CONTEXT-NAME context name
NEW-SPEC-FILE-PATH file path of the spec file
FLAGS
-h, --help Show CLI help.
DESCRIPTION
Edit a context in the storeSee code: src/commands/config/context/edit.ts
modelina config context init [CONTEXT-FILE-PATH]
Initialize context
USAGE
$ modelina config context init [CONTEXT-FILE-PATH] [-h]
ARGUMENTS
CONTEXT-FILE-PATH Specify directory in which context file should be created:
- current directory : modelina config context init . (default)
- root of current repository : modelina config context init ./
- user's home directory : modelina config context init ~
FLAGS
-h, --help Show CLI help.
DESCRIPTION
Initialize contextSee code: src/commands/config/context/init.ts
modelina config context list
List all the stored contexts in the store
USAGE
$ modelina config context list [-h]
FLAGS
-h, --help Show CLI help.
DESCRIPTION
List all the stored contexts in the storeSee code: src/commands/config/context/list.ts
modelina config context remove CONTEXT-NAME
Delete a context from the store
USAGE
$ modelina config context remove CONTEXT-NAME [-h]
ARGUMENTS
CONTEXT-NAME Name of the context to delete
FLAGS
-h, --help Show CLI help.
DESCRIPTION
Delete a context from the storeSee code: src/commands/config/context/remove.ts
modelina config context use CONTEXT-NAME
Set a context as current
USAGE
$ modelina config context use CONTEXT-NAME [-h]
ARGUMENTS
CONTEXT-NAME name of the saved context
FLAGS
-h, --help Show CLI help.
DESCRIPTION
Set a context as currentSee code: src/commands/config/context/use.ts
modelina generate LANGUAGE FILE
Generates typed models
USAGE
$ modelina generate LANGUAGE FILE [-h] [-o <value>] [--packageName <value>] [--namespace <value>]
[--tsModelType class|interface] [--tsEnumType enum|union] [--tsModuleSystem ESM|CJS] [--tsIncludeComments]
[--tsExportType default|named] [--tsJsonBinPack] [--tsMarshalling] [--tsExampleInstance] [--tsRawPropertyNames]
[--csharpAutoImplement] [--csharpNewtonsoft] [--csharpArrayType Array|List] [--csharpHashcode] [--csharpEqual]
[--csharpSystemJson] [--goIncludeComments] [--goIncludeTags] [--javaIncludeComments] [--javaJackson]
[--javaConstraints] [--javaArrayType Array|List] [--pyDantic]
ARGUMENTS
LANGUAGE (typescript|csharp|golang|java|javascript|dart|python|rust|kotlin|php|cplusplus|scala) The language you want
the typed models generated for.
FILE Path or URL to the AsyncAPI document, or context-name
FLAGS
-h, --help Show CLI help.
-o, --output=<value> The output directory where the models should be written to. Omitting this flag will
write the models to `stdout`.
--csharpArrayType=<option> [default: Array] C# specific, define which type of array needs to be generated.
<options: Array|List>
--csharpAutoImplement C# specific, define whether to generate auto-implemented properties or not.
--csharpEqual C# specific, generate the models with the Equal method overwritten
--csharpHashcode C# specific, generate the models with the GetHashCode method overwritten
--csharpNewtonsoft C# specific, generate the models with newtonsoft serialization support
--csharpSystemJson C# specific, generate the models with System.Text.Json serialization support
--goIncludeComments Golang specific, if enabled add comments while generating models.
--goIncludeTags Golang specific, if enabled add tags while generating models.
--javaArrayType=<option> [default: Array] Java specific, define which type of array needs to be generated.
<options: Array|List>
--javaConstraints Java specific, generate the models with constraints
--javaIncludeComments Java specific, if enabled add comments while generating models.
--javaJackson Java specific, generate the models with Jackson serialization support
--namespace=<value> C#, C++ and PHP specific, define the namespace to use for the generated models. This
is required when language is `csharp`,`c++` or `php`.
--packageName=<value> Go, Java and Kotlin specific, define the package to use for the generated models. This
is required when language is `go`, `java` or `kotlin`.
--pyDantic Python specific, generate the Pydantic models.
--tsEnumType=<option> [default: enum] TypeScript specific, define which type of enums needs to be generated.
<options: enum|union>
--tsExampleInstance Typescript specific, generate example of the model.
--tsExportType=<option> [default: default] TypeScript specific, define which type of export needs to be
generated.
<options: default|named>
--tsIncludeComments TypeScript specific, if enabled add comments while generating models.
--tsJsonBinPack TypeScript specific, define basic support for serializing to and from binary with
jsonbinpack.
--tsMarshalling TypeScript specific, generate the models with marshalling functions.
--tsModelType=<option> [default: class] TypeScript specific, define which type of model needs to be
generated.
<options: class|interface>
--tsModuleSystem=<option> [default: ESM] TypeScript specific, define the module system to be used.
<options: ESM|CJS>
--tsRawPropertyNames Typescript specific, generate the models using raw property names.
DESCRIPTION
Generates typed modelsSee code: src/commands/generate.ts
modelina help [COMMAND]
Display help for modelina.
USAGE
$ modelina help [COMMAND...] [-n]
ARGUMENTS
COMMAND... Command to show help for.
FLAGS
-n, --nested-commands Include all nested commands in the output.
DESCRIPTION
Display help for modelina.See code: @oclif/plugin-help
modelina plugins
List installed plugins.
USAGE
$ modelina plugins [--json] [--core]
FLAGS
--core Show core plugins.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
List installed plugins.
EXAMPLES
$ modelina pluginsSee code: @oclif/plugin-plugins
modelina plugins add PLUGIN
Installs a plugin into modelina.
USAGE
$ modelina plugins add PLUGIN... [--json] [-f] [-h] [-s | -v]
ARGUMENTS
PLUGIN... Plugin to install.
FLAGS
-f, --force Force npm to fetch remote resources even if a local copy exists on disk.
-h, --help Show CLI help.
-s, --silent Silences npm output.
-v, --verbose Show verbose npm output.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Installs a plugin into modelina.
Uses bundled npm executable to install plugins into /home/runner/.local/share/@asyncapi/modelina-cli
Installation of a user-installed plugin will override a core plugin.
Use the MODELINA_NPM_LOG_LEVEL environment variable to set the npm loglevel.
Use the MODELINA_NPM_REGISTRY environment variable to set the npm registry.
ALIASES
$ modelina plugins add
EXAMPLES
Install a plugin from npm registry.
$ modelina plugins add myplugin
Install a plugin from a github url.
$ modelina plugins add https://github.com/someuser/someplugin
Install a plugin from a github slug.
$ modelina plugins add someuser/somepluginmodelina plugins:inspect PLUGIN...
Displays installation properties of a plugin.
USAGE
$ modelina plugins inspect PLUGIN...
ARGUMENTS
PLUGIN... [default: .] Plugin to inspect.
FLAGS
-h, --help Show CLI help.
-v, --verbose
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Displays installation properties of a plugin.
EXAMPLES
$ modelina plugins inspect mypluginSee code: @oclif/plugin-plugins
modelina plugins install PLUGIN
Installs a plugin into modelina.
USAGE
$ modelina plugins install PLUGIN... [--json] [-f] [-h] [-s | -v]
ARGUMENTS
PLUGIN... Plugin to install.
FLAGS
-f, --force Force npm to fetch remote resources even if a local copy exists on disk.
-h, --help Show CLI help.
-s, --silent Silences npm output.
-v, --verbose Show verbose npm output.
GLOBAL FLAGS
--json Format output as json.
DESCRIPTION
Installs a plugin into modelina.
Uses bundled npm executable to install plugins into /home/runner/.local/share/@asyncapi/modelina-cli
Installation of a user-installed plugin will override a core plugin.
Use the MODELINA_NPM_LOG_LEVEL environment variable to set the npm loglevel.
Use the MODELINA_NPM_REGISTRY environment variable to set the npm registry.
ALIASES
$ modelina plugins add
EXAMPLES
Install a plugin from npm registry.
$ modelina plugins install myplugin
Install a plugin from a github url.
$ modelina plugins install https://github.com/someuser/someplugin
Install a plugin from a github slug.
$ modelina plugins install someuser/somepluginSee code: @oclif/plugin-plugins
modelina plugins link PATH
Links a plugin into the CLI for development.
USAGE
$ modelina plugins link PATH [-h] [--install] [-v]
ARGUMENTS
PATH [default: .] path to plugin
FLAGS
-h, --help Show CLI help.
-v, --verbose
--[no-]install Install dependencies after linking the plugin.
DESCRIPTION
Links a plugin into the CLI for development.
Installation of a linked plugin will override a user-installed or core plugin.
e.g. If you have a user-installed or core plugin that has a 'hello' command, installing a linked plugin with a 'hello'
command will override the user-installed or core plugin implementation. This is useful for development work.
EXAMPLES
$ modelina plugins link mypluginSee code: @oclif/plugin-plugins
modelina plugins remove [PLUGIN]
Removes a plugin from the CLI.
USAGE
$ modelina plugins remove [PLUGIN...] [-h] [-v]
ARGUMENTS
PLUGIN... plugin to uninstall
FLAGS
-h, --help Show CLI help.
-v, --verbose
DESCRIPTION
Removes a plugin from the CLI.
ALIASES
$ modelina plugins unlink
$ modelina plugins remove
EXAMPLES
$ modelina plugins remove mypluginmodelina plugins reset
Remove all user-installed and linked plugins.
USAGE
$ modelina plugins reset [--hard] [--reinstall]
FLAGS
--hard Delete node_modules and package manager related files in addition to uninstalling plugins.
--reinstall Reinstall all plugins after uninstalling.See code: @oclif/plugin-plugins
modelina plugins uninstall [PLUGIN]
Removes a plugin from the CLI.
USAGE
$ modelina plugins uninstall [PLUGIN...] [-h] [-v]
ARGUMENTS
PLUGIN... plugin to uninstall
FLAGS
-h, --help Show CLI help.
-v, --verbose
DESCRIPTION
Removes a plugin from the CLI.
ALIASES
$ modelina plugins unlink
$ modelina plugins remove
EXAMPLES
$ modelina plugins uninstall mypluginSee code: @oclif/plugin-plugins
modelina plugins unlink [PLUGIN]
Removes a plugin from the CLI.
USAGE
$ modelina plugins unlink [PLUGIN...] [-h] [-v]
ARGUMENTS
PLUGIN... plugin to uninstall
FLAGS
-h, --help Show CLI help.
-v, --verbose
DESCRIPTION
Removes a plugin from the CLI.
ALIASES
$ modelina plugins unlink
$ modelina plugins remove
EXAMPLES
$ modelina plugins unlink mypluginmodelina plugins update
Update installed plugins.
USAGE
$ modelina plugins update [-h] [-v]
FLAGS
-h, --help Show CLI help.
-v, --verbose
DESCRIPTION
Update installed plugins.See code: @oclif/plugin-plugins
modelina version
USAGE
$ modelina version [--json] [--verbose]
FLAGS
--verbose Show additional information about the CLI.
GLOBAL FLAGS
--json Format output as json.
FLAG DESCRIPTIONS
--verbose Show additional information about the CLI.
Additionally shows the architecture, node version, operating system, and versions of plugins that the CLI is using.See code: @oclif/plugin-version
1 year ago
10 months ago
11 months ago
11 months ago
1 year ago
11 months ago
11 months ago
1 year ago
11 months ago
11 months ago
1 year ago
1 year ago
1 year ago
12 months ago
1 year ago
10 months ago
10 months ago
10 months ago
10 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
11 months ago
1 year ago
1 year ago
1 year ago
11 months ago
1 year ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
