CLI Options

Init Command

The init command is a guided project setup to get you started developing plugins fast. It will ask you which packages you would like to use in your project and then will proceed to installing them.


# or

fenix init



Project Directory

  • Prompt: Where would you like to create your project

  • Type: String

  • Default: ./

This is the location FeniXCLI will create the project structure, install packages and download the game demo.

Project Name

  • Prompt: Project Name

  • Type: String `

  • Default: my-generated-project

The name of the project, this is used in the project's package.json.

Project Description

  • Prompt: Project Description

  • Type: String

  • Default: ``

The description of the project, this is used in the project's package.json.

Project Author

  • Prompt: Project Author

  • Type: String

  • Default: FeniXEngine Contributors

The authors name for the project, this is used in the project's package.json.


The linter to use to lint for errors in your plugins. We reccomend ESLint for it's large rule set and shareable configs.

Linter Plugins

Prompt: Which ESLint plugins would you like to install

Important and helpful ESLint plugins and configurations, these are automatically configured during setup.

Other Packages

Optional but useful packages which will help develop plugins.

Download Demo

  • Prompt: Download FeniX Lightweight MV Demo game

  • Type: Boolean | Yes/No

  • Default: false

Downloads a lightweight RPG Maker MV game demo (6.7mb), and extracts it to the proejcts game/ directory.

Dev Command

The dev command will start a server at a default address of localhost:1818 and serve all files from the default './game/ and listen for changes in the ./src directory. If changes are made then it will continue to re-bundle the plugin(s) to the './game/js/plugins` directory and reload any browser opened at the default address.

fenix dev



Server target

  • arg: -t <path>, --target <path>
  • type: String
  • default ./game

The location to serve files from, usually a game project location.

Auto Open Browser

  • arg: -o, --open
  • type: boolean
  • default false

Enable auto-opening of default browser. When the server is connected it will automatically open the browser if sert to true.


  • arg: -p, --port
  • type: Number
  • default 1818

Changes the port the server listens on. Useful when other applications are using the same port.

Build Command

The build command will bundle your plugins to a location you choose. By default the build command will bundle all plugins it can find in the ./src directory and write them to ./game/js/plugins/. The build command also has the option of watching for changes without serving the game.

fenix build



Build Target

  • arg: -t <path>, --target <path>
  • type: String
  • default ./src/

the target directory where your plugins are located. The location of the plugins or a directory containing the main.js and parameters.js files.


  • arg: -d <path>, --destination <path>
  • type: String
  • default ./game/js/plugins/

the path to save file after the bundle process is finished.

Watch For Changes

  • arg: -w <path>, --watch <path>
  • type: String
  • default ./src/

watch the source files for changes and re-bundle plugin(s)