100 most popular Perl libraries

In the world of Perl programming language there is a great thing called CPAN.

CPAN — is a storage for Perl libraries. Everybody can write Perl library, upload it to CPAN and then others would be able to take that library and to use it in their project.

There are several different web interfaces. All of them are working with the same CPAN storage, but shows its data in a bit different way. I prefer to use https://metacpan.org.

On Metacpan it is possible to vote for the libraries. If you click on the ++ symbol on the library page the system will understand that you have voted for this library (liked it):

How to like on metacpan

There is no library ratings on Metacpan itself, but it has API that can be used to create top libraries by the number of likes.

I've written a simple script, that shows top 100 Perl libraries with the maximum number of likes. It is funny, but the Perl language is on the second place. And the most popular Perl library is web framework Mojolicious.

All good Perl programmers must known about popular libraries. It is not obligatory to know them in all the details (this is hardly possible), but it is worth knowing what is it for and when it should be used.

So, this is the list generated at 2017-05-28 (the number after the dash is the likes count):

  1. Mojolicious — 332
  2. perl — 287
  3. Moose — 257
  4. DBIx-Class — 242
  5. Moo — 215
  6. App-cpanminus — 214
  7. DBI — 200
  8. Plack — 191
  9. DateTime — 163
  10. Dist-Zilla — 151
  11. App-perlbrew — 142
  12. Dancer — 139
  13. Test-Simple — 138
  14. Try-Tiny — 137
  15. Devel-NYTProf — 135
  16. Catalyst-Runtime — 129
  17. libwww-perl — 126
  18. Scalar-List-Utils — 122
  19. Path-Tiny — 113
  20. AnyEvent — 113
  21. Data-Printer — 107
  22. Template-Toolkit — 103
  23. ack — 99
  24. List-MoreUtils — 97
  25. Type-Tiny — 87
  26. Perl-Tidy — 86
  27. JSON-XS — 86
  28. Starman — 85
  29. Dancer2 — 82
  30. HTTP-Tiny — 81
  31. Devel-Cover — 79
  32. URI — 78
  33. Getopt-Long — 78
  34. Perl-Critic — 77
  35. Path-Class — 75
  36. MongoDB — 74
  37. Data-Dumper — 74
  38. Capture-Tiny — 74
  39. JSON — 72
  40. XML-LibXML — 70
  41. WWW-Mechanize — 69
  42. Task-Kensho — 69
  43. Carton — 69
  44. Text-CSV_XS — 64
  45. DBD-SQLite — 64
  46. local-lib — 62
  47. Time-Moment — 58
  48. SQL-Abstract — 54
  49. Log-Log4perl — 52
  50. Parallel-ForkManager — 51
  51. MCE — 50
  52. Text-Xslate — 48
  53. IO-All — 48
  54. PathTools — 47
  55. Imager — 47
  56. File-Slurp — 47
  57. autodie — 45
  58. Reply — 44
  59. Ubic — 43
  60. HTTP-Message — 43
  61. DBD-Pg — 43
  62. YAML — 42
  63. Rex — 41
  64. Pinto — 40
  65. Text-CSV — 38
  66. Devel-REPL — 36
  67. Carp — 36
  68. XML-Twig — 35
  69. Time-HiRes — 35
  70. Minion — 35
  71. File-Temp — 35
  72. Devel-hdb — 34
  73. Test-Harness — 33
  74. Mouse — 31
  75. Catalyst-Manual — 31
  76. Term-ANSIColor — 30
  77. PPI — 30
  78. Moops — 30
  79. Coro — 30
  80. Role-Tiny — 28
  81. PSGI — 28
  82. Log-Any — 28
  83. Daemon-Control — 28
  84. DBIx-Class-Schema-Loader — 28
  85. CHI — 28
  86. Regexp-Common — 27
  87. IO — 27
  88. Test-Fatal — 26
  89. Test-Deep — 26
  90. Redis — 26
  91. Mojo-Pg — 25
  92. DBD-mysql — 25
  93. Marpa-R2 — 24
  94. Regexp-Debugger — 23
  95. Mango — 23
  96. DBIx-Class-Helpers — 23
  97. POE — 21
  98. Time-Piece — 20
  99. Sereal — 20
  100. Furl — 20

Ivan Bessarabov
ivan@bessarabov.ru

28 may 2017

This text is also available in Russian language