All Projects → FullstackAcademy → eslint-config-fullstack

FullstackAcademy / eslint-config-fullstack

Licence: MIT license
A complete ESLint config file to help students avoid errors and learn best practices

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to eslint-config-fullstack

eslint-config-mingelz
A shared ESLint configuration with Chinese comments. 一份带有完整中文注释的 ESLint 规则。
Stars: ✭ 15 (-6.25%)
Mutual labels:  eslint-config, eslintconfig
eslint-config-hardcore
The most strict (yet practical) ESLint config. 34 plugins. 1047 rules.
Stars: ✭ 168 (+950%)
Mutual labels:  eslint-config, eslintconfig
eslint-config-xo-flow
ESLint shareable config for Flow to be used with eslint-config-xo
Stars: ✭ 24 (+50%)
Mutual labels:  eslint-config, eslint-rules
wemake-frontend-styleguide
Set of the strictest linters for your next frontend app
Stars: ✭ 67 (+318.75%)
Mutual labels:  eslint-config, eslint-shareable-configs
eslint-config-get-off-my-lawn
A highly opinionated, sharable config of ESLint rules to produce beautiful, readable JavaScript.
Stars: ✭ 44 (+175%)
Mutual labels:  eslint-config, eslint-rules
eslint-config-leapfrog
Set of ESLint rules for JavaScript projects at Leapfrog.
Stars: ✭ 15 (-6.25%)
Mutual labels:  eslint-config, eslint-rules
eslint-config-with-prettier
Eslint config with prettier
Stars: ✭ 39 (+143.75%)
Mutual labels:  eslint-config, eslintrc
eslint-config
Default configurations for eslint
Stars: ✭ 13 (-18.75%)
Mutual labels:  eslintconfig, eslintrc
eslint-config
An ESLint shareable config that I used in my projects
Stars: ✭ 15 (-6.25%)
Mutual labels:  eslint-config, eslintconfig
eslint-config
ClearTax's ESLint Config
Stars: ✭ 27 (+68.75%)
Mutual labels:  eslint-config, eslint-shareable-configs
eslint-define-config
Provide a defineConfig function for .eslintrc.js files
Stars: ✭ 61 (+281.25%)
Mutual labels:  eslint-config, eslintconfig
eslint-config-galex
hopefully the last eslint config you'll ever need - customizable & modern best practices for JS, TS, Node, React, Remix, Next, Jest, testing-library & storybook
Stars: ✭ 166 (+937.5%)
Mutual labels:  best-practices, eslint-config
Eslint Plugin Unicorn
Various awesome ESLint rules
Stars: ✭ 2,157 (+13381.25%)
Mutual labels:  eslint-config, eslint-rules
Xo
❤️ JavaScript/TypeScript linter (ESLint wrapper) with great defaults
Stars: ✭ 6,277 (+39131.25%)
Mutual labels:  best-practices, eslint-rules
Gsoc Faqs
An unofficial Google Summer of Code Frequently Asked Questions
Stars: ✭ 104 (+550%)
Mutual labels:  students
Snape
Snape is a convenient artificial dataset generator that wraps sklearn's make_classification and make_regression and then adds in 'realism' features such as complex formating, varying scales, categorical variables, and missing values.
Stars: ✭ 155 (+868.75%)
Mutual labels:  students
Awesome Openminds Team
A Repository for students, geeks, programmers, and designers
Stars: ✭ 101 (+531.25%)
Mutual labels:  students
Schoolerp
SchoolERP Project is School ERP System which has various features as students management,accounts management,attendance management,faculty management,HR management,other expenses management
Stars: ✭ 95 (+493.75%)
Mutual labels:  students
Academiccontent
Free tech resources for faculty, students, researchers, life-long learners, and academic community builders for use in tech based courses, workshops, and hackathons.
Stars: ✭ 2,196 (+13625%)
Mutual labels:  students
Lessonmaterials
Open Sourced Curriculum and Lessons for an Introductory AI/ML Course
Stars: ✭ 142 (+787.5%)
Mutual labels:  students

eslint-config-fullstack

Built at Fullstack Academy npm version Build Status Greenkeeper badge

An ESLint Shareable Config for Fullstack Education Group Students

Installation

Global

Global installation is recommended for Fullstack Education Group students. To install or upgrade the config along with its peer dependencies:

npm install -g eslint eslint-config-fullstack eslint-plugin-react babel-eslint

In your global ~/.eslintrc.json file:

{
    "extends": "fullstack"
}

Note that the eslint-config- portion of the module name is assumed by ESLint.

Local

A specific project can extend this definition by including eslint eslint-config-fullstack eslint-plugin-react babel-eslint as saved dev-dependencies, and defining a local .eslintrc.json. Project-level eslintrc files are recommended to be set as root, which prevents users' global configs from producing inconsistent results:

{
    "extends": "fullstack",
    "root": true
}

Note on Parsing

This config now uses babel-eslint as the parser by default. This enables linting some relatively modern code which ESLint's default parser does not handle, and was necessary for this project to lint itself. You still need to install babel-eslint manually as it is a peer dependency of this config.

Extending

Any rules added to your global or local .eslintrc.json files will override the rules defined by this package. For example:

{
    "extends": "fullstack",
    "rules": {
        "semi": [1, "always"]
    }
}

This turns on enforcing the use of semicolons, a rule which is silenced by default in the current version of the eslint-config-fullstack package.

Background

The ESLint linting system is a popular one for its support of ES6 syntax, pluggable rules, automatic rule names in warning messages, and shareable / extendable config files.

This npm package provides a thorough starting config file. It was developed at Fullstack Academy of Code / Grace Hopper Academy to use in an educational setting, helping students to avoid definite errors but also pick up best practices.

Because it defaults to supporting multiple environments (e.g. Node, browsers, Jasmine, Mocha, etc.) it is probably not suitable for general production, where one might want a finer-grained and more restrictive config. However it is easy to override and extend this base config with custom rules, as explained above and in the ESLint docs.

License

MIT

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].