{"id":13801312,"url":"https://github.com/ota-meshi/eslint-plugin-toml","last_synced_at":"2026-02-23T10:46:58.129Z","repository":{"id":37048669,"uuid":"330307272","full_name":"ota-meshi/eslint-plugin-toml","owner":"ota-meshi","description":"This ESLint plugin provides linting rules for TOML.","archived":false,"fork":false,"pushed_at":"2026-02-07T13:04:27.000Z","size":663,"stargazers_count":32,"open_issues_count":2,"forks_count":5,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-02-13T16:37:41.277Z","etag":null,"topics":["eslint-plugin","eslintplugin","toml","toml-format","toml-validation"],"latest_commit_sha":null,"homepage":"https://ota-meshi.github.io/eslint-plugin-toml/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ota-meshi.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"ota-meshi"}},"created_at":"2021-01-17T03:35:06.000Z","updated_at":"2026-02-07T13:03:43.000Z","dependencies_parsed_at":"2025-12-04T15:04:01.517Z","dependency_job_id":null,"html_url":"https://github.com/ota-meshi/eslint-plugin-toml","commit_stats":{"total_commits":167,"total_committers":3,"mean_commits":"55.666666666666664","dds":"0.49101796407185627","last_synced_commit":"579267f8700619892fb5e67125e15e5dbb7d738e"},"previous_names":[],"tags_count":30,"template":false,"template_full_name":null,"purl":"pkg:github/ota-meshi/eslint-plugin-toml","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ota-meshi%2Feslint-plugin-toml","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ota-meshi%2Feslint-plugin-toml/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ota-meshi%2Feslint-plugin-toml/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ota-meshi%2Feslint-plugin-toml/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ota-meshi","download_url":"https://codeload.github.com/ota-meshi/eslint-plugin-toml/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ota-meshi%2Feslint-plugin-toml/sbom","scorecard":{"id":714079,"data":{"date":"2025-08-11","repo":{"name":"github.com/ota-meshi/eslint-plugin-toml","commit":"c9fd9b3ff92cf2b9adfa5a38d341bf67209b5470"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.4,"checks":[{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Info: topLevel 'contents' permission set to 'read': .github/workflows/GHPages.yml:10","Warn: no topLevel permission defined: .github/workflows/NodeCI.yml:1","Warn: topLevel 'contents' permission set to 'write': .github/workflows/Release.yml:9","Warn: no topLevel permission defined: .github/workflows/format.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Code-Review","score":0,"reason":"Found 0/20 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/GHPages.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/ota-meshi/eslint-plugin-toml/GHPages.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/GHPages.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/ota-meshi/eslint-plugin-toml/GHPages.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/GHPages.yml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/ota-meshi/eslint-plugin-toml/GHPages.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/GHPages.yml:37: update your workflow using https://app.stepsecurity.io/secureworkflow/ota-meshi/eslint-plugin-toml/GHPages.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/GHPages.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/ota-meshi/eslint-plugin-toml/GHPages.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/NodeCI.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/ota-meshi/eslint-plugin-toml/NodeCI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/NodeCI.yml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/ota-meshi/eslint-plugin-toml/NodeCI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/NodeCI.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/ota-meshi/eslint-plugin-toml/NodeCI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/NodeCI.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/ota-meshi/eslint-plugin-toml/NodeCI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/NodeCI.yml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/ota-meshi/eslint-plugin-toml/NodeCI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/NodeCI.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/ota-meshi/eslint-plugin-toml/NodeCI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/NodeCI.yml:55: update your workflow using https://app.stepsecurity.io/secureworkflow/ota-meshi/eslint-plugin-toml/NodeCI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/NodeCI.yml:56: update your workflow using https://app.stepsecurity.io/secureworkflow/ota-meshi/eslint-plugin-toml/NodeCI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/NodeCI.yml:72: update your workflow using https://app.stepsecurity.io/secureworkflow/ota-meshi/eslint-plugin-toml/NodeCI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/NodeCI.yml:74: update your workflow using https://app.stepsecurity.io/secureworkflow/ota-meshi/eslint-plugin-toml/NodeCI.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/Release.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/ota-meshi/eslint-plugin-toml/Release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/Release.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/ota-meshi/eslint-plugin-toml/Release.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/Release.yml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/ota-meshi/eslint-plugin-toml/Release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/format.yml:12: update your workflow using https://app.stepsecurity.io/secureworkflow/ota-meshi/eslint-plugin-toml/format.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/format.yml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/ota-meshi/eslint-plugin-toml/format.yml/main?enable=pin","Warn: npmCommand not pinned by hash: .github/workflows/GHPages.yml:31","Warn: npmCommand not pinned by hash: .github/workflows/NodeCI.yml:47","Warn: npmCommand not pinned by hash: .github/workflows/NodeCI.yml:49","Warn: npmCommand not pinned by hash: .github/workflows/NodeCI.yml:61","Warn: npmCommand not pinned by hash: .github/workflows/NodeCI.yml:63","Warn: npmCommand not pinned by hash: .github/workflows/NodeCI.yml:79","Warn: npmCommand not pinned by hash: .github/workflows/NodeCI.yml:81","Warn: npmCommand not pinned by hash: .github/workflows/NodeCI.yml:17","Warn: npmCommand not pinned by hash: .github/workflows/NodeCI.yml:32","Warn: npmCommand not pinned by hash: .github/workflows/Release.yml:28","Warn: npmCommand not pinned by hash: .github/workflows/format.yml:17","Info:   0 out of  19 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   1 third-party GitHubAction dependencies pinned","Info:   0 out of  11 npmCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 26 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-22T09:00:47.041Z","repository_id":37048669,"created_at":"2025-08-22T09:00:47.041Z","updated_at":"2025-08-22T09:00:47.041Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29443451,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-14T10:51:12.367Z","status":"ssl_error","status_checked_at":"2026-02-14T10:50:52.088Z","response_time":53,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["eslint-plugin","eslintplugin","toml","toml-format","toml-validation"],"created_at":"2024-08-04T00:01:21.497Z","updated_at":"2026-02-18T09:03:13.943Z","avatar_url":"https://github.com/ota-meshi.png","language":"TypeScript","funding_links":["https://github.com/sponsors/ota-meshi"],"categories":["Plugins"],"sub_categories":["Languages and Environments"],"readme":"# Introduction\n\n[eslint-plugin-toml](https://www.npmjs.com/package/eslint-plugin-toml) is ESLint plugin provides linting rules for [TOML].\n\n[![NPM license](https://img.shields.io/npm/l/eslint-plugin-toml.svg)](https://www.npmjs.com/package/eslint-plugin-toml)\n[![NPM version](https://img.shields.io/npm/v/eslint-plugin-toml.svg)](https://www.npmjs.com/package/eslint-plugin-toml)\n[![NPM downloads](https://img.shields.io/badge/dynamic/json.svg?label=downloads\u0026colorB=green\u0026suffix=/day\u0026query=$.downloads\u0026uri=https://api.npmjs.org//downloads/point/last-day/eslint-plugin-toml\u0026maxAge=3600)](http://www.npmtrends.com/eslint-plugin-toml)\n[![NPM downloads](https://img.shields.io/npm/dw/eslint-plugin-toml.svg)](http://www.npmtrends.com/eslint-plugin-toml)\n[![NPM downloads](https://img.shields.io/npm/dm/eslint-plugin-toml.svg)](http://www.npmtrends.com/eslint-plugin-toml)\n[![NPM downloads](https://img.shields.io/npm/dy/eslint-plugin-toml.svg)](http://www.npmtrends.com/eslint-plugin-toml)\n[![NPM downloads](https://img.shields.io/npm/dt/eslint-plugin-toml.svg)](http://www.npmtrends.com/eslint-plugin-toml)\n[![Build Status](https://github.com/ota-meshi/eslint-plugin-toml/workflows/CI/badge.svg?branch=main)](https://github.com/ota-meshi/eslint-plugin-toml/actions?query=workflow%3ACI)\n\n## :name_badge: Features\n\nThis ESLint plugin provides linting rules for [TOML].\n\n- You can use ESLint to lint [TOML].\n- You can find out the problem with your [TOML] files.\n- You can apply consistent code styles to your [TOML] files.\n- Supports [Vue SFC](https://vue-loader.vuejs.org/spec.html) custom blocks such as `\u003ccustom-block lang=\"toml\"\u003e`.  \n  Requirements `vue-eslint-parser` v7.3.0 and above.\n- Supports ESLint directives. e.g. `# eslint-disable-next-line`\n- You can check your code in real-time using the ESLint editor integrations.\n\nYou can check on the [Online DEMO](https://ota-meshi.github.io/eslint-plugin-toml/playground/).\n\n\u003c!--DOCS_IGNORE_START--\u003e\n\n## :book: Documentation\n\nSee [documents](https://ota-meshi.github.io/eslint-plugin-toml/).\n\n## :cd: Installation\n\n```bash\nnpm install --save-dev eslint eslint-plugin-toml\n```\n\n\u003e **Requirements**\n\u003e\n\u003e - ESLint v9.38.0 and above\n\u003e - Node.js v20.19.x, v22.13.x, v24.x and above\n\n\u003c!--DOCS_IGNORE_END--\u003e\n\n## :book: Usage\n\n\u003c!--USAGE_SECTION_START--\u003e\n\u003c!--USAGE_GUIDE_START--\u003e\n\n### Configuration\n\nUse `eslint.config.js` file to configure rules. See also: \u003chttps://eslint.org/docs/latest/use/configure/configuration-files\u003e.\n\nExample **eslint.config.js**:\n\n```js\nimport eslintPluginToml from 'eslint-plugin-toml';\nexport default [\n  // add more generic rule sets here, such as:\n  // js.configs.recommended,\n  ...eslintPluginToml.configs.recommended,\n  {\n    rules: {\n      // override/add rules settings here, such as:\n    // 'toml/rule-name': 'error'\n    }\n  }\n];\n```\n\nThis plugin provides configs:\n\n- `*.configs.base` ... Configuration to enable correct TOML parsing.\n- `*.configs.recommended` ... Above, plus rules to prevent errors or unintended behavior.\n- `*.configs.standard` ... Above, plus rules to enforce the common stylistic conventions.\n\nFor backward compatibility, you can also use the `flat/*` namespace:\n\n- `*.configs['flat/base']`\n- `*.configs['flat/recommended']`\n- `*.configs['flat/standard']`\n\nSee [the rule list](https://ota-meshi.github.io/eslint-plugin-toml/rules/) to get the `rules` that this plugin provides.\n\n#### Languages\n\nThis plugin provides the following language identifiers for use in ESLint configurations:\n\n- `toml/toml` ... TOML files\n\nFor example, to apply settings specifically to TOML files, you can use the `language` field in your ESLint configuration:\n\n```js\nimport eslintPluginToml from 'eslint-plugin-toml';\nexport default [\n  {\n    files: [\"*.toml\", \"**/*.toml\"],\n    plugins: {\n      toml: eslintPluginToml,\n    },\n    language: \"toml/toml\",\n  }\n]\n```\n\nThe configuration above is included in the shareable configs provided by this plugin, so using `configs` is generally recommended.\n\nSee also \u003chttps://eslint.org/docs/latest/use/configure/plugins#specify-a-language\u003e\n\n## :computer: Editor Integrations\n\n### Visual Studio Code\n\nUse the [dbaeumer.vscode-eslint](https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint) extension that Microsoft provides officially.\n\nYou have to configure the `eslint.validate` option of the extension to check `.toml` files, because the extension targets only `*.js` or `*.jsx` files by default.\n\nExample **.vscode/settings.json**:\n\n```json\n{\n    \"eslint.validate\": [\n        \"javascript\",\n        \"javascriptreact\",\n        \"toml\"\n    ]\n}\n```\n\n\u003c!--USAGE_GUIDE_END--\u003e\n\u003c!--USAGE_SECTION_END--\u003e\n\n## :white_check_mark: Rules\n\n\u003c!--RULES_SECTION_START--\u003e\n\nThe `--fix` option on the [command line](https://eslint.org/docs/user-guide/command-line-interface#fixing-problems) automatically fixes problems reported by rules which have a wrench :wrench: below.  \nThe rules with the following star :star: are included in the configs.\n\n\u003c!--RULES_TABLE_START--\u003e\n\n### TOML Rules\n\n| Rule ID | Description | Fixable | RECOMMENDED | STANDARD |\n|:--------|:------------|:-------:|:-----------:|:--------:|\n| [toml/indent](https://ota-meshi.github.io/eslint-plugin-toml/rules/indent.html) | enforce consistent indentation | :wrench: |  | :star: |\n| [toml/keys-order](https://ota-meshi.github.io/eslint-plugin-toml/rules/keys-order.html) | disallow defining pair keys out-of-order | :wrench: |  | :star: |\n| [toml/no-mixed-type-in-array](https://ota-meshi.github.io/eslint-plugin-toml/rules/no-mixed-type-in-array.html) | disallow mixed data types in array |  |  |  |\n| [toml/no-non-decimal-integer](https://ota-meshi.github.io/eslint-plugin-toml/rules/no-non-decimal-integer.html) | disallow hexadecimal, octal and binary integer | :wrench: |  |  |\n| [toml/no-space-dots](https://ota-meshi.github.io/eslint-plugin-toml/rules/no-space-dots.html) | disallow spacing around infix operators | :wrench: |  | :star: |\n| [toml/no-unreadable-number-separator](https://ota-meshi.github.io/eslint-plugin-toml/rules/no-unreadable-number-separator.html) | disallow number separators that to not enhance readability. |  | :star: | :star: |\n| [toml/padding-line-between-pairs](https://ota-meshi.github.io/eslint-plugin-toml/rules/padding-line-between-pairs.html) | require or disallow padding lines between pairs | :wrench: |  | :star: |\n| [toml/padding-line-between-tables](https://ota-meshi.github.io/eslint-plugin-toml/rules/padding-line-between-tables.html) | require or disallow padding lines between tables | :wrench: |  | :star: |\n| [toml/precision-of-fractional-seconds](https://ota-meshi.github.io/eslint-plugin-toml/rules/precision-of-fractional-seconds.html) | disallow precision of fractional seconds greater than the specified value. |  | :star: | :star: |\n| [toml/precision-of-integer](https://ota-meshi.github.io/eslint-plugin-toml/rules/precision-of-integer.html) | disallow precision of integer greater than the specified value. |  | :star: | :star: |\n| [toml/quoted-keys](https://ota-meshi.github.io/eslint-plugin-toml/rules/quoted-keys.html) | require or disallow quotes around keys | :wrench: |  | :star: |\n| [toml/tables-order](https://ota-meshi.github.io/eslint-plugin-toml/rules/tables-order.html) | disallow defining tables out-of-order | :wrench: |  | :star: |\n| [toml/vue-custom-block/no-parsing-error](https://ota-meshi.github.io/eslint-plugin-toml/rules/vue-custom-block/no-parsing-error.html) | disallow parsing errors in Vue custom blocks |  | :star: | :star: |\n\n### Extension Rules\n\n| Rule ID | Description | Fixable | RECOMMENDED | STANDARD |\n|:--------|:------------|:-------:|:-----------:|:--------:|\n| [toml/array-bracket-newline](https://ota-meshi.github.io/eslint-plugin-toml/rules/array-bracket-newline.html) | enforce linebreaks after opening and before closing array brackets | :wrench: |  | :star: |\n| [toml/array-bracket-spacing](https://ota-meshi.github.io/eslint-plugin-toml/rules/array-bracket-spacing.html) | enforce consistent spacing inside array brackets | :wrench: |  | :star: |\n| [toml/array-element-newline](https://ota-meshi.github.io/eslint-plugin-toml/rules/array-element-newline.html) | enforce line breaks between array elements | :wrench: |  | :star: |\n| [toml/comma-style](https://ota-meshi.github.io/eslint-plugin-toml/rules/comma-style.html) | enforce consistent comma style in array | :wrench: |  | :star: |\n| [toml/inline-table-curly-spacing](https://ota-meshi.github.io/eslint-plugin-toml/rules/inline-table-curly-spacing.html) | enforce consistent spacing inside braces | :wrench: |  | :star: |\n| [toml/key-spacing](https://ota-meshi.github.io/eslint-plugin-toml/rules/key-spacing.html) | enforce consistent spacing between keys and values in key/value pairs | :wrench: |  | :star: |\n| [toml/spaced-comment](https://ota-meshi.github.io/eslint-plugin-toml/rules/spaced-comment.html) | enforce consistent spacing after the `#` in a comment | :wrench: |  | :star: |\n| [toml/table-bracket-spacing](https://ota-meshi.github.io/eslint-plugin-toml/rules/table-bracket-spacing.html) | enforce consistent spacing inside table brackets | :wrench: |  | :star: |\n\n## Deprecated\n\n- :warning: We're going to remove deprecated rules in the next major release. Please migrate to successor/new rules.\n- :innocent: We don't fix bugs which are in deprecated rules since we don't have enough resources.\n\n| Rule ID | Replaced by |\n|:--------|:------------|\n| [toml/space-eq-sign](https://ota-meshi.github.io/eslint-plugin-toml/rules/space-eq-sign.html) | [toml/key-spacing](https://ota-meshi.github.io/eslint-plugin-toml/rules/key-spacing.html.md) |\n\n\u003c!--RULES_TABLE_END--\u003e\n\u003c!--RULES_SECTION_END--\u003e\n\n\u003c!--DOCS_IGNORE_START--\u003e\n\n## :beers: Contributing\n\nWelcome contributing!\n\nPlease use GitHub's Issues/PRs.\n\n### Development Tools\n\n- `npm test` runs tests and measures coverage.  \n- `npm run update` runs in order to update readme and recommended configuration.  \n\n### Working With Rules\n\nThis plugin uses [toml-eslint-parser](https://github.com/ota-meshi/toml-eslint-parser) for the parser. Check [here](https://ota-meshi.github.io/toml-eslint-parser/) to find out about AST.\n\n\u003c!--DOCS_IGNORE_END--\u003e\n\n## :couple: Related Packages\n\n- [eslint-plugin-jsonc](https://github.com/ota-meshi/eslint-plugin-jsonc) ... ESLint plugin for JSON, JSON with comments (JSONC) and JSON5.\n- [eslint-plugin-yml](https://github.com/ota-meshi/eslint-plugin-yml) ... ESLint plugin for YAML.\n- [eslint-plugin-json-schema-validator](https://github.com/ota-meshi/eslint-plugin-json-schema-validator) ... ESLint plugin that validates data using JSON Schema Validator.\n- [jsonc-eslint-parser](https://github.com/ota-meshi/jsonc-eslint-parser) ... JSON, JSONC and JSON5 parser for use with ESLint plugins.\n- [yaml-eslint-parser](https://github.com/ota-meshi/yaml-eslint-parser) ... YAML parser for use with ESLint plugins.\n- [toml-eslint-parser](https://github.com/ota-meshi/toml-eslint-parser) ... TOML parser for use with ESLint plugins.\n\n## :lock: License\n\nSee the [LICENSE](LICENSE) file for license rights and limitations (MIT).\n\n[TOML]: https://toml.io/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fota-meshi%2Feslint-plugin-toml","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fota-meshi%2Feslint-plugin-toml","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fota-meshi%2Feslint-plugin-toml/lists"}