generated from best-of-lists/best-of
-
Notifications
You must be signed in to change notification settings - Fork 50
/
README.md
3117 lines (2652 loc) · 156 KB
/
README.md
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
<!-- markdownlint-disable -->
<h1 align="center">
Best-of Python Developer Tools
<br>
</h1>
<p align="center">
<strong>🏆 A ranked list of awesome python developer tools and libraries. Updated weekly.</strong>
</p>
<p align="center">
<a href="https://best-of.org" title="Best-of Badge"><img src="http://bit.ly/3o3EHNN"></a>
<a href="#Contents" title="Project Count"><img src="https://img.shields.io/badge/projects-270-blue.svg?color=5ac4bf"></a>
<a href="#Contribution" title="Contributions are welcome"><img src="https://img.shields.io/badge/contributions-welcome-green.svg"></a>
<a href="https://github.com/ml-tooling/best-of-python-dev/releases" title="Best-of Updates"><img src="https://img.shields.io/github/release-date/ml-tooling/best-of-python-dev?color=green&label=updated"></a>
<a href="https://mltooling.substack.com/subscribe" title="Subscribe to newsletter"><img src="http://bit.ly/2Md9rxM"></a>
<a href="https://twitter.com/mltooling" title="Follow on Twitter"><img src="https://img.shields.io/twitter/follow/mltooling.svg?style=social&label=Follow"></a>
</p>
This curated list contains 270 awesome open-source projects with a total of 960K stars grouped into 17 categories. All projects are ranked by a project-quality score, which is calculated based on various metrics automatically collected from GitHub and different package managers. If you like to add or update projects, feel free to open an [issue](https://github.com/ml-tooling/best-of-python-dev/issues/new/choose), submit a [pull request](https://github.com/ml-tooling/best-of-python-dev/pulls), or directly edit the [projects.yaml](https://github.com/ml-tooling/best-of-python-dev/edit/main/projects.yaml). Contributions are very welcome!
---
<p align="center">
🧙♂️ Discover other <a href="https://best-of.org">best-of lists</a> or create <a href="https://github.com/best-of-lists/best-of/blob/main/create-best-of-list.md">your own</a>.<br>
📫 Subscribe to our <a href="https://mltooling.substack.com/subscribe">newsletter</a> for updates and trending projects.
</p>
---
## Contents
- [Linters & Style Checkers](#linters--style-checkers) _40 projects_
- [Type checkers](#type-checkers) _5 projects_
- [Code Formatters](#code-formatters) _7 projects_
- [Code Refactoring](#code-refactoring) _18 projects_
- [Code Security](#code-security) _8 projects_
- [Virtual Environments](#virtual-environments) _10 projects_
- [Dependency & Package Managers](#dependency--package-managers) _11 projects_
- [Code Metrics & Complexity](#code-metrics--complexity) _6 projects_
- [Logging](#logging) _21 projects_
- [Shell](#shell) _2 projects_
- [Documentation](#documentation) _29 projects_
- [Debugging Tools](#debugging-tools) _13 projects_
- [Testing Tools](#testing-tools) _43 projects_
- [Code Packaging](#code-packaging) _16 projects_
- [Build Tools](#build-tools) _14 projects_
- [System Monitoring & Profiling](#system-monitoring--profiling) _18 projects_
- [AST Tools](#ast-tools) _6 projects_
- [Others](#others) _1 projects_
## Explanation
- 🥇🥈🥉 Combined project-quality score
- ⭐️ Star count from GitHub
- 🐣 New project _(less than 6 months old)_
- 💤 Inactive project _(6 months no activity)_
- 💀 Dead project _(12 months no activity)_
- 📈📉 Project is trending up or down
- ➕ Project was recently added
- ❗️ Warning _(e.g. missing/risky license)_
- 👨💻 Contributors count from GitHub
- 🔀 Fork count from GitHub
- 📋 Issue count from GitHub
- ⏱️ Last update timestamp on package manager
- 📥 Download count from package manager
- 📦 Number of dependent projects
- <img src="https://cdn.iconscout.com/icon/free/png-256/8-eight-digital-number-numerical-numbers-36025.png" style="display:inline;" width="13" height="13"> Flake8 related project
- <img src="https://docs.pytest.org/en/stable/_static/favicon.png" style="display:inline;" width="13" height="13"> Pytest related project
- <img src="https://www.pylint.org/ico/favicon.ico" style="display:inline;" width="13" height="13"> Pylint related project
- <img src="https://www.sphinx-doc.org/en/master/_static/favicon.svg" style="display:inline;" width="13" height="13"> Sphinx related project
- <img src="https://squidfunk.github.io/mkdocs-material/assets/favicon.png" style="display:inline;" width="13" height="13"> MkDocs related project
<br>
## Linters & Style Checkers
<a href="#contents"><img align="right" width="15" height="15" src="https://git.io/JtehR" alt="Back to top"></a>
<details><summary><b><a href="https://github.com/pylint-dev/pylint">pylint</a></b> (🥇43 · ⭐ 5.2K) - Its not just a linter that annoys you!. <code><a href="http://bit.ly/2KucAZR">❗️GPL-2.0</a></code></summary>
- [GitHub](https://github.com/pylint-dev/pylint) (👨💻 570 · 🔀 1.1K · 📦 420K · 📋 5.5K - 16% open · ⏱️ 27.05.2024):
```
git clone https://github.com/PyCQA/pylint
```
- [PyPi](https://pypi.org/project/pylint) (📥 24M / month · 📦 8.1K · ⏱️ 20.05.2024):
```
pip install pylint
```
- [Conda](https://anaconda.org/conda-forge/pylint) (📥 5M · ⏱️ 20.05.2024):
```
conda install -c conda-forge pylint
```
</details>
<details><summary><b><a href="https://github.com/astral-sh/ruff">ruff</a></b> (🥇42 · ⭐ 28K) - An extremely fast Python linter and code formatter, written in Rust. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/astral-sh/ruff) (👨💻 430 · 🔀 880 · 📥 490K · 📦 48K · 📋 4.4K - 18% open · ⏱️ 30.05.2024):
```
git clone https://github.com/charliermarsh/ruff
```
- [PyPi](https://pypi.org/project/ruff) (📥 17M / month · 📦 5.2K · ⏱️ 28.05.2024):
```
pip install ruff
```
- [Conda](https://anaconda.org/conda-forge/ruff) (📥 800K · ⏱️ 29.05.2024):
```
conda install -c conda-forge ruff
```
</details>
<details><summary><b><a href="https://github.com/PyCQA/flake8">flake8</a></b> (🥇41 · ⭐ 3.3K) - Flake8 is a wrapper around these tools: PyFlakes; pycodestyle; Ned.. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/PyCQA/flake8) (👨💻 180 · 🔀 300 · 📦 550K · 📋 1.6K - 1% open · ⏱️ 15.04.2024):
```
git clone https://github.com/PyCQA/flake8
```
- [PyPi](https://pypi.org/project/flake8) (📥 28M / month · 📦 20K · ⏱️ 05.01.2024):
```
pip install flake8
```
- [Conda](https://anaconda.org/conda-forge/flake8) (📥 7.3M · ⏱️ 05.01.2024):
```
conda install -c conda-forge flake8
```
</details>
<details><summary><b><a href="https://github.com/wemake-services/wemake-python-styleguide">wemake-python-styleguide</a></b> (🥇36 · ⭐ 2.4K) - The strictest and most opinionated python linter ever!. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/wemake-services/wemake-python-styleguide) (👨💻 180 · 🔀 380 · 📦 16K · 📋 1.1K - 10% open · ⏱️ 30.05.2024):
```
git clone https://github.com/wemake-services/wemake-python-styleguide
```
- [PyPi](https://pypi.org/project/wemake-python-styleguide) (📥 160K / month · 📦 53 · ⏱️ 26.03.2024):
```
pip install wemake-python-styleguide
```
</details>
<details><summary><b><a href="https://github.com/PyCQA/pyflakes">pyflakes</a></b> (🥇36 · ⭐ 1.3K) - A simple program which checks Python source files for errors. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/PyCQA/pyflakes) (👨💻 86 · 🔀 180 · 📦 280K · 📋 530 - 10% open · ⏱️ 07.03.2024):
```
git clone https://github.com/PyCQA/pyflakes
```
- [PyPi](https://pypi.org/project/pyflakes) (📥 31M / month · 📦 1.1K · ⏱️ 05.01.2024):
```
pip install pyflakes
```
- [Conda](https://anaconda.org/conda-forge/pyflakes) (📥 7.3M · ⏱️ 05.01.2024):
```
conda install -c conda-forge pyflakes
```
</details>
<details><summary><b><a href="https://github.com/davidhalter/parso">parso</a></b> (🥇36 · ⭐ 580) - A Python Parser. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/davidhalter/parso) (👨💻 46 · 🔀 99 · 📦 430K · 📋 120 - 10% open · ⏱️ 21.04.2024):
```
git clone https://github.com/davidhalter/parso
```
- [PyPi](https://pypi.org/project/parso) (📥 38M / month · 📦 710 · ⏱️ 05.04.2024):
```
pip install parso
```
- [Conda](https://anaconda.org/conda-forge/parso) (📥 19M · ⏱️ 05.04.2024):
```
conda install -c conda-forge parso
```
</details>
<details><summary><b><a href="https://github.com/PyCQA/pycodestyle">pycodestyle</a></b> (🥈34 · ⭐ 5K) - Simple Python style checker in one Python file. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/PyCQA/pycodestyle) (👨💻 140 · 🔀 750 · 📦 20 · 📋 750 - 14% open · ⏱️ 10.04.2024):
```
git clone https://github.com/PyCQA/pycodestyle
```
- [PyPi](https://pypi.org/project/pycodestyle) (📥 39M / month · 📦 1.9K · ⏱️ 12.10.2023):
```
pip install pycodestyle
```
- [Conda](https://anaconda.org/conda-forge/pycodestyle) (📥 7.6M · ⏱️ 13.10.2023):
```
conda install -c conda-forge pycodestyle
```
</details>
<details><summary><b><a href="https://github.com/beartype/beartype">beartype</a></b> (🥈32 · ⭐ 2.5K) - Unbearably fast near-real-time hybrid runtime-static type-checking in.. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/beartype/beartype) (👨💻 22 · 🔀 49 · 📋 310 - 21% open · ⏱️ 30.05.2024):
```
git clone https://github.com/beartype/beartype
```
- [PyPi](https://pypi.org/project/beartype) (📥 2.3M / month · 📦 420 · ⏱️ 21.04.2024):
```
pip install beartype
```
- [Conda](https://anaconda.org/conda-forge/beartype) (📥 120K · ⏱️ 21.04.2024):
```
conda install -c conda-forge beartype
```
</details>
<details><summary><b><a href="https://github.com/PyCQA/pydocstyle">pydocstyle</a></b> (🥈32 · ⭐ 1.1K) - docstring style checker. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/PyCQA/pydocstyle) (👨💻 92 · 🔀 190 · 📥 75 · 📦 65K · 📋 350 - 35% open · ⏱️ 03.11.2023):
```
git clone https://github.com/PyCQA/pydocstyle
```
- [PyPi](https://pypi.org/project/pydocstyle) (📥 5.1M / month · 📦 1.7K · ⏱️ 17.01.2023):
```
pip install pydocstyle
```
- [Conda](https://anaconda.org/conda-forge/pydocstyle) (📥 1.9M · ⏱️ 16.06.2023):
```
conda install -c conda-forge pydocstyle
```
</details>
<details><summary><b><a href="https://github.com/PyCQA/flake8-bugbear">flake8-bugbear</a></b> (🥈31 · ⭐ 1K) - A plugin for Flake8 finding likely bugs and design problems.. <code><a href="http://bit.ly/34MBwT8">MIT</a></code> <code><img src="https://cdn.iconscout.com/icon/free/png-256/8-eight-digital-number-numerical-numbers-36025.png" style="display:inline;" width="13" height="13"></code></summary>
- [GitHub](https://github.com/PyCQA/flake8-bugbear) (👨💻 84 · 🔀 100 · 📦 37K · 📋 220 - 27% open · ⏱️ 29.04.2024):
```
git clone https://github.com/PyCQA/flake8-bugbear
```
- [PyPi](https://pypi.org/project/flake8-bugbear) (📥 2.9M / month · 📦 1K · ⏱️ 26.04.2024):
```
pip install flake8-bugbear
```
- [Conda](https://anaconda.org/conda-forge/flake8-bugbear) (📥 780K · ⏱️ 26.04.2024):
```
conda install -c conda-forge flake8-bugbear
```
</details>
<details><summary><b><a href="https://github.com/pylint-dev/pylint-django">pylint-django</a></b> (🥈29 · ⭐ 590) - Pylint plugin for improving code analysis for when.. <code><a href="http://bit.ly/2KucAZR">❗️GPL-2.0</a></code> <code><img src="https://www.pylint.org/ico/favicon.ico" style="display:inline;" width="13" height="13"></code></summary>
- [GitHub](https://github.com/pylint-dev/pylint-django) (👨💻 71 · 🔀 120 · 📥 280 · 📦 29K · 📋 230 - 26% open · ⏱️ 26.02.2024):
```
git clone https://github.com/PyCQA/pylint-django
```
- [PyPi](https://pypi.org/project/pylint-django) (📥 1.3M / month · 📦 110 · ⏱️ 23.10.2023):
```
pip install pylint-django
```
- [Conda](https://anaconda.org/conda-forge/pylint-django) (📥 190K · ⏱️ 09.01.2024):
```
conda install -c conda-forge pylint-django
```
</details>
<details><summary><b><a href="https://github.com/adamchainz/flake8-comprehensions">flake8-comprehensions</a></b> (🥈29 · ⭐ 460) - A flake8 plugin to help you write better.. <code><a href="http://bit.ly/34MBwT8">MIT</a></code> <code><img src="https://cdn.iconscout.com/icon/free/png-256/8-eight-digital-number-numerical-numbers-36025.png" style="display:inline;" width="13" height="13"></code></summary>
- [GitHub](https://github.com/adamchainz/flake8-comprehensions) (👨💻 15 · 🔀 23 · 📦 27K · 📋 62 - 16% open · ⏱️ 28.05.2024):
```
git clone https://github.com/adamchainz/flake8-comprehensions
```
- [PyPi](https://pypi.org/project/flake8-comprehensions) (📥 1.1M / month · 📦 650 · ⏱️ 10.07.2023):
```
pip install flake8-comprehensions
```
- [Conda](https://anaconda.org/conda-forge/flake8-comprehensions) (📥 780K · ⏱️ 17.07.2023):
```
conda install -c conda-forge flake8-comprehensions
```
</details>
<details><summary><b><a href="https://github.com/zheller/flake8-quotes">flake8-quotes</a></b> (🥈29 · ⭐ 180) - Flake8 extension for checking quotes in python. <code><a href="http://bit.ly/34MBwT8">MIT</a></code> <code><img src="https://cdn.iconscout.com/icon/free/png-256/8-eight-digital-number-numerical-numbers-36025.png" style="display:inline;" width="13" height="13"></code></summary>
- [GitHub](https://github.com/zheller/flake8-quotes) (👨💻 33 · 🔀 37 · 📦 22K · 📋 54 - 16% open · ⏱️ 10.02.2024):
```
git clone https://github.com/zheller/flake8-quotes
```
- [PyPi](https://pypi.org/project/flake8-quotes) (📥 650K / month · 📦 420 · ⏱️ 10.02.2024):
```
pip install flake8-quotes
```
- [Conda](https://anaconda.org/conda-forge/flake8-quotes) (📥 690K · ⏱️ 10.02.2024):
```
conda install -c conda-forge flake8-quotes
```
</details>
<details><summary><b><a href="https://github.com/nipunn1313/mypy-protobuf">mypy-protobuf</a></b> (🥈28 · ⭐ 630) - open source tools to generate mypy stubs from protobufs. <code><a href="http://bit.ly/3nYMfla">Apache-2</a></code></summary>
- [GitHub](https://github.com/nipunn1313/mypy-protobuf) (👨💻 38 · 🔀 76 · 📋 130 - 11% open · ⏱️ 25.04.2024):
```
git clone https://github.com/dropbox/mypy-protobuf
```
- [PyPi](https://pypi.org/project/mypy-protobuf) (📥 3.3M / month · 📦 180 · ⏱️ 01.04.2024):
```
pip install mypy-protobuf
```
- [Conda](https://anaconda.org/conda-forge/mypy-protobuf) (📥 130K · ⏱️ 20.08.2023):
```
conda install -c conda-forge mypy-protobuf
```
</details>
<details><summary><b><a href="https://github.com/wemake-services/flake8-eradicate">flake8-eradicate</a></b> (🥈28 · ⭐ 310) - Flake8 plugin to find commented out or dead code. <code><a href="http://bit.ly/34MBwT8">MIT</a></code> <code><img src="https://cdn.iconscout.com/icon/free/png-256/8-eight-digital-number-numerical-numbers-36025.png" style="display:inline;" width="13" height="13"></code></summary>
- [GitHub](https://github.com/wemake-services/flake8-eradicate) (👨💻 17 · 🔀 13 · 📦 19K · 📋 40 - 22% open · ⏱️ 21.05.2024):
```
git clone https://github.com/wemake-services/flake8-eradicate
```
- [PyPi](https://pypi.org/project/flake8-eradicate) (📥 630K / month · 📦 160 · ⏱️ 31.05.2023):
```
pip install flake8-eradicate
```
- [Conda](https://anaconda.org/conda-forge/flake8-eradicate) (📥 15K · ⏱️ 01.06.2023):
```
conda install -c conda-forge flake8-eradicate
```
</details>
<details><summary><b><a href="https://github.com/openstack/hacking">hacking</a></b> (🥈28 · ⭐ 240) - OpenStack Hacking Style Checks. Mirror of code maintained at.. <code><a href="http://bit.ly/3nYMfla">Apache-2</a></code> <code><img src="https://cdn.iconscout.com/icon/free/png-256/8-eight-digital-number-numerical-numbers-36025.png" style="display:inline;" width="13" height="13"></code></summary>
- [GitHub](https://github.com/openstack/hacking) (👨💻 190 · 🔀 70 · 📦 7.3K · ⏱️ 31.01.2024):
```
git clone https://github.com/openstack/hacking
```
- [PyPi](https://pypi.org/project/hacking) (📥 98K / month · 📦 87 · ⏱️ 08.12.2023):
```
pip install hacking
```
</details>
<details><summary><b><a href="https://github.com/PyCQA/flake8-commas">flake8-commas</a></b> (🥈28 · ⭐ 130) - Flake8 extension for enforcing trailing commas in python. <code><a href="http://bit.ly/34MBwT8">MIT</a></code> <code><img src="https://cdn.iconscout.com/icon/free/png-256/8-eight-digital-number-numerical-numbers-36025.png" style="display:inline;" width="13" height="13"></code></summary>
- [GitHub](https://github.com/PyCQA/flake8-commas) (👨💻 13 · 🔀 32 · 📦 18K · 📋 31 - 9% open · ⏱️ 16.05.2024):
```
git clone https://github.com/PyCQA/flake8-commas
```
- [PyPi](https://pypi.org/project/flake8-commas) (📥 380K / month · 📦 210 · ⏱️ 16.05.2024):
```
pip install flake8-commas
```
</details>
<details><summary><b><a href="https://github.com/gforcada/flake8-isort">flake8-isort</a></b> (🥉27 · ⭐ 170) - flake8 plugin that integrates isort. <code><a href="http://bit.ly/2KucAZR">❗️GPL-2.0</a></code> <code><img src="https://cdn.iconscout.com/icon/free/png-256/8-eight-digital-number-numerical-numbers-36025.png" style="display:inline;" width="13" height="13"></code></summary>
- [GitHub](https://github.com/gforcada/flake8-isort) (👨💻 38 · 🔀 130 · 📦 26K · 📋 57 - 1% open · ⏱️ 03.11.2023):
```
git clone https://github.com/gforcada/flake8-isort
```
- [PyPi](https://pypi.org/project/flake8-isort) (📥 1.1M / month · 📦 520 · ⏱️ 03.11.2023):
```
pip install flake8-isort
```
- [Conda](https://anaconda.org/conda-forge/flake8-isort) (📥 61K · ⏱️ 03.11.2023):
```
conda install -c conda-forge flake8-isort
```
</details>
<details><summary><b><a href="https://github.com/gforcada/flake8-builtins">flake8-builtins</a></b> (🥉27 · ⭐ 110) - Check for python builtins being used as variables or.. <code><a href="http://bit.ly/2KucAZR">❗️GPL-2.0</a></code> <code><img src="https://cdn.iconscout.com/icon/free/png-256/8-eight-digital-number-numerical-numbers-36025.png" style="display:inline;" width="13" height="13"></code></summary>
- [GitHub](https://github.com/gforcada/flake8-builtins) (👨💻 20 · 🔀 23 · 📦 10K · 📋 50 - 4% open · ⏱️ 09.04.2024):
```
git clone https://github.com/gforcada/flake8-builtins
```
- [PyPi](https://pypi.org/project/flake8-builtins) (📥 860K / month · 📦 480 · ⏱️ 09.04.2024):
```
pip install flake8-builtins
```
- [Conda](https://anaconda.org/conda-forge/flake8-builtins) (📥 250K · ⏱️ 09.04.2024):
```
conda install -c conda-forge flake8-builtins
```
</details>
<details><summary><b><a href="https://github.com/andreoliwa/nitpick">nitpick</a></b> (🥉26 · ⭐ 380) - Enforce the same settings on multiple projects. <code><a href="http://bit.ly/34MBwT8">MIT</a></code> <code><img src="https://cdn.iconscout.com/icon/free/png-256/8-eight-digital-number-numerical-numbers-36025.png" style="display:inline;" width="13" height="13"></code></summary>
- [GitHub](https://github.com/andreoliwa/nitpick) (👨💻 16 · 🔀 23 · 📥 5 · 📦 1.3K · 📋 130 - 38% open · ⏱️ 28.05.2024):
```
git clone https://github.com/andreoliwa/nitpick
```
- [PyPi](https://pypi.org/project/nitpick) (📥 15K / month · 📦 26 · ⏱️ 31.12.2023):
```
pip install nitpick
```
</details>
<details><summary><b><a href="https://github.com/mgedmin/check-manifest">check-manifest</a></b> (🥉26 · ⭐ 280) - Tool to check the completeness of MANIFEST.in for Python packages. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/mgedmin/check-manifest) (👨💻 22 · 🔀 37 · 📦 11K · 📋 98 - 21% open · ⏱️ 03.05.2024):
```
git clone https://github.com/mgedmin/check-manifest
```
- [PyPi](https://pypi.org/project/check-manifest) (📥 360K / month · 📦 4.3K · ⏱️ 05.12.2022):
```
pip install check-manifest
```
- [Conda](https://anaconda.org/conda-forge/check-manifest) (📥 120K · ⏱️ 16.06.2023):
```
conda install -c conda-forge check-manifest
```
</details>
<details><summary><b><a href="https://github.com/peterjc/flake8-black">flake8-black</a></b> (🥉26 · ⭐ 160) - flake8 plugin to run black for checking Python coding style. <code><a href="http://bit.ly/34MBwT8">MIT</a></code> <code><img src="https://cdn.iconscout.com/icon/free/png-256/8-eight-digital-number-numerical-numbers-36025.png" style="display:inline;" width="13" height="13"></code></summary>
- [GitHub](https://github.com/peterjc/flake8-black) (👨💻 10 · 🔀 10 · 📦 7.8K · 📋 29 - 10% open · ⏱️ 14.05.2024):
```
git clone https://github.com/peterjc/flake8-black
```
- [PyPi](https://pypi.org/project/flake8-black) (📥 860K / month · 📦 480 · ⏱️ 20.12.2022):
```
pip install flake8-black
```
- [Conda](https://anaconda.org/conda-forge/flake8-black) (📥 460K · ⏱️ 16.06.2023):
```
conda install -c conda-forge flake8-black
```
</details>
<details><summary><b><a href="https://github.com/PyCQA/flake8-import-order">flake8-import-order</a></b> (🥉24 · ⭐ 280 · 💤) - Flake8 plugin that checks import order against.. <code><a href="http://bit.ly/37RvQcA">❗️LGPL-3.0</a></code> <code><img src="https://cdn.iconscout.com/icon/free/png-256/8-eight-digital-number-numerical-numbers-36025.png" style="display:inline;" width="13" height="13"></code></summary>
- [GitHub](https://github.com/PyCQA/flake8-import-order) (👨💻 46 · 🔀 72 · 📋 100 - 12% open · ⏱️ 13.09.2023):
```
git clone https://github.com/PyCQA/flake8-import-order
```
- [PyPi](https://pypi.org/project/flake8-import-order) (📥 610K / month · 📦 550 · ⏱️ 26.11.2022):
```
pip install flake8-import-order
```
- [Conda](https://anaconda.org/conda-forge/flake8-import-order) (📥 250K · ⏱️ 16.06.2023):
```
conda install -c conda-forge flake8-import-order
```
</details>
<details><summary><b><a href="https://github.com/deppen8/pandas-vet">pandas-vet</a></b> (🥉21 · ⭐ 160 · 💤) - A plugin for Flake8 that checks pandas code. <code><a href="http://bit.ly/34MBwT8">MIT</a></code> <code><img src="https://cdn.iconscout.com/icon/free/png-256/8-eight-digital-number-numerical-numbers-36025.png" style="display:inline;" width="13" height="13"></code></summary>
- [GitHub](https://github.com/deppen8/pandas-vet) (👨💻 14 · 🔀 18 · 📥 73 · 📦 450 · 📋 53 - 22% open · ⏱️ 11.08.2023):
```
git clone https://github.com/deppen8/pandas-vet
```
- [PyPi](https://pypi.org/project/pandas-vet) (📥 44K / month · 📦 37 · ⏱️ 11.08.2023):
```
pip install pandas-vet
```
- [Conda](https://anaconda.org/conda-forge/pandas-vet) (📥 18K · ⏱️ 11.08.2023):
```
conda install -c conda-forge pandas-vet
```
</details>
<details><summary><b><a href="https://github.com/MartinThoma/flake8-simplify">flake8-simplify</a></b> (🥉20 · ⭐ 180) - A flake8 plugin that helps you to simplify code. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/MartinThoma/flake8-simplify) (👨💻 14 · 🔀 19 · 📋 120 - 41% open · ⏱️ 25.12.2023):
```
git clone https://github.com/MartinThoma/flake8-simplify
```
- [PyPi](https://pypi.org/project/flake8-simplify) (📥 350K / month · 📦 86 · ⏱️ 23.09.2023):
```
pip install flake8-simplify
```
- [Conda](https://anaconda.org/conda-forge/flake8-simplify) (📥 39K · ⏱️ 26.09.2023):
```
conda install -c conda-forge flake8-simplify
```
</details>
<details><summary><b><a href="https://github.com/hchasestevens/bellybutton">bellybutton</a></b> (🥉17 · ⭐ 270 · 💤) - Custom Python linting through AST expressions. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/hchasestevens/bellybutton) (👨💻 7 · 🔀 15 · 📦 46 · 📋 17 - 64% open · ⏱️ 27.07.2023):
```
git clone https://github.com/hchasestevens/bellybutton
```
- [PyPi](https://pypi.org/project/bellybutton) (📥 2K / month · 📦 1 · ⏱️ 27.07.2023):
```
pip install bellybutton
```
</details>
<details><summary><b><a href="https://github.com/justinabrahms/imhotep">imhotep</a></b> (🥉17 · ⭐ 220 · 💤) - A static-analysis bot for Github. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/justinabrahms/imhotep) (👨💻 17 · 🔀 36 · 📦 12 · 📋 46 - 43% open · ⏱️ 17.06.2023):
```
git clone https://github.com/justinabrahms/imhotep
```
- [PyPi](https://pypi.org/project/imhotep) (📥 59 / month · 📦 4 · ⏱️ 20.02.2022):
```
pip install imhotep
```
</details>
<details><summary>Show 13 hidden projects...</summary>
- <b><a href="https://github.com/PyCQA/pep8-naming">pep8-naming</a></b> (🥈30 · ⭐ 490) - Naming Convention checker for Python. <code><a href="https://tldrlegal.com/search?q=Saxpath">❗️Saxpath</a></code>
- <b><a href="https://github.com/terrencepreilly/darglint">darglint</a></b> (🥈28 · ⭐ 480 · 💀) - A python documentation linter which checks that the docstring.. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
- <b><a href="https://github.com/coala/coala">coala</a></b> (🥉27 · ⭐ 3.5K · 💀) - coala provides a unified command-line interface for linting and.. <code><a href="http://bit.ly/3pwmjO5">❗️AGPL-3.0</a></code>
- <b><a href="https://github.com/klen/pylama">pylama</a></b> (🥉26 · ⭐ 1K · 💀) - Code audit tool for python. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
- <b><a href="https://github.com/wearepal/data-science-types">data-science-types</a></b> (🥉24 · ⭐ 200 · 💀) - Mypy stubs, i.e., type information, for numpy, pandas.. <code><a href="http://bit.ly/3nYMfla">Apache-2</a></code>
- <b><a href="https://github.com/Instagram/Fixit">Fixit</a></b> (🥉23 · ⭐ 650) - Advanced Python linting framework with auto-fixes and hierarchical.. <code>❗Unlicensed</code>
- <b><a href="https://github.com/tylerwince/flake8-bandit">flake8-bandit</a></b> (🥉21 · ⭐ 110 · 💀) - Automated security testing using bandit and flake8. <code><a href="http://bit.ly/34MBwT8">MIT</a></code> <code><img src="https://cdn.iconscout.com/icon/free/png-256/8-eight-digital-number-numerical-numbers-36025.png" style="display:inline;" width="13" height="13"></code>
- <b><a href="https://github.com/life4/flakehell">flakehell</a></b> (🥉19 · ⭐ 230 · 💀) - Flake8 wrapper to make it nice, legacy-friendly, configurable. <code><a href="http://bit.ly/34MBwT8">MIT</a></code> <code><img src="https://cdn.iconscout.com/icon/free/png-256/8-eight-digital-number-numerical-numbers-36025.png" style="display:inline;" width="13" height="13"></code>
- <b><a href="https://github.com/ambv/flake8-mypy">flake8-mypy</a></b> (🥉19 · ⭐ 100 · 💀) - A plugin for flake8 integrating Mypy. <code><a href="http://bit.ly/34MBwT8">MIT</a></code> <code><img src="https://cdn.iconscout.com/icon/free/png-256/8-eight-digital-number-numerical-numbers-36025.png" style="display:inline;" width="13" height="13"></code>
- <b><a href="https://github.com/jschaf/pylint-flask">pylint-flask</a></b> (🥉19 · ⭐ 64 · 💀) - A Pylint plugin to analyze Flask applications. <code><a href="http://bit.ly/2KucAZR">❗️GPL-2.0</a></code> <code><img src="https://www.pylint.org/ico/favicon.ico" style="display:inline;" width="13" height="13"></code>
- <b><a href="https://github.com/bndr/pycycle">pycycle</a></b> (🥉16 · ⭐ 330 · 💀) - Tool for pinpointing circular imports in Python. Find cyclic imports.. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
- <b><a href="https://github.com/cemsbr/yala">yala</a></b> (🥉15 · ⭐ 14 · 💀) - Yet Another Linter Aggregator. <code><a href="http://bit.ly/34MBwT8">MIT</a></code> <code><img src="https://cdn.iconscout.com/icon/free/png-256/8-eight-digital-number-numerical-numbers-36025.png" style="display:inline;" width="13" height="13"></code> <code><img src="https://www.pylint.org/ico/favicon.ico" style="display:inline;" width="13" height="13"></code>
- <b><a href="https://github.com/lyft/linty_fresh">linty_fresh</a></b> (🥉12 · ⭐ 180 · 💀) - Surface lint errors during code review. <code><a href="http://bit.ly/3nYMfla">Apache-2</a></code> <code><img src="https://cdn.iconscout.com/icon/free/png-256/8-eight-digital-number-numerical-numbers-36025.png" style="display:inline;" width="13" height="13"></code> <code>mypy</code>
</details>
<br>
## Type checkers
<a href="#contents"><img align="right" width="15" height="15" src="https://git.io/JtehR" alt="Back to top"></a>
<details><summary><b><a href="https://github.com/python/mypy">mypy</a></b> (🥇46 · ⭐ 18K) - Optional static typing for Python. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/python/mypy) (👨💻 720 · 🔀 2.7K · 📦 240K · 📋 10K - 27% open · ⏱️ 28.05.2024):
```
git clone https://github.com/python/mypy
```
- [PyPi](https://pypi.org/project/mypy) (📥 26M / month · 📦 14K · ⏱️ 24.04.2024):
```
pip install mypy
```
- [Conda](https://anaconda.org/conda-forge/mypy) (📥 4M · ⏱️ 25.04.2024):
```
conda install -c conda-forge mypy
```
</details>
<details><summary><b><a href="https://github.com/microsoft/pyright">pyright</a></b> (🥈39 · ⭐ 12K) - Static Type Checker for Python. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/microsoft/pyright) (👨💻 110 · 🔀 1.3K · 📥 2.5K · 📦 860 · 📋 5.6K - 0% open · ⏱️ 29.05.2024):
```
git clone https://github.com/Microsoft/pyright
```
- [npm](https://www.npmjs.com/package/pyright) (📥 1.5M / month · 📦 15 · ⏱️ 29.05.2024):
```
npm install pyright
```
</details>
<details><summary><b><a href="https://github.com/google/pytype">pytype</a></b> (🥉36 · ⭐ 4.6K) - A static type analyzer for Python code. <code><a href="http://bit.ly/3nYMfla">Apache-2</a></code></summary>
- [GitHub](https://github.com/google/pytype) (👨💻 100 · 🔀 270 · 📦 3.6K · 📋 700 - 22% open · ⏱️ 29.05.2024):
```
git clone https://github.com/google/pytype
```
- [PyPi](https://pypi.org/project/pytype) (📥 560K / month · 📦 220 · ⏱️ 12.04.2024):
```
pip install pytype
```
- [Conda](https://anaconda.org/conda-forge/pytype) (📥 210K · ⏱️ 10.02.2024):
```
conda install -c conda-forge pytype
```
</details>
<details><summary><b><a href="https://github.com/facebook/pyre-check">pyre-check</a></b> (🥉35 · ⭐ 6.7K) - Performant type-checking for python. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/facebook/pyre-check) (👨💻 260 · 🔀 430 · 📦 21 · 📋 420 - 36% open · ⏱️ 29.05.2024):
```
git clone https://github.com/facebook/pyre-check
```
- [PyPi](https://pypi.org/project/pyre-check) (📥 78K / month · 📦 55 · ⏱️ 10.05.2024):
```
pip install pyre-check
```
</details>
<details><summary><b><a href="https://github.com/agronholm/typeguard">typeguard</a></b> (🥉35 · ⭐ 1.5K) - Run-time type checker for Python. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/agronholm/typeguard) (👨💻 35 · 🔀 100 · 📦 24K · 📋 320 - 6% open · ⏱️ 27.05.2024):
```
git clone https://github.com/agronholm/typeguard
```
- [PyPi](https://pypi.org/project/typeguard) (📥 22M / month · 📦 2.5K · ⏱️ 27.05.2024):
```
pip install typeguard
```
- [Conda](https://anaconda.org/conda-forge/typeguard) (📥 570K · ⏱️ 24.03.2024):
```
conda install -c conda-forge typeguard
```
</details>
<br>
## Code Formatters
<a href="#contents"><img align="right" width="15" height="15" src="https://git.io/JtehR" alt="Back to top"></a>
<details><summary><b><a href="https://github.com/psf/black">black</a></b> (🥇46 · ⭐ 38K) - The uncompromising Python code formatter. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/psf/black) (👨💻 450 · 🔀 2.4K · 📥 89K · 📦 500K · 📋 2.6K - 14% open · ⏱️ 16.05.2024):
```
git clone https://github.com/psf/black
```
- [PyPi](https://pypi.org/project/black) (📥 39M / month · 📦 21K · ⏱️ 26.04.2024):
```
pip install black
```
- [Conda](https://anaconda.org/conda-forge/black) (📥 10M · ⏱️ 26.04.2024):
```
conda install -c conda-forge black
```
</details>
<details><summary><b><a href="https://github.com/PyCQA/isort">isort</a></b> (🥈40 · ⭐ 6.3K) - A Python utility / library to sort imports. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/PyCQA/isort) (👨💻 290 · 🔀 560 · 📦 470K · 📋 1.3K - 17% open · ⏱️ 15.01.2024):
```
git clone https://github.com/PyCQA/isort
```
- [PyPi](https://pypi.org/project/isort) (📥 39M / month · 📦 12K · ⏱️ 13.12.2023):
```
pip install isort
```
- [Conda](https://anaconda.org/conda-forge/isort) (📥 5.9M · ⏱️ 14.12.2023):
```
conda install -c conda-forge isort
```
</details>
<details><summary><b><a href="https://github.com/google/yapf">yapf</a></b> (🥈39 · ⭐ 14K) - A formatter for Python files. <code><a href="http://bit.ly/3nYMfla">Apache-2</a></code></summary>
- [GitHub](https://github.com/google/yapf) (👨💻 150 · 🔀 890 · 📦 94K · 📋 860 - 45% open · ⏱️ 01.04.2024):
```
git clone https://github.com/google/yapf
```
- [PyPi](https://pypi.org/project/yapf) (📥 5.9M / month · 📦 1.2K · ⏱️ 22.09.2023):
```
pip install yapf
```
- [Conda](https://anaconda.org/conda-forge/yapf) (📥 1.8M · ⏱️ 26.07.2023):
```
conda install -c conda-forge yapf
```
</details>
<details><summary><b><a href="https://github.com/hhatto/autopep8">autopep8</a></b> (🥈39 · ⭐ 4.5K) - A tool that automatically formats Python code to conform to the PEP 8.. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/hhatto/autopep8) (👨💻 63 · 🔀 290 · 📦 210K · 📋 500 - 23% open · ⏱️ 30.05.2024):
```
git clone https://github.com/hhatto/autopep8
```
- [PyPi](https://pypi.org/project/autopep8) (📥 5M / month · 📦 1.5K · ⏱️ 30.05.2024):
```
pip install autopep8
```
- [Conda](https://anaconda.org/conda-forge/autopep8) (📥 1.5M · ⏱️ 29.05.2024):
```
conda install -c conda-forge autopep8
```
</details>
<details><summary><b><a href="https://github.com/PyCQA/docformatter">docformatter</a></b> (🥉27 · ⭐ 520 · 💤) - Formats docstrings to follow PEP 257. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/PyCQA/docformatter) (👨💻 30 · 🔀 59 · 📥 17 · 📦 3.5K · 📋 150 - 16% open · ⏱️ 15.10.2023):
```
git clone https://github.com/myint/docformatter
```
- [PyPi](https://pypi.org/project/docformatter) (📥 570K / month · 📦 220 · ⏱️ 12.07.2023):
```
pip install docformatter
```
- [Conda](https://anaconda.org/conda-forge/docformatter) (📥 130K · ⏱️ 18.07.2023):
```
conda install -c conda-forge docformatter
```
</details>
<details><summary><b><a href="https://github.com/lyz-code/autoimport">autoimport</a></b> (🥉18 · ⭐ 88) - Autoimport automatically fixes wrong import statements. <code><a href="http://bit.ly/2M0xdwT">❗️GPL-3.0</a></code></summary>
- [GitHub](https://github.com/lyz-code/autoimport) (👨💻 16 · 🔀 20 · 📦 130 · 📋 47 - 29% open · ⏱️ 10.05.2024):
```
git clone https://github.com/lyz-code/autoimport
```
- [PyPi](https://pypi.org/project/autoimport) (📥 4K / month · 📦 12 · ⏱️ 10.05.2024):
```
pip install autoimport
```
</details>
<details><summary>Show 1 hidden projects...</summary>
- <b><a href="https://github.com/myint/pyformat">pyformat</a></b> (🥉19 · ⭐ 95) - Formats Python code to follow a consistent style. <code><a href="https://tldrlegal.com/search?q=Saxpath">❗️Saxpath</a></code>
</details>
<br>
## Code Refactoring
<a href="#contents"><img align="right" width="15" height="15" src="https://git.io/JtehR" alt="Back to top"></a>
<details><summary><b><a href="https://github.com/davidhalter/jedi">jedi</a></b> (🥇41 · ⭐ 5.7K) - Awesome autocompletion, static analysis and refactoring library for python. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/davidhalter/jedi) (👨💻 170 · 🔀 500 · 📦 430K · 📋 1.4K - 4% open · ⏱️ 24.05.2024):
```
git clone https://github.com/davidhalter/jedi
```
- [PyPi](https://pypi.org/project/jedi) (📥 39M / month · 📦 980 · ⏱️ 02.10.2023):
```
pip install jedi
```
- [Conda](https://anaconda.org/conda-forge/jedi) (📥 22M · ⏱️ 03.10.2023):
```
conda install -c conda-forge jedi
```
</details>
<details><summary><b><a href="https://github.com/python-rope/rope">rope</a></b> (🥇36 · ⭐ 1.9K) - a python refactoring library. <code><a href="http://bit.ly/37RvQcA">❗️LGPL-3.0</a></code></summary>
- [GitHub](https://github.com/python-rope/rope) (👨💻 81 · 🔀 160 · 📥 28 · 📦 74K · 📋 360 - 28% open · ⏱️ 04.04.2024):
```
git clone https://github.com/python-rope/rope
```
- [PyPi](https://pypi.org/project/rope) (📥 910K / month · 📦 280 · ⏱️ 24.03.2024):
```
pip install rope
```
- [Conda](https://anaconda.org/conda-forge/rope) (📥 1.5M · ⏱️ 24.03.2024):
```
conda install -c conda-forge rope
```
</details>
<details><summary><b><a href="https://github.com/asottile/pyupgrade">pyupgrade</a></b> (🥈33 · ⭐ 3.4K) - A tool (and pre-commit hook) to automatically upgrade syntax for newer.. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/asottile/pyupgrade) (👨💻 35 · 🔀 170 · 📋 420 - 3% open · ⏱️ 28.05.2024):
```
git clone https://github.com/asottile/pyupgrade
```
- [PyPi](https://pypi.org/project/pyupgrade) (📥 590K / month · 📦 360 · ⏱️ 24.03.2024):
```
pip install pyupgrade
```
- [Conda](https://anaconda.org/conda-forge/pyupgrade) (📥 640K · ⏱️ 24.03.2024):
```
conda install -c conda-forge pyupgrade
```
</details>
<details><summary><b><a href="https://github.com/jendrikseipp/vulture">vulture</a></b> (🥈30 · ⭐ 3.1K) - Find dead Python code. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/jendrikseipp/vulture) (👨💻 42 · 🔀 140 · 📦 4.5K · 📋 210 - 14% open · ⏱️ 05.05.2024):
```
git clone https://github.com/jendrikseipp/vulture
```
- [PyPi](https://pypi.org/project/vulture) (📥 650K / month · 📦 180 · ⏱️ 19.01.2024):
```
pip install vulture
```
- [Conda](https://anaconda.org/conda-forge/vulture) (📥 81K · ⏱️ 16.06.2023):
```
conda install -c conda-forge vulture
```
</details>
<details><summary><b><a href="https://github.com/PyCQA/autoflake">autoflake</a></b> (🥈29 · ⭐ 870) - Removes unused imports and unused variables as reported by pyflakes. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/PyCQA/autoflake) (👨💻 38 · 🔀 80 · 📋 120 - 32% open · ⏱️ 17.05.2024):
```
git clone https://github.com/myint/autoflake
```
- [PyPi](https://pypi.org/project/autoflake) (📥 1.9M / month · 📦 930 · ⏱️ 13.03.2024):
```
pip install autoflake
```
- [Conda](https://anaconda.org/conda-forge/autoflake) (📥 540K · ⏱️ 16.06.2023):
```
conda install -c conda-forge autoflake
```
</details>
<details><summary><b><a href="https://github.com/Instagram/MonkeyType">MonkeyType</a></b> (🥈26 · ⭐ 4.6K) - A Python library that generates static type annotations by.. <code><a href="http://bit.ly/3aKzpTv">BSD-3</a></code></summary>
- [GitHub](https://github.com/Instagram/MonkeyType) (👨💻 50 · 🔀 170 · 📋 190 - 26% open · ⏱️ 07.05.2024):
```
git clone https://github.com/Instagram/MonkeyType
```
- [PyPi](https://pypi.org/project/monkeytype) (📥 240K / month · 📦 20 · ⏱️ 20.03.2023):
```
pip install monkeytype
```
- [Conda](https://anaconda.org/conda-forge/monkeytype) (📥 60K · ⏱️ 16.06.2023):
```
conda install -c conda-forge monkeytype
```
</details>
<details><summary><b><a href="https://github.com/asottile/add-trailing-comma">add-trailing-comma</a></b> (🥉22 · ⭐ 330) - A tool (and pre-commit hook) to automatically add trailing.. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/asottile/add-trailing-comma) (👨💻 11 · 🔀 22 · ⏱️ 28.05.2024):
```
git clone https://github.com/asottile/add-trailing-comma
```
- [PyPi](https://pypi.org/project/add-trailing-comma) (📥 59K / month · 📦 22 · ⏱️ 30.08.2023):
```
pip install add-trailing-comma
```
</details>
<details><summary><b><a href="https://github.com/hakancelikdev/unimport">unimport</a></b> (🥉21 · ⭐ 240) - The ultimate linter and formatter for removing unused import statements.. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/hakancelikdev/unimport) (👨💻 16 · 🔀 22 · 📋 120 - 9% open · ⏱️ 07.01.2024):
```
git clone https://github.com/hakancelik96/unimport
```
- [PyPi](https://pypi.org/project/unimport) (📥 20K / month · 📦 16 · ⏱️ 24.12.2023):
```
pip install unimport
```
</details>
<details><summary><b><a href="https://github.com/ilevkivskyi/com2ann">com2ann</a></b> (🥉18 · ⭐ 140) - Tool for translation type comments to type annotations in Python. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/ilevkivskyi/com2ann) (👨💻 8 · 🔀 12 · 📦 72 · 📋 29 - 24% open · ⏱️ 14.03.2024):
```
git clone https://github.com/ilevkivskyi/com2ann
```
- [PyPi](https://pypi.org/project/com2ann) (📥 15K / month · 📦 2 · ⏱️ 21.08.2021):
```
pip install com2ann
```
</details>
<details><summary><b><a href="https://github.com/elmotec/massedit">massedit</a></b> (🥉17 · ⭐ 110 · 💤) - Programmatically edit text files with Python. Useful for source to.. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/elmotec/massedit) (👨💻 9 · 🔀 16 · 📥 23 · 📦 43 · 📋 11 - 36% open · ⏱️ 12.09.2023):
```
git clone https://github.com/elmotec/massedit
```
- [PyPi](https://pypi.org/project/massedit) (📥 2.8K / month · 📦 3 · ⏱️ 11.09.2023):
```
pip install massedit
```
</details>
<details><summary>Show 8 hidden projects...</summary>
- <b><a href="https://github.com/facebookincubator/Bowler">Bowler</a></b> (🥈25 · ⭐ 1.5K · 💀) - Safe code refactoring for modern Python. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
- <b><a href="https://github.com/PyCQA/redbaron">redbaron</a></b> (🥉24 · ⭐ 690 · 💀) - Bottom-up approach to refactoring in python. <code><a href="http://bit.ly/37RvQcA">❗️LGPL-3.0</a></code>
- <b><a href="https://github.com/PyCQA/eradicate">eradicate</a></b> (🥉24 · ⭐ 200) - Removes commented-out code from Python files. <code><a href="https://tldrlegal.com/search?q=Saxpath">❗️Saxpath</a></code>
- <b><a href="https://github.com/PyCQA/baron">baron</a></b> (🥉23 · ⭐ 290 · 💀) - IDE allow you to refactor code, Baron allows you to write.. <code><a href="http://bit.ly/37RvQcA">❗️LGPL-3.0</a></code>
- <b><a href="https://github.com/dropbox/pyannotate">pyannotate</a></b> (🥉21 · ⭐ 1.4K · 💀) - Auto-generate PEP-484 annotations. <code><a href="http://bit.ly/3nYMfla">Apache-2</a></code>
- <b><a href="https://github.com/myint/unify">unify</a></b> (🥉20 · ⭐ 92 · 💀) - Modifies strings to all use the same quote where possible. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
- <b><a href="https://github.com/spulec/pep8ify">pep8ify</a></b> (🥉16 · ⭐ 120 · 💀) - A library that modifies python source code to conform to pep8. <code><a href="http://bit.ly/3nYMfla">Apache-2</a></code>
- <b><a href="https://github.com/ambv/retype">retype</a></b> (🥉13 · ⭐ 140 · 💀) - Re-apply type annotations from .pyi stubs to your codebase. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
</details>
<br>
## Code Security
<a href="#contents"><img align="right" width="15" height="15" src="https://git.io/JtehR" alt="Back to top"></a>
<details><summary><b><a href="https://github.com/PyCQA/bandit">bandit</a></b> (🥇38 · ⭐ 6.1K) - Bandit is a tool designed to find common security issues in Python.. <code><a href="http://bit.ly/3nYMfla">Apache-2</a></code></summary>
- [GitHub](https://github.com/PyCQA/bandit) (👨💻 180 · 🔀 580 · 📥 780 · 📦 49K · 📋 670 - 28% open · ⏱️ 10.05.2024):
```
git clone https://github.com/PyCQA/bandit
```
- [PyPi](https://pypi.org/project/bandit) (📥 4.8M / month · 📦 1.3K · ⏱️ 08.03.2024):
```
pip install bandit
```
- [Conda](https://anaconda.org/conda-forge/bandit) (📥 310K · ⏱️ 21.04.2024):
```
conda install -c conda-forge bandit
```
</details>
<details><summary><b><a href="https://github.com/sqlmapproject/sqlmap">sqlmap</a></b> (🥈33 · ⭐ 31K) - Automatic SQL injection and database takeover tool. <code><a href="http://bit.ly/2M0xdwT">❗️GPL-3.0</a></code></summary>
- [GitHub](https://github.com/sqlmapproject/sqlmap) (👨💻 140 · 🔀 5.5K · 📦 21 · 📋 5.2K - 1% open · ⏱️ 09.05.2024):
```
git clone https://github.com/sqlmapproject/sqlmap
```
- [PyPi](https://pypi.org/project/sqlmap) (📥 14K / month · 📦 12 · ⏱️ 09.05.2024):
```
pip install sqlmap
```
</details>
<details><summary><b><a href="https://github.com/Yelp/detect-secrets">detect-secrets</a></b> (🥈33 · ⭐ 3.5K) - An enterprise friendly way of detecting and preventing.. <code><a href="http://bit.ly/3nYMfla">Apache-2</a></code></summary>
- [GitHub](https://github.com/Yelp/detect-secrets) (👨💻 81 · 🔀 430 · 📋 370 - 34% open · ⏱️ 16.05.2024):
```
git clone https://github.com/Yelp/detect-secrets
```
- [PyPi](https://pypi.org/project/detect-secrets) (📥 610K / month · 📦 81 · ⏱️ 06.05.2024):
```
pip install detect-secrets
```
</details>
<details><summary><b><a href="https://github.com/pyupio/safety">safety</a></b> (🥉31 · ⭐ 1.6K) - Safety checks Python dependencies for known security vulnerabilities and.. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/pyupio/safety) (👨💻 42 · 🔀 140 · 📥 550K · 📦 14K · 📋 220 - 42% open · ⏱️ 01.05.2024):
```
git clone https://github.com/pyupio/safety
```
- [PyPi](https://pypi.org/project/safety) (📥 1.5M / month · 📦 300 · ⏱️ 01.05.2024):
```
pip install safety
```
- [Conda](https://anaconda.org/conda-forge/safety) (📥 95K · ⏱️ 01.05.2024):
```
conda install -c conda-forge safety
```
</details>
<details><summary>Show 4 hidden projects...</summary>
- <b><a href="https://github.com/dashingsoft/pyarmor">pyarmor</a></b> (🥈34 · ⭐ 3K) - A tool used to obfuscate python scripts, bind obfuscated scripts to.. <code><a href="https://tldrlegal.com/search?q=SGI-B-2.0">❗️SGI-B-2.0</a></code>
- <b><a href="https://github.com/python-security/pyt">pyt</a></b> (🥉23 · ⭐ 2.2K · 💀) - A Static Analysis Tool for Detecting Security Vulnerabilities in.. <code><a href="http://bit.ly/2KucAZR">❗️GPL-2.0</a></code>
- <b><a href="https://github.com/dlint-py/dlint">dlint</a></b> (🥉20 · ⭐ 160 · 💀) - Dlint is a tool for encouraging best coding practices and helping.. <code><a href="http://bit.ly/3aKzpTv">BSD-3</a></code>
- <b><a href="https://github.com/landscapeio/dodgy">dodgy</a></b> (🥉20 · ⭐ 120 · 💀) - Looks at Python code to search for things which look dodgy such as.. <code><a href="http://bit.ly/34MBwT8">MIT</a></code>
</details>
<br>
## Virtual Environments
<a href="#contents"><img align="right" width="15" height="15" src="https://git.io/JtehR" alt="Back to top"></a>
<details><summary><b><a href="https://github.com/pypa/pipenv">pipenv</a></b> (🥇45 · ⭐ 25K · 📈) - Python Development Workflow for Humans. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/pypa/pipenv) (👨💻 510 · 🔀 1.8K · 📦 140K · 📋 4.2K - 6% open · ⏱️ 24.05.2024):
```
git clone https://github.com/pypa/pipenv
```
- [PyPi](https://pypi.org/project/pipenv) (📥 11M / month · 📦 210 · ⏱️ 05.02.2024):
```
pip install pipenv
```
- [Conda](https://anaconda.org/conda-forge/pipenv) (📥 160K · ⏱️ 05.02.2024):
```
conda install -c conda-forge pipenv
```
</details>
<details><summary><b><a href="https://github.com/pypa/virtualenv">virtualenv</a></b> (🥈42 · ⭐ 4.7K) - Virtual Python Environment builder. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/pypa/virtualenv) (👨💻 280 · 🔀 1K · 📦 390K · 📋 1.3K - 1% open · ⏱️ 24.05.2024):
```
git clone https://github.com/pypa/virtualenv
```
- [PyPi](https://pypi.org/project/virtualenv) (📥 130M / month · 📦 1.5K · ⏱️ 13.05.2024):
```
pip install virtualenv
```
- [Conda](https://anaconda.org/conda-forge/virtualenv) (📥 6.9M · ⏱️ 14.05.2024):
```
conda install -c conda-forge virtualenv
```
</details>
<details><summary><b><a href="https://github.com/ekalinin/nodeenv">nodeenv</a></b> (🥈35 · ⭐ 1.7K) - Virtual environment for Node.js & integrator with virtualenv. <code><a href="http://bit.ly/3aKzpTv">BSD-3</a></code></summary>
- [GitHub](https://github.com/ekalinin/nodeenv) (👨💻 98 · 🔀 200 · 📦 85K · 📋 190 - 24% open · ⏱️ 28.05.2024):
```
git clone https://github.com/ekalinin/nodeenv
```
- [PyPi](https://pypi.org/project/nodeenv) (📥 22M / month · 📦 210 · ⏱️ 28.05.2024):
```
pip install nodeenv
```
- [Conda](https://anaconda.org/conda-forge/nodeenv) (📥 3.9M · ⏱️ 16.06.2023):
```
conda install -c conda-forge nodeenv
```
</details>
<details><summary><b><a href="https://github.com/pyenv/pyenv">pyenv</a></b> (🥈34 · ⭐ 37K) - Simple Python version management. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/pyenv/pyenv) (👨💻 440 · 🔀 2.9K · 📦 21 · 📋 1.7K - 2% open · ⏱️ 27.05.2024):
```
git clone https://github.com/pyenv/pyenv
```
- [PyPi](https://pypi.org/project/pyenv) (📥 12K / month · ⏱️ 12.01.2019):
```
pip install pyenv
```
</details>
<details><summary><b><a href="https://github.com/pyenv/pyenv-virtualenv">pyenv-virtualenv</a></b> (🥉23 · ⭐ 6.1K) - a pyenv plugin to manage virtualenv (a.k.a. python-virtualenv). <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/pyenv/pyenv-virtualenv) (👨💻 61 · 🔀 390 · 📦 21 · 📋 350 - 31% open · ⏱️ 09.04.2024):
```
git clone https://github.com/pyenv/pyenv-virtualenv
```
</details>
<details><summary><b><a href="https://github.com/pyenv/pyenv-installer">pyenv-installer</a></b> (🥉16 · ⭐ 3.9K) - This tool is used to install `pyenv` and friends. <code><a href="http://bit.ly/34MBwT8">MIT</a></code></summary>
- [GitHub](https://github.com/pyenv/pyenv-installer) (👨💻 40 · 🔀 420 · 📋 81 - 3% open · ⏱️ 21.04.2024):
```
git clone https://github.com/pyenv/pyenv-installer
```
</details>
<details><summary><b><a href="https://github.com/raiyanyahya/freshenv">freshenv</a></b> (🥉13 · ⭐ 170 · 💤) - Provision, share, manage local and cloud developer environments. <code><a href="http://bit.ly/3postzC">MPL-2.0</a></code></summary>
- [GitHub](https://github.com/raiyanyahya/freshenv) (👨💻 3 · 🔀 3 · 📋 5 - 40% open · ⏱️ 13.10.2023):
```