Automatic documentation generator for ESLint plugins and rules.

Overview

eslint-doc-generator

npm version

Automatic documentation generator for ESLint plugins and rules.

Generates the following documentation based on ESLint and top ESLint plugin conventions:

  • README.md rules table
  • Rule doc titles and notices

Also performs some basic section consistency checks on rule docs:

  • Contains an ## Options / ## Config section and mentions each named option (for rules with options)

Setup

Install it:

npm i --save-dev eslint-doc-generator

Add it as as script in package.json (included as a lint script to demonstrate how we can ensure it passes and is up-to-date in CI):

{
  "scripts": {
    "lint": "npm-run-all \"lint:*\"",
    "lint:docs": "markdownlint \"**/*.md\"",
    "lint:eslint-docs": "npm-run-all update:eslint-docs && git diff --exit-code",
    "lint:js": "eslint .",
    "update:eslint-docs": "eslint-doc-generator"
  }
}

Delete any old rules list from your README.md. A new one will be automatically added to your ## Rules section (along with the following marker comments if they don't already exist):

<!-- begin rules list -->
<!-- end rules list -->

Delete any old recommended/fixable/etc. notices from your rule docs. A new title and notices will be automatically added to the top of each rule doc (along with a marker comment if it doesn't exist yet).

Usage

Run the script from package.json:

npm run update:eslint-docs

Example

Generated content in a rule doc (everything above the marker comment):

# Disallow use of `foo` (`test/no-foo`)

💼 This rule is enabled in the following configs: `all`, `recommended`.

🔧 This rule is automatically fixable by the `--fix` [CLI option](https://eslint.org/docs/latest/user-guide/command-line-interface#--fix).

💡 This rule is manually fixable by editor [suggestions](https://eslint.org/docs/developer-guide/working-with-rules#providing-suggestions).

❌ This rule is deprecated. It was replaced by [some-new-rule](some-new-rule.md).

<!-- end rule header -->

Description.

## Examples

Examples.

...

Generated rules table in README.md (everything between the marker comments):

# eslint-plugin-test

## Rules

<!-- begin rules list -->

✅ Enabled in the `recommended` configuration.\
💼 Configurations enabled in.\
🔧 Automatically fixable by the `--fix` [CLI option](https://eslint.org/docs/user-guide/command-line-interface#fixing-problems).\
💡 Manually fixable by editor [suggestions](https://eslint.org/docs/developer-guide/working-with-rules#providing-suggestions).\
💭 Requires type information.\
❌ Deprecated.

| Rule                                                           | Description                                       | ✅  | 🔧  | 💡  | 💭  |
| :------------------------------------------------------------- | :------------------------------------------------ | :-- | :-- | :-- | :-- |
| [max-nested-describe](docs/rules/max-nested-describe.md)       | Enforces a maximum depth to nested describe calls |     |     |     |     |
| [no-alias-methods](docs/rules/no-alias-methods.md)             | Disallow alias methods                            | ✅  | 🔧  |     |     |
| [no-commented-out-tests](docs/rules/no-commented-out-tests.md) | Disallow commented out tests                      | ✅  |     |     |     |

<!-- end rules list -->

...

The table will hide columns that don't apply to any rules, and the legend will include only the symbols that are used in the table.

If you have any custom configs (besides all, recommended), you'll need to define a badge for them at the bottom of your README.md. Here's a badge for a custom style config that displays in blue:

[style]: https://img.shields.io/badge/-style-blue.svg

Configuration options

Name Description
--ignore-config (optional) Config to ignore from being displayed (often used for an all config) (option can be repeated).
--ignore-deprecated-rules (optional) Whether to ignore deprecated rules from being checked, displayed, or updated (default: false).
--rule-doc-section-include (optional) Required section in each rule doc (option can be repeated).
--rule-doc-section-exclude (optional) Disallowed section in each rule doc (option can be repeated).
--rule-doc-title-format (optional) The format to use for rule doc titles. Choices: desc-parens-prefix-name (default), desc, desc-parens-name, name, prefix-name.
--url-configs (optional) Link to documentation about the ESLint configurations exported by the plugin.

Upcoming features

  • Custom config emojis (#34)

Related

Comments
  • Add `postprocess` config file option (useful for applying prettier formatting)

    Add `postprocess` config file option (useful for applying prettier formatting)

    This makes it easy to efficiently apply formatters like prettier after docs have been updated but before they're written to disk - this saves having to run such formatters across more files than necessary which on large codebases can be a decent time save.

    Since it requires a function, you have to use a js-based config file i.e.:

    const prettier = require('prettier');
    const { prettier: prettierRC } = require('./package.json');
    
    const config = {
      postprocess: content =>
        prettier.format(content, { ...prettierRC, parser: 'markdown' }),
    };
    
    module.exports = config;
    

    The function is expected to return a promise to future-proof, since prettier is making all its public APIs async in v3, and it's all being done in an async function so there's not a strong downside.

    This should be fully implemented (its working well locally with eslint-plugin-jest), but I've not had a chance to write any tests (I'm actually having some trouble with the cli tests not completing) so am opening as a draft to get an initial review and check that you're interested in this feature.

    Also a possible extension to this could be to support a path to a file that exports a function when being used from the command line, though that might be overkill and should be landable in a followup PR anyway.

    enhancement 
    opened by G-Rath 8
  • Add empty `prettier` config

    Add empty `prettier` config

    By not having a config file, prettier (really cosmiconfig) will look upwards and in home directories, which can result in linting errors if there is a config there (such as I have).

    Adding an empty config file ensures that prettier will always use the right config.

    internal 
    opened by G-Rath 6
  • More robust loading of CJS plugins using `require()`

    More robust loading of CJS plugins using `require()`

    For CJS plugins, we should just load them with Node's require function. This defers to Node on resolving/loading the package entry point, meaning we don't have to try to handle any of that logic ourselves. As a result, support for CJS plugins should be improved. This greater robustness means any file types (e.g. JSON) handled by require are also supported now.

    Only for ESM plugins do we need to manually try to resolve the package entry point to pass to the import function. That's because you can't just do import('path/to/plugin') for importing a local directory. import does not automatically resolve anything, so we have to do attempt to do it ourselves by looking at exports in package.json.

    Related to #140. Helps with #132.

    enhancement 
    opened by bmish 5
  • Config type definitions require the use of an enum

    Config type definitions require the use of an enum

    By using enums for certain properties in the config, TypeScript requires us to actually use those enums - this is problematic because the tool is being shipped as ESM so configs have to be using ESM too i.e.

    const { COLUMN_TYPE } = require('eslint-doc-generator/dist/lib/types');
    
    /** @type {import('eslint-doc-generator').GenerateOptions} */
    const config = {
      ignoreConfig: ['all'],
      ruleDocTitleFormat: 'desc-parens-name',
      ruleDocSectionInclude: ['Rule details'],
      ruleListColumns: [
        COLUMN_TYPE.NAME,
        COLUMN_TYPE.DESCRIPTION,
        COLUMN_TYPE.CONFIGS_ERROR,
        COLUMN_TYPE.CONFIGS_WARN,
        COLUMN_TYPE.CONFIGS_OFF,
        COLUMN_TYPE.FIXABLE,
        COLUMN_TYPE.HAS_SUGGESTIONS,
        COLUMN_TYPE.DEPRECATED,
      ],
      ruleListSplit: 'meta.docs.requiresTypeChecking',
      urlConfigs: `https://github.com/jest-community/eslint-plugin-jest/blob/main/README.md#shareable-configurations`,
    };
    
    module.exports = config;
    

    results in:

    eslint-plugin-jest on  renovate/eslint-doc-generator-1.x [$!?] is 📦 v27.1.6 via  v16.15.0 took 12s
    ❯ nrun tools:regenerate-docs
    > nrun.js tools:regenerate-docs
    > yarn prepack && eslint-doc-generator && yarn prettier:write
    Successfully compiled 115 files with Babel (1552ms).
    /home/gareth/workspace/projects-oss/eslint-plugin-jest/.eslint-doc-generatorrc.js:1
    const { COLUMN_TYPE } = require('eslint-doc-generator/dist/lib/types');
                            ^
    
    Error [ERR_REQUIRE_ESM]: require() of ES Module /home/gareth/workspace/projects-oss/eslint-plugin-jest/node_modules/eslint-doc-generator/dist/lib/types.js from /home/gareth/workspace/projects-oss/eslint-plugin-jest/.eslint-doc-generatorrc.js not supported.
    Instead change the require of types.js in /home/gareth/workspace/projects-oss/eslint-plugin-jest/.eslint-doc-generatorrc.js to a dynamic import() which is available in all CommonJS modules.
        at Object.<anonymous> (/home/gareth/workspace/projects-oss/eslint-plugin-jest/.eslint-doc-generatorrc.js:1:25)
        at module.exports (/home/gareth/workspace/projects-oss/eslint-plugin-jest/node_modules/import-fresh/index.js:32:59)
        at loadJs (/home/gareth/workspace/projects-oss/eslint-plugin-jest/node_modules/eslint-doc-generator/node_modules/cosmiconfig/dist/loaders.js:16:18)
        at Explorer.loadFileContent (/home/gareth/workspace/projects-oss/eslint-plugin-jest/node_modules/eslint-doc-generator/node_modules/cosmiconfig/dist/Explorer.js:86:20)
        at Explorer.createCosmiconfigResult (/home/gareth/workspace/projects-oss/eslint-plugin-jest/node_modules/eslint-doc-generator/node_modules/cosmiconfig/dist/Explorer.js:94:36)
        at Explorer.loadSearchPlace (/home/gareth/workspace/projects-oss/eslint-plugin-jest/node_modules/eslint-doc-generator/node_modules/cosmiconfig/dist/Explorer.js:70:31)
        at async Explorer.searchDirectory (/home/gareth/workspace/projects-oss/eslint-plugin-jest/node_modules/eslint-doc-generator/node_modules/cosmiconfig/dist/Explorer.js:55:27)
        at async run (/home/gareth/workspace/projects-oss/eslint-plugin-jest/node_modules/eslint-doc-generator/node_modules/cosmiconfig/dist/Explorer.js:35:22)
        at async cacheWrapper (/home/gareth/workspace/projects-oss/eslint-plugin-jest/node_modules/eslint-doc-generator/node_modules/cosmiconfig/dist/cacheWrapper.js:16:18)
        at async Explorer.search (/home/gareth/workspace/projects-oss/eslint-plugin-jest/node_modules/eslint-doc-generator/node_modules/cosmiconfig/dist/Explorer.js:27:20)
        at async loadConfigFileOptions (file:///home/gareth/workspace/projects-oss/eslint-plugin-jest/node_modules/eslint-doc-generator/dist/lib/cli.js:39:29)
        at async Command.<anonymous> (file:///home/gareth/workspace/projects-oss/eslint-plugin-jest/node_modules/eslint-doc-generator/dist/lib/cli.js:149:35)
        at async Command.parseAsync (/home/gareth/workspace/projects-oss/eslint-plugin-jest/node_modules/commander/lib/command.js:916:5)
        at async run (file:///home/gareth/workspace/projects-oss/eslint-plugin-jest/node_modules/eslint-doc-generator/dist/lib/cli.js:125:5) {
      code: 'ERR_REQUIRE_ESM',
      filepath: '/home/gareth/workspace/projects-oss/eslint-plugin-jest/.eslint-doc-generatorrc.js'
    }
    
    bug 
    opened by G-Rath 3
  • Add option to override package entrypoint

    Add option to override package entrypoint

    In this example, package.json specifies index.js is the entry point:

    https://github.com/testing-library/eslint-plugin-testing-library/blob/79d8967d3771c08f376ef006ca9235faece5eb1e/package.json#L26

    But the package is using semantic-release which specifies the compiled dist folder to become the package root in the published package:

    https://github.com/testing-library/eslint-plugin-testing-library/blob/79d8967d3771c08f376ef006ca9235faece5eb1e/.releaserc.json#L2

    eslint-doc-generator of course doesn't know about semantic-release conventions so it can't load the plugin.

    We need an option like --path-entry dist/index.js where we could manually specify the entry point to use.

    enhancement 
    opened by bmish 3
  • chore(deps): bump @typescript-eslint/utils from 5.39.0 to 5.40.0

    chore(deps): bump @typescript-eslint/utils from 5.39.0 to 5.40.0

    Bumps @typescript-eslint/utils from 5.39.0 to 5.40.0.

    Release notes

    Sourced from @​typescript-eslint/utils's releases.

    v5.40.0

    5.40.0 (2022-10-10)

    Bug Fixes

    • eslint-plugin: [consistent-indexed-object-style] handle interface generic (#5746) (7a8a0a3)
    • eslint-plugin: [no-unnecessary-condition] handle void (#5766) (ac8f06b)

    Features

    • eslint-plugin: Check 'rest' parameters in no-misused-promises (#5731) (6477f38), closes #4015
    • utils: add dependency constraint filtering for RuleTester (#5750) (121f4c0)
    • website: store options TypeScript, Enable jsx and AST Viewer in browser's local storage (#5769) (77d2336)
    Changelog

    Sourced from @​typescript-eslint/utils's changelog.

    5.40.0 (2022-10-10)

    Features

    • utils: add dependency constraint filtering for RuleTester (#5750) (121f4c0)
    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies javascript 
    opened by dependabot[bot] 3
  • Remove extra closing quote from error message

    Remove extra closing quote from error message

    I also removed the dot because it felt like an odd duck to me given the error continues down, i.e.

    Error: No rules found with --split-by property "meta.docs.requiresTypeChecking".
        at generateRulesListMarkdownWithSplitBy (file:///home/runner/work/eslint-plugin-jest-extended/eslint-plugin-jest-extended/node_modules/eslint-doc-generator/dist/lib/rule-list.js:[10](https://github.com/jest-community/eslint-plugin-jest-extended/actions/runs/3555029745/jobs/5971494794#step:5:11)9:15)
        at updateRulesList (file:///home/runner/work/eslint-plugin-jest-extended/eslint-plugin-jest-extended/node_modules/eslint-doc-generator/dist/lib/rule-list.js:170:[11](https://github.com/jest-community/eslint-plugin-jest-extended/actions/runs/3555029745/jobs/5971494794#step:5:12))
        at generate (file:///home/runner/work/eslint-plugin-jest-extended/eslint-plugin-jest-extended/node_modules/eslint-doc-generator/dist/lib/generator.js:167:33)
        at async Command.<anonymous> (file:///home/runner/work/eslint-plugin-jest-extended/eslint-plugin-jest-extended/node_modules/eslint-doc-generator/dist/lib/cli.js:109:9)
        at async Command.parseAsync (/home/runner/work/eslint-plugin-jest-extended/eslint-plugin-jest-extended/node_modules/commander/lib/command.js:916:5)
        at async run (file:///home/runner/work/eslint-plugin-jest-extended/eslint-plugin-jest-extended/node_modules/eslint-doc-generator/dist/lib/cli.js:78:5)
    
    bug 
    opened by G-Rath 2
  • Ensure TypeScript is checked by CodeQL

    Ensure TypeScript is checked by CodeQL

    So apparently typescript is different from javascript in CodeQL config, and for best coverage you should include both (personally I think the docs really don't give that impression, but this came from GitHub staff and it doesn't hurt so 🤷)

    internal 
    opened by G-Rath 2
  • Enable unicode regexp flag

    Enable unicode regexp flag

    I was looking over the codebase to see how easy it might be to implement a feature, and noticed you're not using the u flag and had some regexps that it helps with ({name}), and figured it'd make a good first contribution :)

    (I won't be offended if you don't want to land this either)

    internal 
    opened by G-Rath 2
  • Option to create rule docs if they don't exist?

    Option to create rule docs if they don't exist?

    I'm onboarding an existing repo, https://github.com/veritem/eslint-plugin-vitest/tree/097eb2649afac54039c4891971079434a55f0662, onto eslint-doc-generator. After pnpm add eslint-plugin-vitest npm-run-all --save-dev:

    $ pnpm run update:eslint-docs
    
    > [email protected] update:eslint-docs /Users/josh/repos/eslint-plugin-vitest
    > eslint-doc-generator
    
    file:///Users/josh/repos/eslint-plugin-vitest/node_modules/.pnpm/[email protected][email protected]/node_modules/eslint-doc-generator/dist/lib/generator.js:110
                throw new Error(`Could not find rule doc: ${relative(getPluginRoot(path), pathToDoc)}`);
                      ^
    
    Error: Could not find rule doc: docs/rules/no-skipped-tests.md
        at generate (file:///Users/josh/repos/eslint-plugin-vitest/node_modules/.pnpm/[email protected][email protected]/node_modules/eslint-doc-generator/dist/lib/generator.js:110:19)
        at async Command.<anonymous> (file:///Users/josh/repos/eslint-plugin-vitest/node_modules/.pnpm/[email protected][email protected]/node_modules/eslint-doc-generator/dist/lib/cli.js:114:9)
        at async Command.parseAsync (/Users/josh/repos/eslint-plugin-vitest/node_modules/.pnpm/[email protected]/node_modules/commander/lib/command.js:916:5)
        at async run (file:///Users/josh/repos/eslint-plugin-vitest/node_modules/.pnpm/[email protected][email protected]/node_modules/eslint-doc-generator/dist/lib/cli.js:89:5)
    
    Node.js v18.7.0
     ELIFECYCLE  Command failed with exit code 1.
    

    It'd be nice if there was a flag like, say, eslint-doc-generator --init that could initialize rule docs for me. Bonus points if it also adjusts the contents of the file to avoid the <rule> rule doc should have included one of these headers: Options, Config lint complaint.

    I'd be happy to send a PR!

    opened by JoshuaKGoldberg 2
  • [BUG] Prettier not found

    [BUG] Prettier not found

    Apparently the library expects that i installed prettier in my project.

    node:internal/errors:465
        ErrorCaptureStackTrace(err);
        ^
    
    Error [ERR_MODULE_NOT_FOUND]: Cannot find package 'prettier' imported from ...\node_modules\.pnpm\[email protected]_ypn2ylkkyfa5i233caldtndbqa\node_modules\eslint-doc-generator\dist\lib\markdown.js
        at new NodeError (node:internal/errors:372:5)
        at packageResolve (node:internal/modules/esm/resolve:954:9)
        at moduleResolve (node:internal/modules/esm/resolve:1003:20)
        at defaultResolve (node:internal/modules/esm/resolve:1218:11)
        at ESMLoader.resolve (node:internal/modules/esm/loader:580:30)
        at ESMLoader.getModuleJob (node:internal/modules/esm/loader:294:18)
        at ModuleWrap.<anonymous> (node:internal/modules/esm/module_job:80:40)
        at link (node:internal/modules/esm/module_job:78:36) {
      code: 'ERR_MODULE_NOT_FOUND'
    }
     ELIFECYCLE  Command failed with exit code 1.
    

    EXPECTED RESULT: shouldn't crash if prettier isn't my project.

    ACTUAL RESULT: crash if prettier isn't my project.

    ENVIROMENT: Windows 10 Node 16

    bug 
    opened by AndreaPontrandolfo 2
  • chore(deps-dev): bump @types/node from 18.11.17 to 18.11.18

    chore(deps-dev): bump @types/node from 18.11.17 to 18.11.18

    Bumps @types/node from 18.11.17 to 18.11.18.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies javascript 
    opened by dependabot[bot] 0
  • chore(deps-dev): bump eslint-plugin-jest from 27.1.7 to 27.2.0

    chore(deps-dev): bump eslint-plugin-jest from 27.1.7 to 27.2.0

    Bumps eslint-plugin-jest from 27.1.7 to 27.2.0.

    Release notes

    Sourced from eslint-plugin-jest's releases.

    v27.2.0

    27.2.0 (2022-12-31)

    Features

    Changelog

    Sourced from eslint-plugin-jest's changelog.

    27.2.0 (2022-12-31)

    Features

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies javascript 
    opened by dependabot[bot] 0
  • chore(deps-dev): bump @typescript-eslint/parser from 5.47.1 to 5.48.0

    chore(deps-dev): bump @typescript-eslint/parser from 5.47.1 to 5.48.0

    Bumps @typescript-eslint/parser from 5.47.1 to 5.48.0.

    Release notes

    Sourced from @​typescript-eslint/parser's releases.

    v5.48.0

    5.48.0 (2023-01-02)

    Bug Fixes

    Features

    • eslint-plugin: specify which method is unbound and added test case (#6281) (cf3ffdd)
    Changelog

    Sourced from @​typescript-eslint/parser's changelog.

    5.48.0 (2023-01-02)

    Note: Version bump only for package @​typescript-eslint/parser

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies javascript 
    opened by dependabot[bot] 0
  • chore(deps-dev): bump @types/jest from 29.2.4 to 29.2.5

    chore(deps-dev): bump @types/jest from 29.2.4 to 29.2.5

    Bumps @types/jest from 29.2.4 to 29.2.5.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies javascript 
    opened by dependabot[bot] 0
  • chore(deps-dev): bump release-it from 15.5.1 to 15.6.0

    chore(deps-dev): bump release-it from 15.5.1 to 15.6.0

    Bumps release-it from 15.5.1 to 15.6.0.

    Release notes

    Sourced from release-it's releases.

    Release 15.6.0

    • Fix specs for #966 (39a318b)
    • Move space (quickfix) (cfae247)
    • fix: use spec formdata (#958) (c21e6b6)
    • Fix npm.isCollaborator() on npm v9 (#966) (3bd405a)
    • feat(git): added option to use --exclude option on git describe (#963) (2b484bf)
    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies javascript 
    opened by dependabot[bot] 0
Releases(v1.4.1)
Owner
Bryan Mishkin
Software Engineer. Passionate about open source and helping developers maximize their productivity.
Bryan Mishkin
📦 Custom eslint rules for a better life.

Eslint Plugin Rimac Architecture When creating a new rule put it in the src/rules folder Name the file the same as the rule itself For example rimac/i

Rimac Technology 5 Nov 22, 2022
🔥 Monorepo for ESLint rules

Betsys ESLint Monorepo for all the ESLint tooling we use in Betsys ?? Click on a specific configuration or plugin to get more information and installa

Betsys 5 Dec 5, 2022
Grupprojekt för kurserna 'Javascript med Ramverk' och 'Agil Utveckling'

JavaScript-med-Ramverk-Laboration-3 Grupprojektet för kurserna Javascript med Ramverk och Agil Utveckling. Utvecklingsguide För information om hur utv

Svante Jonsson IT-Högskolan 3 May 18, 2022
Hemsida för personer i Sverige som kan och vill erbjuda boende till människor på flykt

Getting Started with Create React App This project was bootstrapped with Create React App. Available Scripts In the project directory, you can run: np

null 4 May 3, 2022
Kurs-repo för kursen Webbserver och Databaser

Webbserver och databaser This repository is meant for CME students to access exercises and codealongs that happen throughout the course. I hope you wi

null 14 Jan 3, 2023
Shared eslint configuration for Strapi v4 plugins & applications.

This package is currently under development and should be consider ALPHA in terms of state. I/We are currently accepting contributions and/or dedicated contributors to help develop and maintain this package.

Strapi Community 6 Oct 28, 2022
Authentication, Permissions and Payload Rules with Nextjs using ReactJ with Typescript

Auth with Next.js ?? About Authentication, Permissions and Payload Rules with Nextjs using ReactJS with Typescript ?? Status Finished project ✅ ✅ Feat

César Augusto Polidorio Machado 7 Dec 7, 2022
Manage Voximplant Platform `applications`, `rules` and `scenarios` from your own environment

VOXENGINE-CI Manage Voximplant Platform applications, rules, and scenarios from your own environment using @voximplant/apiclient-nodejs under the hood

Voximplant 21 May 6, 2022
Waypoint - Automatic Table of Contents Generator for Obsidian.md

Waypoint - Automatic Table of Contents Generator for Obsidian.md Do you use folders to categorize your notes and wish that Obsidian would show certain

Idrees 153 Jan 2, 2023
📝 Documentation Generator built with Deno

WORK IN PROGRESS ⚠️ Expect breaking changes ⚠️ ?? Vale Vale is a static documentation generator, designed for speed, simplicity and readability. Built

Marc Espín 20 Aug 16, 2022
Obsidian text generator Plugin Text generator using GPT-3 (OpenAI)

is a handy plugin for Obsidian that helps you generate text content using the powerful language model GP

null 356 Dec 29, 2022
Types generator will help user to create TS types from JSON. Just paste your single object JSON the Types generator will auto-generate the interfaces for you. You can give a name for the root object

Types generator Types generator is a utility tool that will help User to create TS Interfaces from JSON. All you have to do is paste your single objec

Vineeth.TR 16 Dec 6, 2022
A free and open-source Automatic Account Creator (AAC) written in Javascript Stack;

A free and open-source Automatic Account Creator (AAC) written in Javascript Stack. ????‍?? Techs Front-end Vue.js Vuex-module-decorators Vuetify.js N

null 24 Dec 17, 2022
🚀 Create dynamic and automatic changelogs for your project!

Versionator-js Create dynamic and automatic changelogs for your project!. Installation Use the package manager npm to install versionator-js. npm inst

Diego Sousa 6 Jan 6, 2023
chakra-radix-colors provides radix-ui color palettes, automatic dark mode, and acessible colors to chakra-ui applications

chakra-radix-colors chakra-radix-colors provides radix-ui color palettes, automatic dark mode, and acessible colors to chakra-ui applications. About C

null 11 Dec 30, 2022
A base project for Express with Typescript to create an API. Includes automatic input validation and Swagger UI generation.

(Typescript) Express API with input Validation and Swagger UI Thats a mouthful isn't it. Typescript: The language used, a superset of Javascript with

Tjeerd Bakker 6 Oct 26, 2022
An Anime Game launcher for Linux with automatic patching fixing detection of Linux/Wine and telemetry disabling

An Anime Game launcher for Linux with automatic patching fixing detection of Linux/Wine and telemetry disabling

An Anime Team 367 Jan 4, 2023
Automatic arxiv->ar5iv link replacement in Chrome.

Automatic arxiv->ar5iv link replacement in Chrome. This chrome extension will automatically replace arxiv.org/pdf/* links with ar5iv links for more we

yobi byte 44 Oct 29, 2022
An interface for an Automatic Ticket Vending Machine

ATVM-INTERFACE It is an interface for an Automatic Ticket Vending Machine. Try The Web Application! - Book your Ticket At Railway Stations, ATVMs (Aut

AMEY THAKUR 7 Apr 28, 2022