@nevir/code-style

0.15.1 • Public • Published

npm Build Status

nevir's code style

This code style currently only supports JavaScript based projects (with an emphasis on TypeScript projects). It provides a pretty comprehensive set of rules, with an aim to…

  • …avoid dangerous and/or confusing patterns.
  • …encourage patterns that improve readability.
  • …enforce as much of the style as possible, to let developers focus on code behavior, not style.

Getting Started

npm install @nevir/code-style --save-dev
# Adds peer dependencies to your project, and sets up shared configs.
node ./node_modules/@nevir/code-style/.scripts/bootstrap.js

That's it! It will set you up with configuration for the various style tools.

Similarly, whenever you upgrade to a new version of the package, run bootstrap.js again to update any necessary peer dependencies.

Using It

The bootstrap script will set you up with a few new npm scripts for your convenience:

npm run test-style: Checks to see whether any files in your project violate the style. You can optionally pass specific files/globs to test as arguments.

npm run fix-style: Fixes any auto-fixable style issues in your project. You can optionally pass specific files/globs to fix as arguments.

Additionally, it configures VS Code to automatically fix and highlight style issues as you edit files.

Tooling

The bootstrap script sets up several tools in your project:

TypeScript

This package configures typescript into a very strict mode. Primarily, this is to avoid ambiguous types (ensuring that the compiler can optimally check all usages).

Prettier

Pretty standard configuration for Prettier. Nothing much special here.

Eslint

This package configures eslint with…

  • …a pretty strict set of style rules; to keep you out of trouble, and to minimize arguments over style in PRs.

  • …support for TypeScript sources.

  • --fix rules that play nice with Prettier.

Dependents (0)

Package Sidebar

Install

npm i @nevir/code-style

Weekly Downloads

10

Version

0.15.1

License

MIT

Unpacked Size

29.5 kB

Total Files

17

Last publish

Collaborators

  • nevir