typescript-eslint
eslint-plugin-jsx-a11y
typescript-eslint | eslint-plugin-jsx-a11y | |
---|---|---|
129 | 19 | |
15,906 | 3,523 | |
0.5% | 0.2% | |
9.8 | 8.2 | |
4 days ago | 3 months ago | |
TypeScript | JavaScript | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
typescript-eslint
-
How to build a MCP (model context protocol) server for UI libraries + repo
TypeScript Best Practices
- BookMS
-
JavaScript's New Superpower: Explicit Resource Management
Here’s some relevant discussion about some of the footguns:
https://github.com/typescript-eslint/typescript-eslint/issue...
https://github.com/tc39/proposal-explicit-resource-managemen...
I imagine there will eventually be lint rules for this somewhere and many of those using such a modern feature are likely to be using static analysis via eslint to help mitigate the risks here, but until it’s more established and understood and lint rules are fleshed out and widely adopted, there is risk here for sure.
Seems a bit like popular lint library maintainers are overly wary to add rules before it’s better understood through wider adoption and potential adopters are wary of using it until footguns are mitigated — not quite a standstill but maybe not great either
-
Set up a new React project: Vite, TypeScript, ESLint, Prettier and pre-commit hooks
However, I prefer more thorough rules like checking unused type imports or type narrowing problems. In order to enable these checks, we need to tweak eslint.config.js. I prefer simply adding recommendedTypeChecked config to the project. Don't forget that you also need to adapt parserOptions to this change.
-
Eslint rules for dealing with Enums peculiarities
EsLint: New to ESLint? It helps you write better JavaScript and TypeScript. https://typescript-eslint.io/
-
TypeScript strictly typed - Part 1: configuring a project
For ESLint + TypeScript ESLint, with the new flat config eslint.config.js:
-
Mastering Type-Safe JSON Serialization in TypeScript
Typescript-eslint can assist in this task. This tool helps identify all instances of unsafe any usage. Specifically, all usages of JSON.parse can be found and it can be ensured that the received data's format is checked. More about getting rid of the any type in a codebase can be read in the article Making TypeScript Truly "Strongly Typed".
-
Oxlint – written in Rust – 50-100 Times Faster than ESLint
> Only lint files that have changed? How hard that is?
Quite hard, especially since type-aware rules from e.g. https://typescript-eslint.io/ mean that changing the type of a variable in file A can break your code in file B, even if file B hasn't changed.
-
How to Do a TypeScript Conversion: an opinionated take on gradual conversions
The article only touches this: when converting to TypeScript, `any` is useful, but in the end you don't want this type in your codebase - so don't forget to use typescript-eslint [0] and turn on those no-unsafe-* rules which guard against `any` leaking into your code.
[0] https://github.com/typescript-eslint/typescript-eslint
- How do I add additional rules to my typescript-eslint settings?
eslint-plugin-jsx-a11y
- Unlocking the Web for All: Essential Frontend Accessibility Resources (WCAG Focus)
-
Getting started with React by building a Pokemon search application
> [email protected] build > react-scripts build Creating an optimized production build... Compiled with warnings. [eslint] src/App.js Line 64:15: The href attribute requires a valid value to be accessible. Provide a valid, navigable address as the href value. If you cannot provide a valid href, but still need the element to resemble a link, use a button and change it with appropriate styles. Learn more: https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/HEAD/docs/rules/anchor-is-valid.md jsx-a11y/anchor-is-valid Search for the keywords to learn more about each warning. To ignore, add // eslint-disable-next-line to the line before. File sizes after gzip: 58.34 kB (-1 B) build/static/js/main.b3bd969c.js 1.78 kB build/static/js/453.bd7a2879.chunk.js 677 B build/static/css/main.af098727.css The project was built assuming it is hosted at /. You can control this with the homepage field in your package.json. The build folder is ready to be deployed. You may serve it with a static server: serve -s build Find out more about deployment here: https://cra.link/deployment
- Tailwind Handbook - Part II
-
Speeding up the JavaScript ecosystem – Polyfills gone rogue
I try to focus on the issues rather than individuals, but the root of the problems in the listed eslint plugin libraries points to ljharb.
If you do some simple digging into these libraries, you will find that these types of commits are quite common within them.
https://github.com/jsx-eslint/eslint-plugin-react/commit/e1d...
https://github.com/jsx-eslint/jsx-ast-utils/commit/bad51d062...
https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/commit/...
He would rather see the download count of these polyfill libraries https://github.com/ljharb/ljharb#projects-i-maintain increase, compared to assessing the health of the JavaScript ecosystem.
-
The Best ESLint Rules for React Projects
jsx-a11y is all about ensuring your DOM elements are accessible. This plugin will prompt you to include the correct ARIA attributes such as labels and roles, in addition to things like alt text.
-
Create React UI Lib 1.1: Ladle and ESLint
You can also add ESLint now (props to @femincan for the suggestion). It comes with recommended settings for these plugins: typescript, prettier, react, react-hooks, jsx-a11y.
-
Light UI component library but as good as MUI (or atleast close to it)?
WAI-ARIA is important if you are writing custom components and do not follow the general rules for HTML tags. For example, if you are using a `div` as a button, you would need to add tags for accessibility. Yes, there are some other instances, like adding alt text to images or adding a title to an iframe, but these can all be handled with warnings in the editor using the jsx-a11y eslint plugin. Some other nuance will be up to the developer to make sure they follow the proper accessibility structure, but most use cases are outlined in the Daisy UI tailwind examples, they do a great job of using HTML properly and give fully accessible examples for their components. Take a look at the accordion example, you can tab into the accordion and use the arrow keys to navigate.
-
Introducing react.dev: the new React docs site!
jsx-a11 (ESLint plugin) checks a couple other things.
-
Newbie question about ARIA/ADA Compliance
When using react, I've been using the recommended rules from eslint-plugin-jsx-a11y. Am I naive for relying a lot on that to get a11y right? Of course I try to write semantic html too and do research for each topic, but it's a bit overwhelming and I feel like the eslint rules help me a lot.
-
Can someone help me locate documentation where this eslint rule is talked about?
I found the documentation but no solution here: https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/main/docs/rules/label-has-associated-control.md
What are some alternatives?
eslint-config-google - ESLint shareable config for the Google JavaScript style guide
react-a11y-announcer - React Announcer for Screen Reader Accessibility
ts-node - TypeScript execution and REPL for node.js
agnostic-axe - Framework agnostic accessibility reporter, powered by axe-core
ts-standard - Typescript style guide, linter, and formatter using StandardJS
jest-axe - Custom Jest matcher for aXe for testing accessibility ♿️🃏