0.8.1 ā€¢ Published 7 months ago

stylomatic v0.8.1

Weekly downloads
-
License
MIT
Repository
-
Last release
7 months ago

stylomatic npm version

Styles, configs, and tools for modern Typescript with zero configuration

  • :lipstick: Core styles based on @antfu/config covering Typescript, React, best practices, and even package.json ordering and formatting, and more.
  • :high_brightness: formatting is almost similar to Prettier, without the added burden of it on eslint
  • :computer: Typescript config for various usecases
  • :hammer: Tools: esno, tsup and intergrations ts-jest, and more.

Install

yarn add --dev stylomatic

Usage

Bootstrap quickly:

yarn stylomatic

Will give you a starter .eslint.js and tsconfig.json.

Add prettier with your package manager (we do this manually because of package manager incompatibilities):

"eslint-config-prettier": "^8.8.0",
"eslint-plugin-prettier": "^4.2.1",
"prettier": "^2.8.8",

Tooling deps

Starting v0.5.0, moved to here, instead of installed by default to be more compatible with how different package managers handle bins. Put these in root of your monorepo if needed:

    "jest": "^28.1.1",
    "ts-jest": "^29.0.3",
    "tsup": "^6.1.0",
    "typescript-cp": "^0.1.5",
    "typescript": "^4.7.3",
    "concurrently": "^7.2.1",
    "rimraf": "^3.0.2",
    "tsc-alias": "^1.6.9"

Quick start

$ mkdir myproject && cd myproject
$ yarn init -y && yarn add --dev stylomatic

$ yarn stylomatic
added .eslint.js
added tsconfig.json

$ mkdir src
$ cat > src/index.ts
console.log("hello unstyled world");

$ yarn eslint src/index.ts

src/index.ts
  1:1   error  Unexpected console statement                                       no-console

āœ– 2 problems (2 errors, 0 warnings)
  1 error and 0 warnings potentially fixable with the `--fix` option.

Recommended config

In your .eslint.js:

module.exports = require('stylomatic/eslint-preset')

And in your tsconfig.json:

{
  "extends": "stylomatic/node-library.json",
  "compilerOptions": {
    "outDir": "dist",
    "strict": false,
    "isolatedModules": false
  },
  "include": [
    "./src",
    "./test"
  ],
  "exclude": [
    "**/__tests__/",
    "test/fixtures"
  ]
}
0.8.1

7 months ago

0.8.0

7 months ago

0.7.0

1 year ago

0.6.0

1 year ago

0.5.0

2 years ago

0.5.1

2 years ago

0.4.10

2 years ago

0.4.9

2 years ago

0.4.8

2 years ago

0.4.5

2 years ago

0.4.4

2 years ago

0.4.7

2 years ago

0.4.6

2 years ago

0.4.1

2 years ago

0.4.0

2 years ago

0.4.3

2 years ago

0.4.2

2 years ago

0.3.2

2 years ago

0.3.1

2 years ago

0.3.0

2 years ago

0.2.0

2 years ago

0.1.1

2 years ago

0.1.0

2 years ago