awesome-flake8-extensions
github.com/dmytrolitvinov/awesome-flake8-extensions ↗:octocat: A curated awesome list of flake8 extensions. Feel free to contribute! :mortar_board:
Use this list with your AI agent
Add the Context Awesome MCP server to Claude, Cursor, or any MCP client, then ask:
"Show me complexity resources from awesome-flake8-extensions"
Installation instructions →What's inside
Complexity
- cohesion
Extension for measuring Python class cohesion.
- flake8-annotations-complexity
Plugin to validate annotations complexity.
- flake8-cognitive-complexity
Extension for flake8 that validates cognitive functions complexity.
- flake8-expression-complexity
Plugin to validate expressions complexity.
- flake8-functions
Plugin for validation of function parameters (length, complexity, etc).
- flake8-length
Smart line length validation.
All-in-one
- dlint
Tool for encouraging best coding practices and helping ensure Python code is secure.
- flake8-bugbear
Finding likely bugs and design problems in your program.
- flake8-pie
Extension that implements misc. lints.
- flake8-simplify
Plugin that helps you to simplify code.
- flake8-tergeo
Adds many new rules to improve your code quality and brings a curated and actively maintained list of other plugins including flake8-bugbear.
- hacking
Set of flake8 plugins that test and enforce the
Bugs
- flake8-2020
Plugin which checks for misuse of
- flake8-alfred
Alfred is a flake8 plugin to warn on unsafe/obsolete symbols.
- flake8-async
A flake8 plugin that checks for bad async / asyncio practices.
- flake8-dunder-all
Ensures that modules have defined
- flake8-encodings
Identify incorrect use of encodings.
- flake8-mutable
Detect usage of mutable objects as default values for arguments.
Testing
- flake8-aaa
Lints tests against the Arrange Act Assert pattern.
- flake8-assertive
Unittest assert method checker.
- flake8-mock
Provides checking mock non-existent methods.
- flake8-mock-spec
Enforce the use of the spec argument on mocks ensuring that your use of mocks is compliant with the interface of the object being mocked.
- flake8-pytest
Enforces to use
- flake8-pytestrail
Checks TestRail test case IDs.
Imports
- flake8-absolute-import
Plugin to require absolute imports.
- flake8-alphabetize
Checking the order of
- flake8-datetime-import
Enforce importing
- flake8-future-import
Extension to check imports.
- flake8-import-conventions
How certain packages should be imported or aliased.
- flake8-import-order
Include checks import order against various Python Style Guides.
Comments
- flake8-ado
Check that all Azure DevOps IDs mentioned in the comments are in the correct format and have the corresponding ADO item.
- flake8-author
Checks Python modules for
- flake8-coding
Adds coding magic comment checks (coding:) to flake8.
- flake8-comments
Reports redundant comments.
- flake8-copyright
Adds copyright checks to flake8.
- flake8-eradicate
Plugin to find commented out or dead code.
Clean code
- flake8-all-not-strings
Checks that if modules under
- flake8-class-attributes-order
Checks classes attributes order.
- flake8-clean-block
Plugin to enforce a blank line after if/for/while/with/try blocks.
- flake8-commas
Enforcing trailing commas in Python.
- flake8-comprehensions
Helps you write better list/set/dict comprehensions.
- flake8-datetime-utcnow-plugin
Plugin to warn the developer of the usage of
Type annotations
- flake8-annotations
Plugin for flake8 to check for presence of type annotations in function definitions.
- flake8-annotations-coverage
Plugin to validate annotations coverage.
- flake8-future-annotations
Verifies Python 3.7+ files use
- flake8-new-union-types
Plugin to enforce new Union/Optional syntax
- flake8-pep585
Enforce new style annotations from
- flake8-pep604
Forbids use of
Showing a sample of 147 resources. View the full list on GitHub →