quoti-cli
v1.4.1
Published
A Quoti Extensions CLI
Readme
Quoti CLI
A powerful CLI tool for creating, developing, and managing Quoti Extensions with support for Vue and React frameworks.
Overview
Quoti CLI (qt) is a command-line interface tool designed to streamline the development of extensions for the Quoti platform. It provides a comprehensive set of commands to create, develop, test, and deploy your extensions easily.
Key Features
- Multi-Framework Support: Create extensions using Vue or React frameworks
- Seamless Development: Live development with hot reloading
- Easy Deployment: Simple commands for deploying to Quoti environments
- Database Integration: Tools for model creation and field type synchronization
- Marketplace Publishing: Publish your extensions to the Quoti Marketplace
Installation
$ npm install -g quoti-cliUsage
$ npm install -g quoti-cli
$ qt COMMAND
running command...
$ qt (--version)
quoti-cli/1.4.1 darwin-arm64 node-v22.17.1
$ qt --help [COMMAND]
USAGE
$ qt COMMAND
...Commands
qt autocomplete [SHELL]qt create [EXTENSIONDIRECTORY]qt d [ENTRYPOINTPATH]qt db:create [MODELSDIRECTORY]qt db:syncFieldTypesqt deploy [ENTRYPOINTPATH]qt dev [ENTRYPOINTPATH]qt download-current-version [FILEPATH]qt help [COMMANDS]qt initqt l [ENTRYPOINTPATH]qt link [ENTRYPOINTPATH]qt link-extension [ENTRYPOINTPATH]qt loginqt logoutqt p [ENTRYPOINTPATH]qt publish [ENTRYPOINTPATH]qt s [ENTRYPOINTPATH]qt serve [ENTRYPOINTPATH]
qt autocomplete [SHELL]
display autocomplete installation instructions
USAGE
$ qt autocomplete [SHELL] [-r]
ARGUMENTS
[SHELL] shell type
FLAGS
-r, --refresh-cache Refresh cache (ignores displaying instructions)
DESCRIPTION
display autocomplete installation instructions
EXAMPLES
$ qt autocomplete
$ qt autocomplete bash
$ qt autocomplete zsh
$ qt autocomplete --refresh-cacheSee code: @oclif/plugin-autocomplete
qt create [EXTENSIONDIRECTORY]
Cria uma extensão vue para seu projeto
USAGE
$ qt create [EXTENSIONDIRECTORY]
ARGUMENTS
[EXTENSIONDIRECTORY] Nome do diretório para a extensão (opcional). Se não fornecido, será derivado do nome da
extensão escolhido no prompt. A extensão será criada em ./src/pages/nome-do-diretorio.
DESCRIPTION
Cria uma extensão vue para seu projetoSee code: src/commands/create.js
qt d [ENTRYPOINTPATH]
Realiza deploy da sua extensão para o Quoti
USAGE
$ qt d [ENTRYPOINTPATH] [-a | ] [-av | ] [--org <value>]
ARGUMENTS
[ENTRYPOINTPATH] Endereço do entry point (arquivo principal) da extensão
FLAGS
-a, --all Realiza deploy de todas as extensões presente na propriedade quoti do package.json
-a, --ask-version Permite selecionar uma versão para o deploy quando a flag --all for passada também. Por padrão, um
timestamp será usado para identificar a versão.
--org=<value> Slug da organização
DESCRIPTION
Realiza deploy da sua extensão para o Quoti
ALIASES
$ qt dqt db:create [MODELSDIRECTORY]
Cria todos os modelos presentes na pasta especificada pelo arg modelDirectory
USAGE
$ qt db:create [MODELSDIRECTORY]
ARGUMENTS
[MODELSDIRECTORY] [default: ./src/models] Endereço onde será salvo sua extensão. (Endereço relativo a pasta
./src/pages. Caso ./src/pages não exista o endereço fica relativo a raiz do projeto)
DESCRIPTION
Cria todos os modelos presentes na pasta especificada pelo arg modelDirectorySee code: src/commands/db/create.js
qt db:syncFieldTypes
Sincroniza os tipos de campos disponíveis para databases presentes na organização
USAGE
$ qt db:syncFieldTypes
DESCRIPTION
Sincroniza os tipos de campos disponíveis para databases presentes na organizaçãoSee code: src/commands/db/syncFieldTypes.js
qt deploy [ENTRYPOINTPATH]
Realiza deploy da sua extensão para o Quoti
USAGE
$ qt deploy [ENTRYPOINTPATH] [-a | ] [-av | ] [--org <value>]
ARGUMENTS
[ENTRYPOINTPATH] Endereço do entry point (arquivo principal) da extensão
FLAGS
-a, --all Realiza deploy de todas as extensões presente na propriedade quoti do package.json
-a, --ask-version Permite selecionar uma versão para o deploy quando a flag --all for passada também. Por padrão, um
timestamp será usado para identificar a versão.
--org=<value> Slug da organização
DESCRIPTION
Realiza deploy da sua extensão para o Quoti
ALIASES
$ qt dSee code: src/commands/deploy.js
qt dev [ENTRYPOINTPATH]
Observa mudanças no código local e as envia para o ambiente de desenvolvimento do Quoti
USAGE
$ qt dev [ENTRYPOINTPATH] [--deploy-develop] [--new-session] [--org <value>]
ARGUMENTS
[ENTRYPOINTPATH] Endereço do entry point (arquivo principal) da extensão
FLAGS
--deploy-develop Indica se devemos salvar o build da extensão de develop no banco de dados da Beyond Company
--new-session Força a criação de um novo devSessionId
--org=<value> Slug da organização
DESCRIPTION
Observa mudanças no código local e as envia para o ambiente de desenvolvimento do Quoti
ALIASES
$ qt s
$ qt devqt download-current-version [FILEPATH]
Baixa a versão da extensão ativa
USAGE
$ qt download-current-version [FILEPATH]
ARGUMENTS
[FILEPATH] [default: ./src/index.vue] Download current version
DESCRIPTION
Baixa a versão da extensão ativa
...See code: src/commands/download-current-version.js
qt help [COMMANDS]
Display help for qt.
USAGE
$ qt help [COMMANDS...] [-n]
ARGUMENTS
[COMMANDS...] Command to show help for.
FLAGS
-n, --nested-commands Include all nested commands in the output.
DESCRIPTION
Display help for qt.See code: @oclif/plugin-help
qt init
Inicializa um projeto Vue para uma ou mais extensões do Quoti
USAGE
$ qt init
DESCRIPTION
Inicializa um projeto Vue para uma ou mais extensões do QuotiSee code: src/commands/init.js
qt l [ENTRYPOINTPATH]
Faça um link de uma extensão no Quoti com o seu código
USAGE
$ qt l [ENTRYPOINTPATH] [-b] [--org <value>]
ARGUMENTS
[ENTRYPOINTPATH] Endereço do entry point (arquivo principal) da extensão
FLAGS
-b, --[no-]build Use (--build|-b) se você está selecionando uma extensão com build ou use --no-build se você está
selecionando uma extensão sem build
--org=<value> Slug da organização
DESCRIPTION
Faça um link de uma extensão no Quoti com o seu código
ALIASES
$ qt l
$ qt link-extension
$ qt linkqt link [ENTRYPOINTPATH]
Faça um link de uma extensão no Quoti com o seu código
USAGE
$ qt link [ENTRYPOINTPATH] [-b] [--org <value>]
ARGUMENTS
[ENTRYPOINTPATH] Endereço do entry point (arquivo principal) da extensão
FLAGS
-b, --[no-]build Use (--build|-b) se você está selecionando uma extensão com build ou use --no-build se você está
selecionando uma extensão sem build
--org=<value> Slug da organização
DESCRIPTION
Faça um link de uma extensão no Quoti com o seu código
ALIASES
$ qt l
$ qt link-extension
$ qt linkSee code: src/commands/link.js
qt link-extension [ENTRYPOINTPATH]
Faça um link de uma extensão no Quoti com o seu código
USAGE
$ qt link-extension [ENTRYPOINTPATH] [-b] [--org <value>]
ARGUMENTS
[ENTRYPOINTPATH] Endereço do entry point (arquivo principal) da extensão
FLAGS
-b, --[no-]build Use (--build|-b) se você está selecionando uma extensão com build ou use --no-build se você está
selecionando uma extensão sem build
--org=<value> Slug da organização
DESCRIPTION
Faça um link de uma extensão no Quoti com o seu código
ALIASES
$ qt l
$ qt link-extension
$ qt linkqt login
Realiza login em uma organização do Quoti
USAGE
$ qt login [-f] [--org <value>] [--local]
FLAGS
-f, --force Força o login em uma nova conta
--local Utiliza credenciais locais (relativas ao diretório atual)
--org=<value> Slug da organização (multipla autenticação)
DESCRIPTION
Realiza login em uma organização do QuotiSee code: src/commands/login.js
qt logout
Logout from the current organization
USAGE
$ qt logout
DESCRIPTION
Logout from the current organizationSee code: src/commands/logout.js
qt p [ENTRYPOINTPATH]
Publica uma nova extensão ou atualiza uma extensão já publicada no Marketplace
USAGE
$ qt p [ENTRYPOINTPATH] [--org <value>] [-v <value>] [-p] [-m] [-M] [--orgs-to-update] [--project
<value>]
ARGUMENTS
[ENTRYPOINTPATH] Endereço do entry point (arquivo principal) da extensão
FLAGS
-M, --major x.x.x -> x+1.x.x
-m, --minor x.x.x -> x.x+1.x
-p, --patch x.x.x -> x.x.x+1
-v, --version=<value> Versão da extensão
--org=<value> Slug da organização
--orgs-to-update Publique e instale a extensão apenas em organizações específicas. Ideal para versões em
homologação
--project=<value> Publique e instale a extensão em orgs de um projeto. Ideal para versões em homologação. Por
enquanto, o único valor permitido é "legis-erp"
DESCRIPTION
Publica uma nova extensão ou atualiza uma extensão já publicada no Marketplace
ALIASES
$ qt pqt publish [ENTRYPOINTPATH]
Publica uma nova extensão ou atualiza uma extensão já publicada no Marketplace
USAGE
$ qt publish [ENTRYPOINTPATH] [--org <value>] [-v <value>] [-p] [-m] [-M] [--orgs-to-update] [--project
<value>]
ARGUMENTS
[ENTRYPOINTPATH] Endereço do entry point (arquivo principal) da extensão
FLAGS
-M, --major x.x.x -> x+1.x.x
-m, --minor x.x.x -> x.x+1.x
-p, --patch x.x.x -> x.x.x+1
-v, --version=<value> Versão da extensão
--org=<value> Slug da organização
--orgs-to-update Publique e instale a extensão apenas em organizações específicas. Ideal para versões em
homologação
--project=<value> Publique e instale a extensão em orgs de um projeto. Ideal para versões em homologação. Por
enquanto, o único valor permitido é "legis-erp"
DESCRIPTION
Publica uma nova extensão ou atualiza uma extensão já publicada no Marketplace
ALIASES
$ qt pSee code: src/commands/publish.js
qt s [ENTRYPOINTPATH]
Observa mudanças no código local e as envia para o ambiente de desenvolvimento do Quoti
USAGE
$ qt s [ENTRYPOINTPATH] [--deploy-develop] [--new-session] [--org <value>]
ARGUMENTS
[ENTRYPOINTPATH] Endereço do entry point (arquivo principal) da extensão
FLAGS
--deploy-develop Indica se devemos salvar o build da extensão de develop no banco de dados da Beyond Company
--new-session Força a criação de um novo devSessionId
--org=<value> Slug da organização
DESCRIPTION
Observa mudanças no código local e as envia para o ambiente de desenvolvimento do Quoti
ALIASES
$ qt s
$ qt devqt serve [ENTRYPOINTPATH]
Observa mudanças no código local e as envia para o ambiente de desenvolvimento do Quoti
USAGE
$ qt serve [ENTRYPOINTPATH] [--deploy-develop] [--new-session] [--org <value>]
ARGUMENTS
[ENTRYPOINTPATH] Endereço do entry point (arquivo principal) da extensão
FLAGS
--deploy-develop Indica se devemos salvar o build da extensão de develop no banco de dados da Beyond Company
--new-session Força a criação de um novo devSessionId
--org=<value> Slug da organização
DESCRIPTION
Observa mudanças no código local e as envia para o ambiente de desenvolvimento do Quoti
ALIASES
$ qt s
$ qt devSee code: src/commands/serve.js
Getting Started
Create a New Project
To start a new Quoti extension project:
$ qt initFollow the prompts to set up your project. You can choose between Vue and React frameworks.
Create an Extension
Create a new extension using either Vue or React:
# Create a Vue extension (default)
$ qt create my-extension
# Create a React extension
$ qt create my-extension --framework=reactDevelopment
During development, you can use the serve command to automatically update your extension in the Quoti development environment:
$ qt serve src/pages/my-extension/App.vue # For Vue
$ qt serve src/pages/my-extension/App.jsx # For ReactDeployment
When you're ready to deploy your extension:
$ qt deploy src/pages/my-extension/App.vue # For Vue
$ qt deploy src/pages/my-extension/App.jsx # For ReactPublishing to Marketplace
To make your extension available in the Quoti Marketplace:
$ qt publish src/pages/my-extension/App.vue -m # Increment minor versionProject Configuration
You can configure multiple extensions in your package.json file:
{
"quoti": {
"extensions": [
"src/pages/extension1/App.vue",
"src/pages/extension2/App.jsx"
]
}
}This allows you to deploy all extensions at once using the --all flag:
$ qt deploy --allAdditional Resources
License
MIT
