wemake-python-styleguide
Welcome to the strictest and most opinionated python linter ever.
wemake-python-styleguide
is actually a flake8 plugin with some other plugins as dependencies.
Quickstart
pip install wemake-python-styleguide
You will also need to create a setup.cfg
file with the configuration.
We highly recommend to also use:
- flakehell for easy integration into a legacy codebase
- nitpick for sharing and validating configuration across multiple projects
Running
flake8 your_module.py
This app is still just good old flake8
! And it won’t change your existing workflow.
See “Usage” section in the docs for examples and integrations.
We also support GitHub Actions as first class-citizens. Try it out!
What we are about
The ultimate goal of this project is to make all people write exactly the same python
code.
flake8 | pylint | black | mypy | wemake-python-styleguide | |
---|---|---|---|---|---|
Formats code? |
❌ |
❌ |
✅ |
❌ |
❌ |
Finds style issues? |
? |
✅ |
? |
❌ |
✅ |
Finds bugs? |
? |
✅ |
❌ |
✅ |
✅ |
Finds complex code? |
❌ |
? |
❌ |
❌ |
✅ |
Has a lot of strict rules? |
❌ |
? |
❌ |
❌ |
✅ |
Has a lot of plugins? |
✅ |
❌ |
❌ |
? |
✅ |
We have several primary objectives:
- Enforce
python3.6+
usage - Significantly reduce complexity of your code and make it more maintainable
- Enforce “There should be one — and preferably only one — obvious way to do it” rule to coding and naming styles
- Protect developers from possible errors and enforce best practices
You can find all error codes and plugins in the docs.