awesome-perl

A curated list of awesome Perl frameworks and libraries. Come on Pull Requests!

GitHub

672 stars
88 watching
97 forks
Language: Perl
last commit: 2 months ago
Linked from 9 awesome lists


Awesome Perl / Another module list

Task::Kensho 71 over 3 years ago
Perlres - A list of resources about Perl 170 about 1 month ago
PerlMaven.com list of Perl Software
Slaven's CPAN in a nutshell 9 12 days ago

Awesome Perl / Args

Data::Validator Rule based validator on type constraint system
Params::Util Simple, compact and correct param-checking functions
Params::ValidationCompiler Validate method/function parameters
Smart::Args

Awesome Perl / Audio

Audio::CD Interface to libcdaudio (cd + cddb)
Audio::Wav Modules for reading & writing Microsoft WAV files
Audio::SndFile Perl library for reading and writing sound files
Audio::Ao A Perl wrapper for the Ao audio library
MIDI::ALSA the perl ALSA library, plus some interface functions

Awesome Perl / Audio / DSP

Audio::Analyzer Demodulate Audio through FFT and perl!
Audio::Analyzer::ToneDetect Detect freq of tones in an audio file or stream

Awesome Perl / Benchmarks

Benchmark
Dumbbench
Parallel::Benchmark Benchmark in multiprocesses

Awesome Perl / Caches

CHI Unified cache handling interface, think DBI for caches
CHI::Driver::DBI DBI driver for CHI
CHI::Driver::DBIC DBIx::Class driver for CHI
CHI::Driver::Memcached Memcached driver for CHI
CHI::Driver::MongoDB MongoDB driver for CHI
CHI::Driver::Redis Redis driver for CHI
Catalyst::Plugin::Session::Store::CHI Use CHI module to handle storage backend for session data
CGI::Application::Plugin::CHI CGI-App plugin for CHI caching interface
Mojolicious::Plugin::CHI Interact with CHI caches

Awesome Perl / Class Builder

Class::Accessor::Lite Simple accessor generator
Class::Accessor::Lite::Lazy Generate lazy accessors
Homer Simple Prototype-based object system
Mo Micro Objects. Mo is less
Moo Class builder supporting meta programming
Moose The one and only, Moose
Mouse Yet another class builder like Moo/Moose
Object::Pad , experimental proving-ground for
Object::Tiny A class builder that is terse, fast, and tiny

Awesome Perl / CLI

App::Cmd Write command line apps with less suffering
Getopt::Long Extended processing of command line options

Awesome Perl / Cloud

AWS::CloudFront Lightweight interface to Amazon CloudFront CDN
AWS::S3 Lightweight interface to Amazon S3 (Simple Storage Service)
Net::Amazon::EC2 Interface to the Amazon Elastic Compute Cloud (EC2) environment
Net::AWS::SES Perl extension that implements Amazon Simple Email Service (SES) client
WebService::DigitalOcean Access the DigitalOcean RESTful API (v2)
WebService::Dropbox Interface to Dropbox API

Awesome Perl / Cryptography

Bitcoin::Crypto Bitcoin cryptography in Perl
CryptX Cryptographic toolkit

Awesome Perl / Commercial WebServices

Net::Xero Interface to Xero accounting
PagerDuty::Agent A perl PagerDuty client
WebService::Spotify A simple interface to the Spotify Web API
WebService::Xero Access Xero Accounting Package Public and Private Application API
WWW::Shopify object representing acess to a particular Shopify store
WWW::Spotify Spotify Web API Wrapper

Awesome Perl / Container

Object::Container

Awesome Perl / Data Format

BSON Binary JSON format
CBOR::Free Support for , IETF’s “binary JSON”
Data::Dumper::Simple Reduce and faster Data::Dumper and eval() equivalent
Data::MessagePack
JSON::PP
JSON::XS
Sereal
Storable
Text::CSV
Text::CSV_XS
Text::Markdown
TOML
XML::LibXML
XML::Compile::Schema Interpret schema elements and types: create processors for XML messages
XML::Compile::SOAP Implements the SOAP 1.1 protocol, client side
XML::Compile::WSDL Use SOAP with a WSDL version 1.1 communication specification file
YAML

Awesome Perl / Database

DBI
DBIx::Connector Fast, safe DBI connection and transaction management
DBIx::Handler Fork-safe DBI handler
DBIx::Inspector
DBIx::QueryLog
DBIx::Sunny Useful DBI Wrapper
DBIx::TransactionManager

Awesome Perl / Database Drivers / Relational Databases

DBD::CSV
DBD::Firebird
DBD::MariaDB MariaDB and MySQL driver for the Perl5 Database Interface (DBI)
DBD::mysql
DBD::ODBC Any ODBC Driver. MS-SQL w/ placeholders
DBD::Oracle Oracle database driver for the DBI module
DBD::Pg PostgreSQL driver for DBI
DBD::SQLite
DBD::Sybase Sybase and MS-SQL. No placeholders w/ MS-SQL though

Awesome Perl / Database Drivers / NoSQL Databases

Cache::Memcached::Fast
Mango Pure-Perl non-blocking I/O MongoDB driver
Redis
Redis::Fast Perl wrapper around hiredis driver
Search::Elasticsearch Offical Elasticsearch client library
UnQLite

Awesome Perl / Date & Time

DateTime
Time::Moment
Time::Piece

Awesome Perl / Devices

Device::SerialPort Generic Serial Port library for serial line communication
Device::Modem Talk to modem devices conneted via serial port
Device::Onkyo Control Onkyo/Integra AV equipment via LAN or Serial
Chipcard::PCSC::Card Control Smart card using perl and PCSC
Device::XBee::API Control XBee Device using pure perl code
Device::Firmata module for controlling Firmata devices like Arduino

Awesome Perl / DevOps Tools

Rex Remote Execution

Awesome Perl / Email

Email::Sender
Email::Reply
Email::Stuffer

Awesome Perl / Event Loops

AE Simpler, faster, newer AnyEvent API
AnyEvent the DBI of event loop programming
EV Uses libev, very fast and popular. Default for AnyEvent if present
Event Works well, but older
IO::Async Asynchronous event-driven programming
POE Common interface for several event loops
Promise::XS Promises in Perl

Awesome Perl / Exception Handling

autodie Replace functions with ones that succeed or die with lexical scope
Exception::Class A module that allows you to declare real exception classes in Perl
Syntax::Keyword::Try a try/catch/finally syntax for perl
Throwable a role for classes that can be thrown
Try::Tiny minimal try/catch with proper preservation of $@
TryCatch first class try catch semantics for Perl, without source filters

Awesome Perl / DOM Manipulation

HTML5::DOM Super fast html5 DOM library with css selectors (based on Modest/MyHTML)

Awesome Perl / File Manipulation

File::Util Easy, versatile, portable file handling
Path::Tiny Simple object-oriented file manipulation

Awesome Perl / Form Frameworks

Catalyst::Controller::HTML::FormFu Use HTML::FormFu in Catalyst
CGI::FormBuilder Easily generate and process stateful forms
Form::Sensible A sensible way to handle form based user interface
Form::Tiny Forms reusing Type::Tiny type constraints
Form::Toolkit A toolkit to build Data centric Forms
HTML::FormFu HTML Form Creation, Rendering and Validation Framework
HTML::FormFu::ExtJS ExtJS form generation from HTML::FormFu config files
HTML::FormHandler HTML forms using Moose
Mojolicious::Plugin::FormFields Lightweight, flexible form builder with validation and filtering
WWW::Form Simple and extendable module that allows developers to handle HTML form input validation and display flexibly and consistently

Awesome Perl / Images

Image::Magick An object-oriented interface to ImageMagick's image composing libraries
Imager
GD Interface to Gd Graphics Library
Image::Info Get image informations
Image::PNG::Libpng Perl interface for libpng
Graphics::TIFF Perl wrapper for libtiff
Image::BMP Perl bitmap image parser and viewer

Awesome Perl / List Manipulation

Array::Unique Tie-able array that allows only unique values
List::AllUtils Combines List::Util, List::SomeUtils and List::UtilsBy in one bite-sized package
List::Compare Compare elements of two or more lists
List::Gen Provides functions for generating lists
List::MoreUtils Provide the stuff missing in List::Util
List::SomeUtils Provide the stuff missing in List::Util
List::Util A selection of general-utility list subroutines
List::UtilsBy higher-order list utility functions

Awesome Perl / Logging

Log::Dispatch
Log::Log4perl
Log::Minimal

Awesome Perl / Module Development

Dist::Zilla -
Minilla CPAN module authoring tool

Awesome Perl / Network

DOCSIS::ConfigFile Decodes and encodes DOCSIS config files
NetAddr::MAC Handle MAC addresses
Net::SSH::Perl SSH client implemented in Perl
Net::SSH2 Wrapper for
Net::OpenSSH Run commands remotely using the client
Net::OpenSSH::Parallel Run remote commands in parallel using the OpenSSH client
Net::SSH::Any Run remote commands using any module or binary client available
Net::SFTP::Foreign SFTP client for remote file access
Object::Remote Run Perl code on remote machines
Net::CLI::Interact Automates interactive programs
Net::Appliance::Session Automates interaction with appliances

Awesome Perl / ORM

DBIx::Class
Rose::DB
Teng

Awesome Perl / Package Management

App::cpanminus
Carton
Pinto Powerful local CPAN repos

Awesome Perl / Processes and Threads

Parallel::ForkManager A simple parallel processing fork manager
Parallel::Prefork A simple prefork server framework
Proclet Minimalistic supervisor, a Perl port of

Awesome Perl / Profiling

Devel::KYTProf Very light profiler for I/Os such as HTTP request-responses and SQL queries
Devel::NYTProf Code profiler

Awesome Perl / Protocol

Furl Faster HTTP(S) Client
HTTP::Tiny Minimal and fast client. Included in the standard packages
LWP::UserAgent Popular HTTP(S) Client
Net::Curl (libcurl)[ integration
Net::DHCP Send and receive DHCP packets
Net::DNS Resolve DNS host names
Protocol::DBus D-Bus in (pure) Perl

Awesome Perl / Queueing

Gearman
Minion Pure-Perl job queue
Net::RabbitMQ
Net::Stomp
Qudo
Resque
TheSchwartz

Awesome Perl / Science/Numerics

BioPerl
Chart::Clicker Powerful, extensible charting
PDL
PDL (CPAN)
PDL::Graphics::Gnuplot
PDL::IO::*
PDL::LinearAlgebra
PDL::Stats
Physics::*

Awesome Perl / Stream Manipulation

RxPerl Perl implementation of / rxjs

Awesome Perl / REST Frameworks

Catalyst::Action::REST Automated REST Method Dispatching
Dancer2::Plugin::REST A plugin for writing RESTful apps with Dancer2
Dancer::Plugin::REST A plugin for writing RESTful apps with Dancer
Raisin a REST API micro framework for Perl
Squatting A Camping-inspired Web Microframework for Perl

Awesome Perl / Template Engines

HTML::Template Templates for web pages
Template::Alloy TT2/3, HT, HTE, Tmpl, and Velocity Engine
Template::Toolkit Very Popular Template Processing System
Text::MicroTemplate Fast, simple and safe template engine written in pure-Perl and core modules
Text::MicroTemplate::Extended Extended Text::MicroTemplate
Text::Template Templates with embedded perl
Text::Xslate Faster template engine with XS. Supports multiple syntaxes
Tiffany Generic interface for template engines. It makes it easy to use multiple template engines
Template::Magic Magic merger of runtime values with templates

Awesome Perl / Testing / Testing Frameworks

Test::Base A Data Driven Testing Framework
Test::Base::Less Limited version of Test::Base
Test::BDD::Cucumber Implementation of the popular Cucumber framework in Perl
Test::Class Class-based testing. Support "setup" and "teardown"
Test::Deep Test deep and complex data structures with great flexibility
Test::Deep::Matcher
Test::Harness Run Perl standard test scripts with statistics
Test::Kantan simple, flexible, fun "Testing framework"
Test::More

Awesome Perl / Testing / Test Double

Test::Exception
Test::Fatal Simple module for verifying exceptions
Test::Mock::Guard Mocking package subroutines
Test::MockTime
Test::mysqld
Test::TCP Launch temporary TCP Server
Test::Time Simple module for faking system time

Awesome Perl / Testing / Coverage

Devel::Cover
Devel::Cover::Report::Coveralls Report to Coveralls

Awesome Perl / Tools

App::Ack ack is a tool like grep, optimized for programmers
App::Nopaste Post to various pastebins from the CLI
Daiku Make for Perl
Data::Printer Colored pretty-print of Perl data structures and objects
Reply Read-eval-print-loop(REPL) command-line tool
Riji Static site generator using markdown and git mainly for blogging
Smart::Comments Comments that do more than just sit there
Toolbox::Simple Simplfy some common tasks in Perl
Script::Toolbox Framework for the daily business scripts
Devel::Kit Handy toolbox of things to ease development/debugging
Config::Tiny Read/Write .ini style files with as little code as possible

Awesome Perl / Type checking

MooseX::Types Moose types management tool
Type::Tiny Tiny, yet comprehensive type library

Awesome Perl / Video

FFmpeg Interface to FFmpeg, a video converter written in C
Video::Info Retrieve video properties such as: height width codec fps
Vlc::Engine use Vlc media player with Perl
VideoLAN::LibVLC Perl bindings for libvlc.so
Video::Generator Perl class for video generation

Awesome Perl / Web Frameworks

Amon2
Catalyst Overflowing with features. Very popular
Dancer ( )
Dancer2
Gantry Web application framework for mod_perl, cgi, etc
Kelp Plack-focused Perl web framework
Kossy A Web framework with simple interface
Mojolicious An all in one framework
Poet a modern Perl web framework for Mason developers

Awesome Perl / Web Frameworks / Middlewares

Gazelle Preforked Plack Handler for performance freaks
Plack PSGI server implementation and utilities for Web applications
Server::Starter Process manager with the "graceful restart" feature
Starlet High-performance PSGI Server
Starman High-performance preforking PSGI/Plack web server
Twiggy Event-driven PSGI application server

Awesome Perl / Web Frameworks-Like

Embperl Building dynamic Websites with Perl (sort of like Perl crossed with PHP)
Mason Powerful, high-performance templating for the web and beyond

Awesome Perl / Web Scraping

Web::Scraper
WWW::Mechanize
WWW::Mechanize::PhantomJS automate the PhantomJS browser
WWW::Scripter For scripting web sites that have scripts
WWW::Selenium

Awesome Perl / Network Security

Net::Pcap Interface to the pcap LBL packet capture library
Net::Ncap Perl binding to the ncap network data capture library
Net::Frame Perl framework for frame crafting
NetPacket assemble/disassemble network packets at the protocol level
Net::Write portable interface to open and send raw data to network
Net::Analysis Perl library for analysing network traffic
Net::Silk Perl's Interface to the SiLK network flow library
Net::Inspect Perl library for inspection of data on various network layers
Net::Tshark Perl interface for Tshark network capture utility
Net::Sharktools Wireshark's packet inspection capabilities in Perl
File::PCAP Read, Write and manipulate PCAP file format through Perl
Net::P0f Perl interface to p0f utility, usefull for finger-printing os
Net::Pcap::Reassemble Perl IP fragment reassembly for Net::Pcap
Nagios::NRPE Pure perl Nagios NRPE implementation
Monitoring::Plugin A family of perl modules to streamline writing Naemon, Nagios, Icinga or Shinken (and compatible) plugins
Net::Connection::Sniffer practical Perl library for MiTM connections
Net::ARP Library for crafting ARP packets
SNMPMonitor Perl extension for writing SNMP Monitors
Net::LibNIDS Perl interface for the Network Intrusion Detection System library
Parse::Snort Perl Snort rules parser
Net::Wireless::802_11::WPA::CLI Perl WPA_CLI interface
IO::Socket::SSL::Intercept library for intercepting SSL connections through Perl

Awesome Perl / Metadata Forensics

Image::ExifTool General metadata parser and viewer framework

Awesome Perl / Reverse Engineering

Disassembly Decompiles binary bytecode to readable and recompilable bytecode assembler
Python::Bytecode Parse Python bytecode
B::Bytecode Compiles a Perl script into a bytecode format that could be loaded later
Perf::ARM Use ARM instructions in Perl
Asm::Z80::Table assemble / disassemble all Z80 CPU assembly instructions with Perl
X86::Disasm Disassemble Intel x86 instructions with Perl
Disassemble::X86 Another library for disassembe X86 instructions
X86::Udis86 Interface for the C Udis disassembler
Asm::X86 List of instructions and registers of x86-compatible processors, validating and converting instructions and memory references
ELF::Writer write and read executable ELF files

Other Awesome Lists

bayandin/awesome-awesomeness 31,731 4 months ago
emijrp/awesome-awesome 2,795 2 months ago
fleveque/awesome-awesomes 597 11 months ago
sindresorhus/awesome 328,316 about 1 month ago
t3chnoboy/awesome-awesome-awesome 1,921 11 months ago

Backlinks from these awesome lists: