Skip to content

EdenGottlieb/eslint-plugin-basad

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

eslint-plugin-basad

build-status version

tldr;

The first ESLint plugin for Jewish people.

Intro

An ESLint plugin that checks for files that don't have בס״ד (or any other string of your choice) at the top.

This is useful for enforcing religious compliance and/or spiritual devotion among your dev team. I won't be offended if you choose to use it for more mundane or silly matters such as organizational documentation standards.

Installation

Install ESLint either locally or globally.

$ npm install eslint --save-dev

If ESLint is installed globally, the plugin needs to be installed globally as well.

$ npm install eslint-plugin-basad --save-dev

Basic Configuration

Add the plugins property to your .eslintrc file and specify eslint-plugin-basad as a plugin.

{
  "plugins": [
    "basad"
  ]
}

Then, turn on the plugin by adding it to the rules section.

{
  "plugins": [
    "basad"
  ],
  "rules": {
    "basad/basad": 2
  }
}

The default configuration will check that the first line of each file is a comment containing the strings basad or בס״ד and generate an error if it doesn't.

Custom Configuration

You can configure eslint-plugin-basad with several options.

  1. Severity (0 - allow, 1 - warning, 2 - error)

  2. Custom Matcher (string|[string]) - if provided, replaces default strings expected. Leave null to use the default ['basad', 'בס״ד']

  3. Options:

    • allowAnywhere: Allows matching for all of the comments in the file, not only in the first line (default: false)
    • ignoreCase: Makes the rule case-insensitive. (default: false)

Note: only Severity is required.

###Examples

"basad/basad": 2
"basad/basad": [2, "customMatch"]
"basad/basad": [
	2,
	["customMatch1", "customMatch2"]
]
"basad/basad": [
	2,
	["customMatch1", "customMatch2"],
	{
		"ignoreCase": true,
		"allowAnywhere": true
	}
]
"basad/basad": [
	2,
	null,
	{
		"ignoreCase": true,
		"allowAnywhere": true
	}
]

Contributing

Feel free to create PRs with additional features, bug fixes, general improvements, and anything else really. Please take note that this plugin is dead simple by design - zero dependencies and minimal code. Any complication added will need to be justified properly.

License

eslint-plugin-basad is licensed under the MIT License.

About

The first ESLint plugin for Jewish people.

Resources

Stars

Watchers

Forks

Packages

No packages published