Rispa CLI
ris
is the Rispa CLI command line utility that allows to set up project structure, manage plugins, run generators.
- Getting Started – How to use.
- Features – About features.
Rispa CLI works on macOS, Windows, and Linux.
Getting Started
Installation
Install it once globally:
yarn global add @rispa/cli
or
npm install -g @rispa/cli
You will need to have Node >= 7.10 on your machine.
Creating project
To create project, run:
ris new project-name
cd project-name
It will create a directory called project-name
inside the current folder.
Inside that directory, it will generate the initial project structure and install the selected plugins:
project-name/
rispa.json
lerna.json
package.json
.gitignore
.editorconfig
.travis.yml
packages/
...selected-plugins
rispa.json
is an entry point of RISPA project, it contains information about current project.
Options
Development mode
To create project in development mode, run:
ris new --mode=dev
Project will be generated without Subtree usage.
Managing plugins
ris add
To add plugins, run inside project directory:
ris add rispa-eslint-config
It will add plugin with name rispa-eslint-config
to current project.
If you want to browse and select plugins to install, run:
ris add
It will display available plugins. Press space
to select plugins for installation, then press enter
to install selected plugins.
If you want to add plugin via git
url, run:
ris add git:https://github.com/rispa-io/rispa-core.git
It will add rispa-core
plugin via git url to current project.
ris update
To update installed plugins, run inside project directory:
ris update
It will pull changes to all installed plugins in current project.
Pulling changes works through the git
interface.
ris remove
To remove a plugin, run inside project directory:
ris remove plugin-name
It will remove plugins-name
plugin from current project.
Plugin removal is an unsafe operation,
because, it doesn't make changes to the client code
and requires corrections by user.
ris assemble
To assemble plugins, run inside project directory:
ris assemble
It will install not installed plugins from rispa.json
.
Launch plugin script
ris run
or ris
To launch plugin script, run inside project directory:
ris run @rispa/core lint
It will launch script lint
in @rispa/core
plugin.
ris run all
or ris all
To launch script for all plugins, run inside project directory:
ris run all lint
It will launch script lint
for all installed plugins.
Options
Yarn
To force or disable usage of Yarn, use --yarn
:
ris run all lint --yarn=true
Skip
To skip plugins, use --skip
:
ris run all lint --skip=@rispa/ui-kit,feature-plugin
Launch generator
ris g
To launch plugin generator, run inside project directory:
ris g core generator-name
It will launch generator-name
generator of core
package in current project.
Commit
ris commit
To commit project or plugins changes, run inside project directory:
ris commit
It will collect project changes and ask you to enter commit message. The commit will be pushed to the current branch.
Numerate
ris numerate
To numerate project changes, run inside project directory:
ris numerate
It will scan project tags and display available versions.
Features
Run local version
If you launched the globally installed CLI and there will be local version found, the call will be redirected to the local version.
Subtree
We use Subtree merge strategy for plugins.
Structure
Generated project based on Lerna monorepo structure.
Plugins
Plugins are a part of monorepo modules, they extend the project functionality.
@rispa/core - is an entry point for all plugins, providing enhancements and correct initialization of connected plugins.
List of available plugins can be seen here.
Configuration
To see the full details of an error, run CLI with ENV:
DEBUG=rispa:* ris new