Conduit's CLI is a multipurpose tool that's meant to facilitate your development experience and speed up your work regardless of whether you're deploying a Conduit instance for your project, developing custom modules or even contributing to the upstream project in your spare time.
If you treat it right, it's gonna deploy local instances of Conduit for you, provide API client library generation for your frontend team, generate some TypeScript code for your custom modules and even handle your laundry... nah, wait I thought we were not actually releasing this one until the next release, right?
Anyway, point is, if you're already using Conduit for your projects or simply intend to give it a ride for the first time, you're most likely going to want to use this.
While the use of Docker is not required for every single piece of functionality provided, for most typical use cases
you're going to need Docker installed and configured so that your user is capable
of utilizing it without superuser privileges.
For Linux users, this usually means adding your user to the docker
group.
You're also going to need some form of support for docker compose.
Conduit's CLI supports both v2 and v1. The former comes pre-installed with the latest versions of Docker Desktop.
While the CLI is capable of bootstrapping any Conduit release, including legacy ones,
generateSchema
and generateClient
commands currently require that you target >= v0.14.5.
$ npm install -g @conduitplatform/cli
$ conduit COMMAND
running command...
$ conduit (--version|-v)
@conduitplatform/cli/0.0.7 linux-x64 node-v16.15.0
$ conduit --help [COMMAND]
USAGE
$ conduit COMMAND
...
conduit deploy rm
conduit deploy setup
conduit deploy start
conduit deploy stop
conduit deploy update
conduit generateClient graphql
conduit generateClient rest
conduit generateSchema [PATH]
conduit help [COMMAND]
conduit init
Remove your local Conduit deployment
USAGE
$ conduit deploy rm [--wipe-data] [--defaults]
FLAGS
--defaults Select default values
--wipe-data Wipe data volumes
DESCRIPTION
Remove your local Conduit deployment
Bootstrap a local Conduit deployment
USAGE
$ conduit deploy setup [--config] [--target <value>]
FLAGS
--config Enable manual deployment configuration
--target=<value> Specify target tag
DESCRIPTION
Bootstrap a local Conduit deployment
Bring up your local Conduit deployment
USAGE
$ conduit deploy start
DESCRIPTION
Bring up your local Conduit deployment
Bring down your local Conduit deployment
USAGE
$ conduit deploy stop
DESCRIPTION
Bring down your local Conduit deployment
Update your local Conduit deployment
USAGE
$ conduit deploy update [--config] [--target <value>]
FLAGS
--config Enable manual deployment configuration
--target=<value> Specify target tag
DESCRIPTION
Update your local Conduit deployment
Generate client libraries for your Conduit GraphQL APIs
USAGE
$ conduit generateClient graphql [-t <value>] [-p <value>]
FLAGS
-p, --output-path=<value> Path to store archived library in
-t, --client-type=<value> The client type to generate a library for
DESCRIPTION
Generate client libraries for your Conduit GraphQL APIs
Generate client libraries for your Conduit REST APIs
USAGE
$ conduit generateClient rest [-t <value>] [-p <value>]
FLAGS
-p, --output-path=<value> Path to store archived library in
-t, --client-type=<value> The client type to generate a library for
DESCRIPTION
Generate client libraries for your Conduit REST APIs
Generate Schema TS files for registered Conduit schemas
USAGE
$ conduit generateSchema [PATH]
DESCRIPTION
Generate Schema TS files for registered Conduit schemas
EXAMPLES
$ conduit generate-schema
...
Generating schemas
See code: src/commands/generateSchema.ts
Display help for conduit.
USAGE
$ conduit 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 conduit.
See code: @oclif/plugin-help
Initialize the CLI to communicate with Conduit
USAGE
$ conduit init [-r]
FLAGS
-r, --relogin Reuses API urls and master key from existing configuration
DESCRIPTION
Initialize the CLI to communicate with Conduit
EXAMPLES
$ conduit init
...
Attempting login
Login Successful!
See code: src/commands/init.ts
- Support more operations (ex. boilerplate code generation)
- Change generator functions to use a proper engine
- Support more languages for code generation