Let’s demystify the secrets of modern JavaScript tooling. In this workshop, you will: learn how linters, compilers, and code transforms work, write your own ESLint and Babel plugins, learn when to apply these skills to help your team, and deepen your understanding of computer languages.
This is a workshop given at DinosaurJS. I'd like to give it again, it was really awesome. It takes about three hours in-person, and brings someone from zero to hero on linting rules and code transformation.
If you're interested in doing this workshop (online or in person), reply on this Tweet or contact me however you can: https://twitter.com/WillsLab/status/1010238287385169921
Resources in rough order:
- http://astexplorer.net/
- https://github.com/eslint/generator-eslint
- https://github.com/eslint/eslint/blob/master/lib/rules/no-nested-ternary.js
- https://github.com/babel/babel/blob/master/packages/babel-plugin-transform-shorthand-properties/src/index.js
- https://github.com/babel/awesome-babel
James Kyle's great resources:
- https://github.com/jamiebuilds/babel-handbook
- https://the-super-tiny-compiler.glitch.me/traverser
- https://www.youtube.com/watch?v=ZYFOWesCm_0
Kent C. Dodd's great resources:
- https://frontendmasters.com/workshops/code-transformation-linting-asts/
- https://egghead.io/lessons/javascript-introduction-to-abstract-syntax-trees
- https://egghead.io/lessons/javascript-use-astexplorer-net
- https://www.youtube.com/watch?v=VBscbcm2Mok
My past talks on the subject:
Demo app: https://github.com/gothinkster/realworld Testing utils: https://github.com/kentcdodds/react-testing-library