README
@stayradiated/jsconfig
How do I use this?
You don't. These are my personal config files and can change at any time.
If you like the idea, fork the repo -- this way you can customise the config to suit your tastes and aren't going to be surprised if I suddenly decide to bring back semicolons.
How do you use this?
This is the typically the first dependency I install after creating a new JS project.
# optional, but recommended
npm install --save-dev @stayradiated/jsconfig
npx @stayradiated/jsconfig
This will modify the nearest package.json
and add the following scripts:
tidy
: lint your code withxo --fix
test
: test your code withava
build
: build your code withtsc
publish
: publish your code withnp
Implementation
This package relies on read-pkg-up
and write-pkg
to do the heavy lifting.
These dependencies are used to modify the nearest package.json
file:
- several dependencies are injected into the
.devDependencies
, so that you can runxo
,ava
,np
locally within your project. The versions of these dependencies are set byjsconfig
and may not be the latest available versions. - several scripts are injected into the
.scripts
, so that you can runtidy
,test
,build
andpublish
. - several config definitions are overwritten, including
.xo
,.ava
and.prettier
. It overwrites instead of extending so that old properties can be removed in the future.
Typescript doesn't support reading configuration from package.json
so instead
we have to write to tsconfig.json
. This file is also overwritten each time,
so any local modifications will be removed.