Common config files for @merrywhether projects
Installation:
pnpm add -D @merrywhether/config
This will generate a .projenrc.js
file in the root of your project. Update
that config with your desired settings and then run node .projenrc.js
to have
it create the appropriate configuration files.
The base ESLint configuration includes the following plugins/configs:
-
eslint
(recommended++) import
-
prettier
(recommended) sort-destructure-keys
sort-keys-fix
When the typescript
option is selected, the following are added:
-
@typescript-eslint
(recommended++, including type-aware)
When the react
option is selected, the following are added:
-
react
(recommended++, jsx-runtime) -
react-hooks
(recommended++) -
typescript-sort-keys
(recommended)
When the solid
option is selected, the following are added:
Uses the default Prettier settings with the following changes:
-
experimentalTernaries: true
(embrace the future) -
proseWrap: always
(wrapping Markdown). -
singleQuote: true
(because this is JS! 😛)
The base configuration has all of the strictest settings enabled and targets
esnext
.
When the styled
option is selected,
@styled/typescript-styled-plugin
is added.
When the solid
option is selected, the jsxImportSource
is appropriately
updated.