flake8-isort
flake8 plugin that integrates isort
What it is and what it does
flake8-isort is a flake8 plugin that delegates import checking to isort. Instead of flake8 checking imports with its own logic, it runs isort's rules and reports violations as flake8 errors (codes I001–I005). You configure behavior by adding an .isort.cfg file to your project, then run flake8 normally—the plugin automatically checks whether imports match expectations.
The package requires flake8 and isort as runtime dependencies and supports Python 3.10, 3.11, 3.12, 3.13 and PyPy3. It is designed for teams that already use isort and want linting enforcement of those same rules in CI/CD pipelines. The plugin reports five specific error codes covering wrong position, missing config, blank line issues, and unexpected imports.
Use it for:
- Enforce import rules in CI/CD pipelines by failing flake8 checks when imports don't match project configuration.
- Catch import violations during code review without manually running isort as a separate tool.
- Maintain consistent import style across a team by combining isort with flake8's linting workflow.
- Migrate existing projects by using flake8-isort to report violations before auto-sorting with isort itself.
- Integrate import checks into pre-commit hooks alongside other flake8 plugins for unified linting.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Integrates isort into flake8 linting, reporting import violations as flake8 errors with configurable rules via .isort.cfg.
Yes, if you already use isort and flake8 in your workflow. The plugin is low-friction to install, has no known vulnerabilities, and solves the specific problem of enforcing rules in linting. The aging maintenance status (last release 293 days ago) is a minor concern but not a blocker—the repository remains active. The GPLv2 copyleft license requires source disclosure if you distribute derivative works, which is typical for development tools.
Install
flake8-isort on PyPI
pip
pip install flake8-isortuv
uv add flake8-isortpoetry
poetry add flake8-isortInstalling flake8-isort
Before you install
Low friction install with only flake8 and isort as runtime dependencies. Maintenance status is aging (last release 293 days ago), but the repository remains active and unarchived with recent commits.
License in practice
Licensed under GPLv2 (copyleft). If you distribute software using this package, you must make source code available under the same license terms.
Quickstart
pip install flake8-isort
# Create .isort.cfg in your project root:
# [settings]
# profile=black
# Run flake8 as usual:
flake8 your_module.py
Requires flake8 and isort to be installed; flake8-isort is a plugin that cannot function standalone.
Verify before relying
- Whether the package works correctly with the latest versions of flake8 and isort given the aging maintenance status.
- Performance impact when running flake8 on large codebases with many import statements.
- Compatibility with Python 3.14 listed in classifiers but not explicitly mentioned in requirements.
Package facts
| License | GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and… (full text in the JSON record) (copyleft) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — flake8, isort |
| Maintenance | aging — 293 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,918,400/month — #3,431 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: flake8_isort-7.0.0-py3-none-any.whl
Keywords: flake8, imports, isort, pep8, python
Tags
More Software Development packages
Provides backported and experimental type hints…
permissive · top 100 on PyPI
numpyNumPy provides an N-dimensional array object…
permissive · top 100 on PyPI
fastapiFastAPI is a Python web framework for building…
permissive · top 100 on PyPI
annotated-docProvides a way to document function parameters,…
permissive · top 100 on PyPI
typerTyper builds command-line applications from…
permissive · top 1,000 on PyPI
distlibDistlib provides low-level packaging utilities…
permissive · top 1,000 on PyPI
flake8-import-orderA flake8 plugin that enforces import ordering…
copyleft · top 5,000 on PyPI
flake8-tidy-importsA flake8 plugin that detects and reports…
permissive · top 15,000 on PyPI
pytest-isortA pytest plugin that automatically checks…
permissive · top 15,000 on PyPI
isortisort sorts Python imports alphabetically and…
permissive · top 1,000 on PyPI
flake8-deprecatedA flake8 plugin that detects calls to…
copyleft · top 15,000 on PyPI
flake8-rst-docstringsA flake8 plugin that validates Python…
permissive · top 15,000 on PyPI
flake8-use-fstringA flake8 plugin that detects and flags…
permissive · top 15,000 on PyPI
flake8-type-checkingA flake8 plugin that identifies which imports…
permissive · top 15,000 on PyPI
flake8-typing-importsA flake8 plugin that detects unguarded typing…
permissive · top 15,000 on PyPI
flake8-mutableA flake8 plugin that detects mutable default…
permissive · top 15,000 on PyPI