0.0.3 • Published 4 years ago

webstorm-init v0.0.3

Weekly downloads
4
License
MIT
Repository
github
Last release
4 years ago

webstorm-init

CLI tool to write initial WebStorm settings into a new project

Requirements

The build-in templates may require WebStorm 2020.1 or newer. NodeJS 10 or newer required. You can use webstorm-init in Windows Powershell, Linux and MacOS.

Installation

You should install webstorm-init globally to easily access it from any project folder:

npm i -g webstorm-init

Usage

  • in your shell cd into your project's folder
  • run webstorm-init or wsi

Options

 Option          | Description
 --------------- | ---------------------------------------------------
 -f, --force     | prompt to overwrite existing WebStorm config folder
                 |
 -h, --help      | show built-in help page
                 |
 -t, --template  | path to be used as template.
                 | Defaults to the user's home directory, or the
                 | built-in template, if ~/.idea_template does not exist.
                 |
 -v, --version   | show version info

Templates

There are three ways to influence how webstorm-init is setting up the .idea folder:

  • use the --template command line parameter to specify a project directory, e.g. \ webstorm-init --template c:\dev\myproject or on Linux/Mac: webstorm-init --template ~/dev/myproject
  • create a template folder in your home directory and put a .idea folder there to be used as template: c:\users\myname\.idea_template\.idea or on Linux/Mac: ~/.idea_template/.idea
  • skip both steps, then webstorm-init uses its built-in template (default)

Built-In settings

The built-in project settings are rather opinionated any optimized to match my workflows. Use a custom template to define your own settings.

  • Language & Frameworks > JavaScript > Prettier:
    • use Prettier package supplied by the project
    • Run for files on code reformat and on save
  • Language & Frameworks > JavaScript > Code Quality Tools > ESLint:
    • Automatic ESLint configuration
    • Run eslint --fix on save
  • Editor > Inspections: Turn off all JavaScript and TypeScript inspections
  • Editor > Code Style > JavaScript > Imports
    • Merge imports for members of the same module
    • Use paths relative to the project, resource or sources roots
  • Editor > Code Style > TypeScript > Imports
    • Use paths relatvie to tsconfig.json
  • Misc: mark the project's src folder as Resource Root

Limitations

WebStorm manages a second workspace file in your profile directory to manage open files and folders opened in the project browser. These files need a project specific unique ID. webstorm-init cannot recreate this ID, i.e. WebStorm will start with a blank view and a collapsed project tree for new projects. When overwriting existing settings the project id is retained.

Disclaimer

Using this tool will overwrite some or all files in the current folder's .idea directory! Use at your own risk.

License

Licensed under MIT