CLI tool for the WordPress Flynt framework
This CLI tool takes care of multiple tasks when working with the Flynt framework for WordPress.
It helps you create a new project based on Flynt, facilitates a multi-environment WordPress development setup and offers shortcuts for running external dependencies of the build process.
Theoretically only the create command is Flynt specific. All other tasks could be used with any WordPress project that uses composer, yarn and gulp.
The clone and deploy commands are especially useful if you follow the proposed multi-environment development setup. This means a developer always works on his local environment and has everything running on his machine (i.e. Apache, MySQL, etc). In addition there is a 'public' development server. This server is the single point of truth for the local environment. While you can make any changes during development on your local environment, you should always do a flynt clone before you start working on something new, or when you want to revert your local changes. When you are done with a new feature, run flynt build && flynt deploy to publish the changes to the development server. The deploy command is just a wrapper for rsync, so that you do not need to remember the exact command yourself. You can also use deploy for other environments (e.g. staging or production) but it is recommended that you use a more sophisticated approach at least for production.
To use all features of the CLI there are a couple of OS dependencies. There are checks with feedback for all required binaries when you run a command.
The create command uses Root's Bedrock composer package to set the foundation for a new Flynt project.
The initial installation only requires node and npm. In order to be able to use all commands, the following is also required:
The used node version should be ^6. If you use a node version manager (e.g. nave), use npm to install globally:
$ npm i -g @flyntwp/flynt-cliOtherwise you can use yarn as well:
$ yarn global add @flyntwp/flynt-cliflynt-cli consists of several commands. A command is a collection of subcommands that are executed. If you do not specify a subcommand, all subcommands are executed in the pre-defined order. It is also possible to execute a single subcommand.
The --help flag displays a general help or help for a specific command, including all subcommands in the correct order.
By default almost all messages from the executed scripts are surpressed. To enable the verbose mode use the -v flag.
To display instructions on how to use a certain command use
$ flynt [<command>] --helpThese following commands are currently available:
$ flynt --help
Usage: flynt <command> [<subcommand>] [options]
Commands:
create create a new flynt project
setup setup an existing flynt project
install install flynt dependencies (composer, yarn)
upgrade upgrade flynt dependencies (composer, yarn)
start run yarn start for flynt theme
build run yarn build for flynt theme
clone clone database and media files between environments
deploy deploy source code from local to any environment
Options:
--skipReadConfig Do not read config from file [boolean]
--skipWriteConfig Do not write config to file [boolean]
--configPath File to read from and save config to. [string] [default: "./.flynt.json"]
-e, --env, --environment Specify current environment [string] [default: "local"]
-f, --force Force execution in current directory [boolean]
-v, --verbose Use verbose mode [boolean]
--version Show version number [boolean]
--help Show help [boolean]
This project is maintained by bleech.
Main people in charge of the repo are:
To contribute, please use GitHub issues. Pull requests are accepted. Please also take a moment to read the Contributing Guidelines and Code of Conduct.
If editing the README, please conform to the standard-readme specification.
MIT © bleech