Topics / #code-quality
Code-quality projects on GitHub
Tooling and practices for keeping codebases clean and correct.
As of , the most-starred Code-quality projects on GitHub are ponytail (165.2K stars), javascript (148.1K stars) and nodebestpractices (105.7K stars). GitHub.Locker tracks 100 Code-quality repositories with 2M stars combined. The fastest-growing on October 16 was ponytail, with +758 stars in a day.
Hot right now
Most stars gained in a day · Oct 16
+758ponytail
DietrichGebert/ponytail · ★ 165.2KPonytail is a skill for AI coding agents that channels the laziest senior dev in the room: the agent writes only what the task needs, on the belief that the best code is the code you never wrote.
+214strix
usestrix/strix · ★ 69.1KStrix is an open-source tool that uses autonomous AI agents to pentest your application like real hackers: it runs your code dynamically, finds vulnerabilities, and proves them with working exploits instead of just flagging suspicious patterns.
vibe-coding-toolkit
soumatheusgomes/vibe-coding-toolkit · ★ 1.3KA curated, battle-tested AI-coding workflow for Claude Code (and partly Codex): ready-to-copy plugins, subagent orchestration patterns, quality-gate configs, and prompt templates extracted from a real production fintech codebase.
+86anti-slop
miqdadbadjuber/anti-slop · ★ 6.3Kantislop is a rulebook for your AI coding agent so it stops producing generic 'AI slop' - cliched UI, copy, and code. It is a filter, not a style guide: it bans the slop but prescribes no colors, fonts, or layouts.
The all-time top
100 projects · by stars
- 165.2K
#1 · DietrichGebert/ponytailponytail
Ponytail is a skill for AI coding agents that channels the laziest senior dev in the room: the agent writes only what the task needs, on the belief that the best code is the code you never wrote.
- 148.1K
#2 · airbnb/javascriptjavascript
A JavaScript style guide from Airbnb covering conventions for types, variables, functions, classes, modules, naming, whitespace, and more, described as 'a mostly reasonable approach to JavaScript'.
- 105.7K
#3 · goldbergyoni/nodebestpracticesnodebestpractices
A curated, community-maintained list that summarizes the top Node.js best practices, style guides, and architectural tips, organized into chapters covering architecture, error handling, code style, testing, production readiness, security, performance, and Docker.
- 4

clean-code-javascript
94.7Kryanmcdermott/clean-code-javascript · JavaScriptThis is a guide that adapts the software engineering principles from Robert C. Martin's book 'Clean Code' specifically for JavaScript, with practical bad/good code examples.
- 5

strix
69.1Kusestrix/strix · PythonStrix is an open-source tool that uses autonomous AI agents to pentest your application like real hackers: it runs your code dynamically, finds vulnerabilities, and proves them with working exploits instead of just flagging suspicious patterns.
- 6

dive
54.6Kwagoodman/dive · Godive is a CLI tool that breaks a Docker or OCI image into its layers, shows what each layer contains, and points out where the image wastes space so you can shrink it.
- 7
prettier
52.4Kprettier/prettier · JavaScriptPrettier is an opinionated code formatter: point it at a project and it keeps the whole codebase in one consistent code style.
- 8
ruff
50.1Kastral-sh/ruff · RustRuff is an extremely fast Python linter and code formatter written in Rust, built to replace tools like Flake8, Black, isort, pydocstyle, pyupgrade, and autoflake with a single command-line tool.
- 9
open-code-review
47.5Kalibaba/open-code-review · GoAn AI-powered code review CLI born inside Alibaba: it reads Git diffs, sends changed files to a configurable LLM agent, and returns structured review comments with line-level precision.
- 10

shellcheck
40.2Kkoalaman/shellcheck · HaskellShellCheck is a free static analysis tool for shell scripts: it reads your bash/sh code and reports warnings and suggestions for problems in it.
- 11

googletest
39.6Kgoogle/googletest · C++Google's testing and mocking framework for C++, built on the xUnit architecture. It merges the formerly separate GoogleTest and GoogleMock projects, which Google now maintains and releases together.
- 12

husky
35.4Ktypicode/husky · JavaScriptHusky is a tool that makes it easy to set up and manage Git hooks, so scripts run automatically on Git events like commits or pushes.
- 13

p3c
30.9Kalibaba/p3c · KotlinAlibaba Java Coding Guidelines (P3C): Java coding rules distilled from the accumulated best practices of Alibaba Group's technical teams, shipped as PMD static-analysis rules and IDE plugins.
- 14

standard
29.4Kstandard/standard · JavaScriptJavaScript Standard Style — a zero-configuration style guide, linter and automatic code fixer for JavaScript. It enforces one consistent style and catches programmer errors early, with nothing to set up.
- 15

project-guidelines
29.4Kelsewhencode/project-guidelines · JavaScriptA public set of best practices for JavaScript projects, written and gathered by the elsewhen team - numbered rules for Git, documentation, environments, dependencies, testing, code style, APIs and more.
- 16

eslint
27.6Keslint/eslint · JavaScriptESLint is a linter for JavaScript: a tool that identifies and reports on patterns found in ECMAScript/JavaScript code, so problems get caught before they ship.
- 17

testify
26.2Kstretchr/testify · GoTestify is a toolkit of Go packages that add assertions, mocking and test suites on top of the standard library, so tests are easier to write and failures are easy to read.
- 18
biome
26Kbiomejs/biome · RustBiome is a toolchain for web projects: one fast tool that both formats and lints JavaScript, TypeScript, JSX, JSON, CSS and GraphQL, run from the CLI or your editor via LSP.
- 19

idiomatic.js
25.7Krwaldron/idiomatic.jsA style guide document laying out principles for writing consistent, idiomatic JavaScript code, covering whitespace, syntax, naming, type checking, and comments.
- 20

javascript-testing-best-practices
24.6Kgoldbergyoni/javascript-testing-best-practices · JavaScriptA free, in-depth guide with 50+ best practices for testing JavaScript and Node.js applications, compiled and curated from dozens of blog posts, books and tools.
- 21

FizzBuzzEnterpriseEdition
23.9KEnterpriseQualityCoding/FizzBuzzEnterpriseEdition · JavaFizzBuzz Enterprise Edition is a satirical Java project: the trivial FizzBuzz exercise deliberately rebuilt as if it were serious, architecture-heavy enterprise software.
- 22

angular-styleguide
23.6Kjohnpapa/angular-styleguide · Vim SnippetAn opinionated style guide for Angular: documented conventions for syntax, structure, and building Angular applications, written by John Papa for development teams.
- 23

tools
23.4Krome/tools · RustRome is a unified toolchain for JavaScript, TypeScript, and the web: one program that formats, lints, and bundles code, built to replace separate tools like Babel, ESLint, webpack, Prettier, and Jest.
- 24

eng-practices
23.3Kgoogle/eng-practicesGoogle's Engineering Practices documentation — a public collection of guides distilling the engineering practices Google applies across all languages and projects, currently focused on its Code Review Guidelines.
- 25
oxc
23.1Koxc-project/oxc · RustOxc — the Oxidation Compiler — is a collection of high-performance tools for JavaScript and TypeScript written in Rust: a parser, linter, formatter, transformer, minifier, and module resolver.
- 26

flow
22.3Kfacebook/flow · RustFlow is a static typechecker for JavaScript: it adds static typing to your code to catch errors early and improve quality. The project goes back to 2014 and is written in Rust.
- 27
mypy
20.7Kpython/mypy · PythonMypy is a static type checker for Python: you add type hints (PEP 484) to your code and it warns you when you use those types incorrectly, catching bugs without even running the program.
- 28
phpunit
20.1Ksebastianbergmann/phpunit · PHPPHPUnit is a programmer-oriented testing framework for PHP, built on the xUnit architecture - the classic pattern for unit testing frameworks.
- 29

SwiftLint
19.8Krealm/SwiftLint · SwiftSwiftLint is an open-source linter that enforces Swift style and conventions — rules generally accepted by the Swift community, loosely based on the now-archived GitHub Swift Style Guide.
- 30

golangci-lint
19.4Kgolangci/golangci-lint · GoA fast linters runner for Go: one tool that runs over a hundred Go linters on your codebase in a single pass.
- 31
commitlint
18.8Kconventional-changelog/commitlint · TypeScriptcommitlint checks whether your commit messages meet the conventional commit format, linting them against a configurable rule set.
- 32
keploy
18.6Kkeploy/keploy · GoKeploy is an open-source tool that auto-generates API and integration tests from real traffic: it records your API calls, database queries and streaming events, then replays them as tests.
- 33

diff-so-fancy
18.1Kso-fancy/diff-so-fancy · PerlA command-line tool that turns git's machine-readable diff output into human-readable text, so you can review changes and spot defects faster.
- 34

guide
17.7Kuber-go/guide · MakefileIt's the Uber Go Style Guide — an open document describing the patterns and conventions Uber uses when writing Go code.
- 35

PHP-Parser
17.5Knikic/PHP-Parser · PHPA parser written in PHP that turns PHP code into an abstract syntax tree (AST). Its purpose is to simplify static code analysis and manipulation of PHP code.
- 36
semgrep
17.1Ksemgrep/semgrep · CSemgrep is a fast, open-source static analysis tool that scans source code to find bugs, security issues, and enforce coding standards using rules that look like ordinary code rather than abstract syntax trees or regex.
- 37

ruby-style-guide
16.5Krubocop/ruby-style-guideA community-driven Ruby coding style guide: it recommends best practices so real-world Ruby programmers can write code that other people can maintain. It deliberately favors established real-world usage over unproven ideals.
- 38

typescript-eslint
16.4Ktypescript-eslint/typescript-eslint · TypeScripttypescript-eslint is the monorepo that provides the tooling enabling ESLint to understand and lint TypeScript code, including the parser and plugin rules.
- 39
ast-grep
16.3Kast-grep/ast-grep · Rustast-grep (sg) is a CLI tool for structural search, linting and rewriting of source code — like grep, but matching the abstract syntax tree instead of raw text.
- 40

Modern-CPP-Programming
16.2Kfederico-busato/Modern-CPP-Programming · HTMLA free, open-access Modern C++ Programming course by Federico Busato covering standards from C++03 to C++26 — from language basics to advanced features, tools and optimization.
- 41

infer
15.7Kfacebook/infer · OCamlInfer is a static analysis tool that finds bugs in Java, C, C++, and Objective-C code by analyzing it without running it. It lives under Facebook's GitHub and is written in OCaml.
- 42

pyright
15.7Kmicrosoft/pyright · PythonPyright is a full-featured, standards-based static type checker for Python, built by Microsoft for speed on large codebases.
- 43

mockito
15.5Kmockito/mockito · JavaMockito is a mocking framework for unit tests written in Java, and the most popular one: it creates mock objects so you can test a class in isolation from its dependencies.
- 44

react-doctor
15Kmillionco/react-doctor · TypeScriptReact Doctor is a code-review tool that scans React code for the kind of mistakes AI coding agents tend to introduce, so bad patterns get caught before they ship.
- 45

tokei
15KXAMPPRocky/tokei · RustTokei is a CLI tool that counts code statistics (files, lines, blanks, comments, code) grouped by programming language across your codebase.
- 46

laravel-ide-helper
15Kbarryvdh/laravel-ide-helper · PHPA Laravel package that generates helper files so your IDE gives accurate autocompletion. Everything is generated from the files in your project, so the results stay up to date.
- 47
static-analysis
14.8Kanalysis-tools-dev/static-analysis · RustA curated list of static analysis (SAST) tools, linters and formatters for all programming languages, config files and build tools, focused on tools that improve code quality.
- 48

pytest
14.6Kpytest-dev/pytest · Pythonpytest is a Python testing framework that makes it easy to write small tests, yet scales to support complex functional testing for applications and libraries.
- 49

naming-cheatsheet
14.2Kkettanaito/naming-cheatsheetA language-agnostic cheatsheet with guidelines for naming variables and functions in code, centered on the A/HC/LC (Action/High Context/Low Context) naming pattern.
- 50

phpstan
14.1Kphpstan/phpstan · PHPPHPStan is a static analysis tool for PHP that finds bugs in your code without actually running it, catching whole classes of errors before you even write tests.
- 51

ale
14Kdense-analysis/ale · Vim ScriptALE (Asynchronous Lint Engine) is a Vim/Neovim plugin that lints your code asynchronously as you type and can fix files, acting as a Language Server Protocol client for things like completion, go-to-definition, and hover info.
- 52

yapf
14Kgoogle/yapf · PythonYAPF is a Python code formatter based on clang-format: instead of just enforcing style rules, it calculates the best way to reformat your code to conform to a configured style, aiming to produce code as good as a programmer following the style guide would write.
- 53

rust-clippy
13.6Krust-lang/rust-clippy · RustClippy is a collection of over 800 lints that catches common mistakes in Rust code and nudges it toward idiomatic style. It runs alongside the compiler as a cargo subcommand.
- 54

PHP-CS-Fixer
13.6KPHP-CS-Fixer/PHP-CS-Fixer · PHPPHP CS Fixer is a tool that automatically fixes your PHP code to follow coding standards — unlike a plain linter, it does not just detect problems, it fixes them for you.
- 55

scalene
13.5Kplasma-umass/scalene · PythonScalene is a high-performance CPU, GPU, and memory profiler for Python. It is also the first profiler to add AI-powered optimization proposals, via providers like OpenAI, Azure, Bedrock, or local Ollama models.
- 56

lombok
13.5Kprojectlombok/lombok · JavaProject Lombok is a Java library that plugs into your editor and build tools to eliminate boilerplate: annotations generate getters, equals methods, builders, logging variables, and more.
- 57

pr-agent
13.4KThe-PR-Agent/pr-agent · PythonAn open-source, AI-powered code review agent for pull requests — the original open-source PR reviewer, now community-owned after being donated by Qodo.
- 58

swift-style-guide
13.1Kkodecocodes/swift-style-guideThis is the official Swift style guide used by Kodeco (formerly raywenderlich.com) to keep the Swift code in its books, tutorials, and starter kits consistent across many different authors.
- 59

rubocop
12.9Krubocop/rubocop · RubyRuboCop is a static code analyzer (linter) and code formatter for Ruby that enforces the community Ruby Style Guide out of the box, and it is also configurable to enforce your own style.
- 60

oss-fuzz
12.7Kgoogle/oss-fuzz · ShellOSS-Fuzz is Google's free continuous fuzzing service for open source software: it runs guided fuzzing nonstop to surface security vulnerabilities and stability bugs before attackers do.
- 61

hadolint
12.5Khadolint/hadolint · HaskellHadolint is a smarter Dockerfile linter written in Haskell that helps you build best-practice Docker images. It flags mistakes and bad patterns in your Dockerfile before you build the image.
- 62
knip
12.5Kwebpro-nl/knip · TypeScriptKnip is a free and open-source tool that finds unused files, dependencies and exports in your JavaScript and TypeScript projects, so you can cut them before you ship.
- 63

laravel-best-practices
12.3Kalexeymezenin/laravel-best-practicesA widely used community guide (12k+ stars) that collects best practices for writing Laravel applications. Each practice comes with a Bad and a Good code example, and the guide has been translated into 25 languages.
- 64

stylelint
11.5Kstylelint/stylelint · JavaScriptStylelint is a CSS linter that catches errors and enforces coding conventions in your stylesheets, with over 100 built-in rules for modern CSS.
- 65

inflector
11.3Kdoctrine/inflector · PHPDoctrine Inflector is a small PHP library that performs string manipulations with regard to uppercase/lowercase and singular/plural forms of words.
- 66

syntastic
11.2Kvim-syntastic/syntastic · Vim scriptSyntastic is a syntax checking plugin for Vim: it runs your files through external syntax checkers and displays the errors inside Vim, on demand or automatically whenever you save.
- 67

awesome-guidelines
11.2KKristories/awesome-guidelines · JavaScriptA curated list of programming style guides, best practices, and coding conventions — one page collecting links to official and community guidelines for dozens of languages, platforms, and tools.
- 68
sonarqube
11.1KSonarSource/sonarqube · JavaSonarQube is a continuous inspection platform that statically analyzes your code to find bugs, vulnerabilities, security hotspots, and maintainability issues, explaining exactly what to fix and why.
- 69

PHP_CodeSniffer
10.8Ksquizlabs/PHP_CodeSniffer · PHPPHP_CodeSniffer is a pair of PHP scripts: 'phpcs', which tokenizes PHP, JavaScript, and CSS files to detect violations of a defined coding standard, and 'phpcbf', which automatically fixes many of those violations.
- 70

mockery
10.7Kmockery/mockery · PHPA PHP mock object framework for unit testing: it builds test doubles (mocks) through a succinct, human-readable DSL, so your tests can call fakes instead of real objects.
- 71

super-linter
10.6Ksuper-linter/super-linter · ShellA ready-to-run bundle of linters and code analyzers that validates your source code, enforces best practices and consistent formatting across dozens of languages, and reports issues as console output and GitHub Actions status checks.
- 72

mason.nvim
10.5Kmason-org/mason.nvim · LuaIt's a portable package manager for Neovim: a plugin that installs and manages your editor's external tooling — LSP servers, DAP servers, linters, and formatters — from a single interface, wherever Neovim runs.
- 73

rector
10.4Krectorphp/rector · PHPRector is a PHP tool that instantly upgrades and refactors PHP codebases: it automates upgrades from PHP 5.3 up to 8.5 plus framework migrations, and can keep code quality high continuously via CI.
- 74
conc
10.4Ksourcegraph/conc · Goconc is a Go library — a 'toolbelt' for structured concurrency that makes common concurrent patterns in Go easier and safer than raw goroutines and sync primitives.
- 75

unmaintainable-code
10.2KDroogans/unmaintainable-codeThis is a satirical guide listing tongue-in-cheek techniques for deliberately writing code that is hard to read and maintain, repackaged from Roedy Green's original 'How To Write Unmaintainable Code' essay so it's easier to read and share on GitHub.
- 76

improve
9.2Kshadcn/improveIt's an agent skill that audits any codebase and writes implementation plans for other, cheaper models to execute - the expensive model does the thinking, cheap models do the typing.
- 77

repowise
7.8Krepowise-dev/repowise · PythonRepowise indexes a codebase once (code, dependency graph, git history, tests, docs, and architectural decisions) and then gives AI agents and developers cited answers, change-impact analysis, and concrete code-health fixes instead of making an agent rediscover the code every time.
- 78
closure-compiler
7.7Kgoogle/closure-compiler · JavaScriptA tool for making JavaScript download and run faster — a true compiler for JavaScript: it compiles JavaScript to better JavaScript, parsing your code, removing dead code and rewriting and minimizing what is left.
- 79

DeepAudit
7.2Klintsinghua/DeepAudit · PythonDeepAudit is a multi-agent AI platform for code security auditing. It mimics how a security expert thinks, using cooperating agents (Orchestrator, Recon, Analysis, Verification) to find vulnerabilities and then verify them with automated sandbox PoC exploitation.
- 80

anti-slop
6.3Kmiqdadbadjuber/anti-slop · JavaScriptantislop is a rulebook for your AI coding agent so it stops producing generic 'AI slop' - cliched UI, copy, and code. It is a filter, not a style guide: it bans the slop but prescribes no colors, fonts, or layouts.
- 81
anti-slop
5.6Kdmmulroy/anti-slop · TypeScriptA set of opinionated Oxlint rules that reject low-evidence and low-signal patterns in TypeScript and JavaScript codebases.
- 82
fallow
5.1Kfallow-rs/fallow · RustFallow is a Rust-based codebase intelligence tool for TypeScript/JavaScript that builds one dependency graph of a repository and reports unused code, circular dependencies, duplication, complexity hotspots, architecture boundary violations, and design-system styling drift.
- 83

kani
3.5Kmodel-checking/kani · RustKani is a bit-precise model checker for Rust programs: instead of sampling inputs like a test suite, it proves that your code is free of certain bugs and undefined behavior.
- 84

lint
3.2Kshadcn-ui/lint · TypeScriptAn agent-first linter for Tailwind design systems: you define what is allowed, and when an agent breaks a rule the error explains what is wrong and suggests a fix using your components, variants, and theme.
- 85
vibe-coding-toolkit
1.3Ksoumatheusgomes/vibe-coding-toolkit · JavaScriptA curated, battle-tested AI-coding workflow for Claude Code (and partly Codex): ready-to-copy plugins, subagent orchestration patterns, quality-gate configs, and prompt templates extracted from a real production fintech codebase.
- 86

SlopMonster
1.1KItsssssJack/SlopMonster · PythonSlopMonster is a linter that scores written copy out of 5 for telltale AI-writing patterns and can fail a CI build on a bad score; it also has a cleanse step that uses a rival AI model to rewrite the flagged lines.
- 87

gdp-ts
812rauchg/gdp-ts · TypeScriptgdp-ts is a tiny TypeScript library plus a linter and an AI coding-agent skill that implements the 'Ghosts of Departed Proofs' pattern, letting you catch authorization and entitlement bugs (like checking if a user can read or pay for a resource) at compile time instead of at runtime.
- 88

openqodex
729openqodex/openqodex · TypeScriptOpenQodex is an open source AI code review tool for Claude Code and Codex that runs before you push: it scans only the lines you changed, then has a separate reviewer process check every scanner finding.
- 89

simplify-codebase
508tt-a1i/simplify-codebase · HTMLAn Agent Skill that helps coding agents prove and safely remove accidental complexity from an existing codebase without changing its real behavior.
- 90

cccc
472moznion/cccc · Rustcccc is a fast CLI tool (and Rust library) that measures Cognitive Complexity (SonarSource) and Cyclomatic Complexity (McCabe) for source code across many languages.
- 91

uml-viewer
441unclebob/uml-viewer · ClojureA live UML class-diagram viewer for your codebase: it draws a project's structure from an EDN intermediate representation, is coupled to an AI agent companion, and lets you drill from components all the way down to source code.
- 92

cyclomatic-complexity-skill
405saurabhkumar8112/cyclomatic-complexity-skillA Claude Skill that teaches Claude to measure a function's cyclomatic complexity and refactor the worst offenders instead of leaving tangled branch-heavy code behind.
- 93
perch
353lakeday-org/perch · JavaScriptPerch is a command-line semantic code linter that scans a codebase for real issues using Decision Models, rather than plain syntax rules, and ranks what it finds worst-first.
- 94

nopus
298Vistyy/nopus · TypeScriptnopus is a deterministic prose checker that catches coding-agent responses drifting into abstract, jargon-heavy LLM language, flags them once they cross a chosen complexity threshold, and sends them back for one clearer rewrite.
- 95

procoder
211azrtydxb/procoder · GoA discipline layer for AI coding agents: one Go binary that gives the agent a commit gate it cannot talk its way past, quality controllers that refuse to call unfinished work done, and a self-learning loop for escaped bugs.
- 96

reclaim-code-entropy
205Yevanchen/reclaim-code-entropyThis is an Agent Skill that guides an AI coding agent through safely simplifying a codebase by hunting down dead code, duplicate logic, and unnecessary abstractions using proof instead of guesswork.
- 97

audit-repo
1571838904818/audit-repo · PythonA Codex Skill for read-only, evidence-backed health audits of code repositories: it inventories tests, CI, dependencies, docs, security signals and technical debt, then turns verified findings into a prioritized action list. Standalone Python scripts for reproducible snapshots ship alongside it.
- 98

jev-code-reviewer
144egma-ai/jev-code-reviewer · JavaScriptJev is a local code review tool for pull requests opened by coding agents: it classifies each diff hunk into P0, P1 or P2 attention priority and explains the change in natural language instead of raw code.
- 99

codex-guard
136Akimiya-z/codex-guard · JavaScriptCodex Guard is a quality gate that automatically runs on pull requests it detects as agent-written (Codex, Claude, Copilot) and blocks leftover TODO markers, leaked secrets, sloppy commit messages, and red CI before they reach main.
- 100

jevlint
126codegirl-007/jevlint · GoJevlint is a CLI linter that checks code against plain-language rules: it uses Tree-sitter to extract code units (functions, types, comments, fields, statements), then asks a configured AI decision backend called Jev whether each one passes.
Related topics
Often tagged together