betterer
prettier
betterer | prettier | |
---|---|---|
5 | 443 | |
563 | 48,347 | |
- | 0.7% | |
4.3 | 9.8 | |
16 days ago | 1 day 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.
betterer
-
How to Effortlessly Improve a Legacy Codebase Using Robots
We first took a shot at addressing this gradually using a tool called Betterer, which works by taking a snapshot of the state of a set of errors, warnings, or undesired regular expressions in the codebase and surfacing changes in pull request diffs. Betterer had served us well in the past, such as when it helped us deprecate the Enzyme testing framework in favor of React testing library. However, because there were so many instances of noImplicitAny errors in the codebase, we found that much like snapshot tests, reviewers had begun to ignore Betterer results and we weren’t in fact getting better at all. Begrudgingly, we removed the rule from our Betterer tests and agreed to find a different way to enforce it. Luckily, this decision took place just in time for Snoosweek (Reddit’s internal hack week) so I was able to invest a few days into adding a new automation step to ensure incremental progress toward adherence to this rule.
-
Betterer v5.0.0 5️⃣
Check out the beast of a PR here (and yes, it took me three branches to get it right 😅)
-
Incrementally adding Stylelint rules with Betterer
I just released v4.0.0 of Betterer 🎉 (now with sweet new docs!) and it has a bunch of simplified APIs for writing tests. And just before I shipped it, I got an issue asking how to write a Stylelint test, so let's do it here and explain it line by line:
-
Conventions Don’t Matter – What Matters Is Consistency
You may think that is a bad idea, and stops innovation and adopting new trends and technologies. I dare to disagree. New conventions can be agreed on, and when a new convention is agreed on, it should be used in the codebase from that day on. Either by refactoring the whole code base to follow the new convention, which should be doable if the previous convention was followed carefully, or by using tools such as phenomnomnominal/betterer to incrementally adopt a new convention, and stop anyone from adding new code that does not follow the newly agreed convention. It is equally important to document the agreed conventions and keep the documentation up-to-date over time in addition to making sure everyone on the team hears about and understands the agreed conventions.
-
Lazy debug logging for Node.js
I have a tool that I've been working on for a while, and debugging it can be kind of a pain - especially when it's running inside VS Code. It'd be nice to have an easy way to get information about what is going on when the tool runs, without having to manually write a bunch of debug logging code and release a new version. That means that the usual approaches are not going to work:
prettier
-
Mastering Code Quality: Setting Up ESLint with Standard JS in TypeScript Projects
In this post, I also use ESLint + Standard JS as my code formatting tools. Formatting JS/TS code by using ESLint is also subjective and opinionated, arguably most people would rather use Prettier instead, which provides more configurable options.
-
How to make ESLint and Prettier work together? 🛠️
Let's be honest - setting up tools for a new project can be a frustrating process. Especially when you want to jump straight to coding part. This is often the case with ESLint and Prettier, two popular tools in the JavaScript ecosystem that can sometimes interfere with each other when it comes to code formatting. Fortunately, there's a simple solution to this process, and it's called eslint-plugin-prettier.
-
My opinion about opinionated Prettier: 👎
From my point of view, Prettier doesn't work well for styling with utility classes. For a discussion see Prettier#7863 or Prettier#5948.
-
Shared Data-Layer Setup For Micro Frontend Application with Nx Workspace
Prettier: An opinionated code formatter that enforces a consistent code style.
-
To Review or Not to Review: The Debate on Mandatory Code Reviews
Automating code checks with static code analysis allows us to enforce code styling effectively. By integrating tools into our workflow, we can identify errors at an early stage, while coding instead of blocking us at the end. For instance, flake8 checks Python code for style and errors, eslint performs similar checks for JavaScript, and prettier automatically formats code to maintain consistency.
-
Setting up Doom Emacs for Astro Development
So anyways, I wanted to hook up Emacs with Astro support. For now, I've just been roughing it out there and running Prettier by itself and turning off save on format and auto-complete. It's been scary.
-
Biome.js : Prettier+ESLint killer ?
If you're a developer, you're surely familiar with Prettier and ESLint. With over 8 years of existence, they have established themselves as references in the JavaScript ecosystem.
-
Most basic code formatting
prettier is used to format you text
-
How to use Lefthooks in your node project?
No formatting inconsistencies: The committed code should follow the organization's code formatting standards(prettier or pretty-quick).
-
Git Project Configuration With Husky and ESLint
Let’s walk through the steps for a one-time setup to configure husky pre-commit and pre-push hooks, ESLint with code styles conventions, prettier code formatter, and lint-staged. Husky automatically runs a script on each commit or push. This is useful for linting files to enforce code styles that keeps the entire code base following conventions.
What are some alternatives?
peeky - A fast and fun test runner for Vite & Node 🐈️ Powered by Vite ⚡️
black - The uncompromising Python code formatter
vitest - Next generation testing framework powered by Vite.
JS-Beautifier - Beautifier for javascript
n - Node version management
dprint - Pluggable and configurable code formatting platform written in Rust.
unimported - Find and fix dangling files and unused dependencies in your JavaScript projects.
ESLint - Find and fix problems in your JavaScript code.
action-junit-report - Reports junit test results as GitHub Pull Request Check
prettier-plugin-organize-imports - Make Prettier organize your imports using the TypeScript language service API.
WebdriverIO - Next-gen browser and mobile automation test framework for Node.js
Standard - 🌟 JavaScript Style Guide, with linter & automatic code fixer