Beyond just initializing a project and building datafiles, Featurevisor CLI can be used for a few more purposes.
$ npm install -g @featurevisor/cli
npx to run the CLI without installing it:
$ npx @featurevisor/cli <command>
Rest of the documentation assumes that you have installed the CLI globally.
Initializing a project
Scaffold a new project in your working directory:
$ mkdir my-project && cd my-project
$ featurevisor init
If you wish to initialize a specific example as available in the monorepo:
$ featurevisor init --example <name>
Learn more in Quick start.
Check if the YAML files have any syntax or structural errors:
$ featurevisor lint
Lear more in Linting.
Generate JSON files on a per environment and tag combination as exists in project configuration:
$ featurevisor build
Learn more in Building datafiles.
Test your features and segments:
$ featurevisor test
Learn more in Testing.
Restore state files
Building datafiles also generates state files.
To restore them to last known state in Git, run:
$ featurevisor restore
Generate static site
Build the site:
$ featurevisor site export
Serve the built site (defaults to port 3000):
$ featurevisor site serve
Serve it in a specific port:
$ featurevisor site serve -p 3000
Learn more in Status site.
Generate TypeScript code from your YAMLs:
$ featurevisor generate-code --language typescript --out-dir ./src
See output in
Learn more in code generation page.
Find duplicate segments
It is possible to end up with multiple segments having same conditions in larger projects. This is not a problem per se, but we should be aware of it.
We can find these duplicates early on by running:
$ featurevisor find-duplicate-segments