CLI tool to write initial WebStorm settings into a new project
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.
For Windows Powershell you might have to enable script execution:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned
You should install webstorm-init globally to easily access it from any project folder:
npm i -g webstorm-init
- in your shell cd into your project's folder
- run
webstorm-initorwsi
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
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\myprojector 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\.ideaor on Linux/Mac:~/.idea_template/.idea - skip both steps, then webstorm-init uses its built-in template (default)
The built-in project settings are rather opinionated and 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 relative to tsconfig.json
- Misc: mark the project's
srcfolder as Resource Root
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.
Using this tool will overwrite some or all files in the current folder's .idea directory! Use at your own risk.
Licensed under MIT