Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/hsubox76/petty-af
Code commenter to make you feel bad about your code
https://github.com/hsubox76/petty-af
Last synced: 1 day ago
JSON representation
Code commenter to make you feel bad about your code
- Host: GitHub
- URL: https://github.com/hsubox76/petty-af
- Owner: hsubox76
- Created: 2019-01-18T17:56:39.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2019-01-23T18:10:41.000Z (almost 6 years ago)
- Last Synced: 2024-08-09T09:40:32.385Z (3 months ago)
- Language: JavaScript
- Size: 28.3 KB
- Stars: 49
- Watchers: 2
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# petty-af
Code commenter to make you feel bad about your code.## Overview
petty-af was inspired by [prettier](https://github.com/prettier/prettier),
the popular code formatting tool.The similarities end there. It does not modify your code and only adds
comments. The comments are not helpful hints but
are passive aggressive judgements about your coding style.## Installing
In your repo:
```
npm install petty-af
```
or
```
yarn add petty-af
```Or you could globally install it (but why would you??):
```
npm install -g petty-af
```## Usage
Locally
```
./node_modules/.bin/petty-af [files]
```Globally
```
petty-af [files]
```### Option
Yeah there's only one option. Hey this is an opinionated formatter. You knew
what you were getting into. The option is
```
--copy
```
This writes out results into a new file (`*.js` becomes `*.pettified.js`)
instead of ruining your current one.## What Does It Do?
It only does 2 things right now, complain about callback depth and function
length. But I'm planning to add more.## Philosophy
The core inspiration for this project is "Wouldn't it be funny if
you removed a letter from **prettier**, thus spelling **pettier**?
What would a tool like that do?" The exact name is unfortunately not
available as such but the spirit remains.The more useful takeaway is it's a fun way to demo that you can do a lot
using existing tools that work with ASTs
(Abstract Syntax Trees). The main tools doing the heavy lifting here are
[@babel/parser](https://babeljs.io/docs/en/next/babel-parser)
and [@babel/traverse](https://babeljs.io/docs/en/next/babel-traverse).- @babel/parser parses the code and creates the AST.
- @babel/traverse traverses the AST for you so you don't have to remember how
to do recursion.The plan is to write some blog posts explaining how anyone can do this.
## Contributing
Yeah go for it. I don't really know how open source works but I'm sure we can
figure it out.