| { | ||
| "$schema": "https://biomejs.dev/schemas/1.9.4/schema.json", | ||
| "css": { | ||
| "formatter": { | ||
| "enabled": true, | ||
| "quoteStyle": "double" | ||
| }, | ||
| "linter": { | ||
| "enabled": true | ||
| } | ||
| }, | ||
| "formatter": { | ||
| "attributePosition": "auto", | ||
| "enabled": true, | ||
| "formatWithErrors": false, | ||
| "ignore": [], | ||
| "indentStyle": "space", | ||
| "indentWidth": 2, | ||
| "lineEnding": "lf", | ||
| "lineWidth": 80, | ||
| "useEditorconfig": true | ||
| }, | ||
| "javascript": { | ||
| "formatter": { | ||
| "arrowParentheses": "always", | ||
| "bracketSameLine": false, | ||
| "bracketSpacing": true, | ||
| "quoteStyle": "double", | ||
| "enabled": true, | ||
| "jsxQuoteStyle": "double", | ||
| "quoteProperties": "asNeeded", | ||
| "semicolons": "always", | ||
| "trailingCommas": "all" | ||
| } | ||
| }, | ||
| "json": { | ||
| "formatter": { | ||
| "enabled": true, | ||
| "trailingCommas": "none" | ||
| }, | ||
| "parser": { | ||
| "allowComments": true, | ||
| "allowTrailingCommas": true | ||
| } | ||
| }, | ||
| "linter": { | ||
| "enabled": true, | ||
| "rules": { | ||
| "a11y": {}, | ||
| "all": true, | ||
| "complexity": {}, | ||
| "correctness": { | ||
| "noUndeclaredDependencies": "off" | ||
| }, | ||
| "nursery": {}, | ||
| "performance": {}, | ||
| "security": {}, | ||
| "style": { | ||
| "noDefaultExport": "off" | ||
| }, | ||
| "suspicious": {} | ||
| } | ||
| }, | ||
| "organizeImports": { | ||
| "enabled": false | ||
| }, | ||
| "vcs": { | ||
| "clientKind": "git", | ||
| "defaultBranch": "main", | ||
| "enabled": true, | ||
| "useIgnoreFile": true | ||
| } | ||
| } |
| import js from "@eslint/js"; | ||
| import globals from "globals"; | ||
| import tseslint from "typescript-eslint"; | ||
| import pluginReact from "eslint-plugin-react"; | ||
| import json from "@eslint/json"; | ||
| import markdown from "@eslint/markdown"; | ||
| import css from "@eslint/css"; | ||
| import { defineConfig } from "eslint/config"; | ||
| export default defineConfig([ | ||
| { | ||
| files: ["**/*.{js,mjs,cjs,ts,jsx,tsx}"], | ||
| plugins: { js }, | ||
| extends: ["js/recommended"], | ||
| }, | ||
| { | ||
| files: ["**/*.{js,mjs,cjs,ts,jsx,tsx}"], | ||
| languageOptions: { globals: globals.browser }, | ||
| }, | ||
| tseslint.configs.recommended, | ||
| pluginReact.configs.flat.recommended, | ||
| { | ||
| files: ["**/*.json"], | ||
| plugins: { json }, | ||
| language: "json/json", | ||
| extends: ["json/recommended"], | ||
| }, | ||
| { | ||
| files: ["**/*.jsonc"], | ||
| plugins: { json }, | ||
| language: "json/jsonc", | ||
| extends: ["json/recommended"], | ||
| }, | ||
| { | ||
| files: ["**/*.json5"], | ||
| plugins: { json }, | ||
| language: "json/json5", | ||
| extends: ["json/recommended"], | ||
| }, | ||
| { | ||
| files: ["**/*.md"], | ||
| plugins: { markdown }, | ||
| language: "markdown/gfm", | ||
| extends: ["markdown/recommended"], | ||
| }, | ||
| { | ||
| files: ["**/*.css"], | ||
| plugins: { css }, | ||
| language: "css/css", | ||
| extends: ["css/recommended"], | ||
| }, | ||
| ]); |
@@ -1,4 +0,1 @@ | ||
| /** | ||
| * @see https://commitlint.js.org/reference/rules.html | ||
| */ | ||
| export default { | ||
@@ -5,0 +2,0 @@ extends: ["@commitlint/config-conventional"], |
+14
-3
| { | ||
| "name": "temis", | ||
| "version": "0.3.0", | ||
| "version": "0.4.0", | ||
| "private": false, | ||
@@ -18,3 +18,6 @@ "description": "A package that centralizes settings for tools to simplify and improve TypeScript React development.", | ||
| "exports": { | ||
| "./configs/biome.json": "./configs/biome/v1/biome.json" | ||
| "./biome": "./configs/biome/v1/biome.json", | ||
| "./biome/v1": "./configs/biome/v1/biome.json", | ||
| "./biome/v2": "./configs/biome/v2/biome.json", | ||
| "./eslint": "./configs/eslint/eslint.config.js" | ||
| }, | ||
@@ -25,3 +28,11 @@ "files": [ | ||
| "dependencies": { | ||
| "@commitlint/config-conventional": "19.8.0" | ||
| "@commitlint/config-conventional": "19.8.0", | ||
| "@eslint/css": "0.7.0", | ||
| "@eslint/js": "9.25.1", | ||
| "@eslint/json": "0.12.0", | ||
| "@eslint/markdown": "6.4.0", | ||
| "eslint": "9.25.1", | ||
| "eslint-plugin-react": "7.37.5", | ||
| "globals": "16.0.0", | ||
| "typescript-eslint": "8.31.0" | ||
| }, | ||
@@ -28,0 +39,0 @@ "devDependencies": { |
+5
-42
@@ -27,2 +27,4 @@ # temis ⚖️ | ||
| - [commitlint](https://github.com/conventional-changelog/commitlint) v19.8.0 | ||
| - [ESLint](https://github.com/eslint/eslint) v9.25.1 | ||
| - with [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint) v8.31.0, and more plugins | ||
@@ -47,47 +49,8 @@ ## Installation | ||
| ### Biome | ||
| - [Biome](docs/biome.md) | ||
| - [commitlint](docs/commitlint.md) | ||
| - [ESLint](docs/eslint.md) | ||
| ```jsonc | ||
| // biome.json | ||
| { | ||
| "extends": ["./node_modules/temis/configs/biome/biome.json"], | ||
| } | ||
| ``` | ||
| If you find the rules too strict, please override the settings. | ||
| ### commitlint | ||
| ```mjs | ||
| // commitlint.config.mjs | ||
| export default { | ||
| extends: ["./node_modules/temis/configs/commitlint/commitlint.config.mjs"], | ||
| }; | ||
| ``` | ||
| If you find the rules too strict, please override the settings. | ||
| ## License | ||
| This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details. | ||
| ## Memo | ||
| ### Policy | ||
| - For language specifications, we will complement it in a form that does not omit anything that can be omitted. | ||
| ### Code Style | ||
| - Biome's `javascript.formatter.arrowParentheses` is set to `"always"`. | ||
| - Biome's `javascript.formatter.quoteProperties` is set to `"asNeeded"`. | ||
| - Biome's `javascript.formatter.semicolons` is set to `"always"`. | ||
| - Biome's `javascript.formatter.trailingCommas` is set to `"all"`. | ||
| - Biome's `javascript.formatter.indentStyle` is set to `"space"`. | ||
| - Biome's `javascript.formatter.indentWidth` is set to `2`. | ||
| - Biome's `organizeImports` is not used. Instead, sorting is done with ESLint. | ||
| ### Commit Message Style | ||
| - Follow Conventional Commits | ||
| - Relax the rules regarding the number of characters |
8520
33.56%8
33.33%210
135.96%9
800%55
-40.22%+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added
+ Added