awesome-perl

Perl framework catalog

A curated collection of Perl frameworks and libraries

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

GitHub

682 stars
88 watching
99 forks
Language: Perl
last commit: about 2 years ago
Linked from 9 awesome lists


Awesome Perl / Another module list

Task::Kensho71about 5 years ago
Perlres - A list of resources about Perl171almost 2 years ago
PerlMaven.com list of Perl Software
Slaven's CPAN in a nutshell9almost 2 years ago

Awesome Perl / Args

Data::ValidatorRule based validator on type constraint system
Params::UtilSimple, compact and correct param-checking functions
Params::ValidationCompilerValidate method/function parameters
Smart::Args

Awesome Perl / Audio

Audio::CDInterface to libcdaudio (cd + cddb)
Audio::WavModules for reading & writing Microsoft WAV files
Audio::SndFilePerl library for reading and writing sound files
Audio::AoA Perl wrapper for the Ao audio library
MIDI::ALSAthe perl ALSA library, plus some interface functions

Awesome Perl / Audio / DSP

Audio::AnalyzerDemodulate Audio through FFT and perl!
Audio::Analyzer::ToneDetectDetect freq of tones in an audio file or stream

Awesome Perl / Benchmarks

Benchmark
Dumbbench
Parallel::BenchmarkBenchmark in multiprocesses

Awesome Perl / Caches

CHIUnified cache handling interface, think DBI for caches
CHI::Driver::DBIDBI driver for CHI
CHI::Driver::DBICDBIx::Class driver for CHI
CHI::Driver::MemcachedMemcached driver for CHI
CHI::Driver::MongoDBMongoDB driver for CHI
CHI::Driver::RedisRedis driver for CHI
Catalyst::Plugin::Session::Store::CHIUse CHI module to handle storage backend for session data
CGI::Application::Plugin::CHICGI-App plugin for CHI caching interface
Mojolicious::Plugin::CHIInteract with CHI caches

Awesome Perl / Class Builder

Class::Accessor::LiteSimple accessor generator
Class::Accessor::Lite::LazyGenerate lazy accessors
HomerSimple Prototype-based object system
MoMicro Objects. Mo is less
MooClass builder supporting meta programming
MooseThe one and only, Moose
MouseYet another class builder like Moo/Moose
Object::Pad, experimental proving-ground for
Object::TinyA class builder that is terse, fast, and tiny

Awesome Perl / CLI

App::CmdWrite command line apps with less suffering
Getopt::LongExtended processing of command line options

Awesome Perl / Cloud

AWS::CloudFrontLightweight interface to Amazon CloudFront CDN
AWS::S3Lightweight interface to Amazon S3 (Simple Storage Service)
Net::Amazon::EC2Interface to the Amazon Elastic Compute Cloud (EC2) environment
Net::AWS::SESPerl extension that implements Amazon Simple Email Service (SES) client
WebService::DigitalOceanAccess the DigitalOcean RESTful API (v2)
WebService::DropboxInterface to Dropbox API

Awesome Perl / Cryptography

Bitcoin::CryptoBitcoin cryptography in Perl
CryptXCryptographic toolkit

Awesome Perl / Commercial WebServices

Net::XeroInterface to Xero accounting
PagerDuty::AgentA perl PagerDuty client
WebService::SpotifyA simple interface to the Spotify Web API
WebService::XeroAccess Xero Accounting Package Public and Private Application API
WWW::Shopifyobject representing acess to a particular Shopify store
WWW::SpotifySpotify Web API Wrapper

Awesome Perl / Container

Object::Container

Awesome Perl / Data Format

BSONBinary JSON format
CBOR::FreeSupport for , IETF’s “binary JSON”
Data::Dumper::SimpleReduce 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::SchemaInterpret schema elements and types: create processors for XML messages
XML::Compile::SOAPImplements the SOAP 1.1 protocol, client side
XML::Compile::WSDLUse SOAP with a WSDL version 1.1 communication specification file
YAML

Awesome Perl / Database

DBI
DBIx::ConnectorFast, safe DBI connection and transaction management
DBIx::HandlerFork-safe DBI handler
DBIx::Inspector
DBIx::QueryLog
DBIx::SunnyUseful DBI Wrapper
DBIx::TransactionManager

Awesome Perl / Database Drivers / Relational Databases

DBD::CSV
DBD::Firebird
DBD::MariaDBMariaDB and MySQL driver for the Perl5 Database Interface (DBI)
DBD::mysql
DBD::ODBCAny ODBC Driver. MS-SQL w/ placeholders
DBD::OracleOracle database driver for the DBI module
DBD::PgPostgreSQL driver for DBI
DBD::SQLite
DBD::SybaseSybase and MS-SQL. No placeholders w/ MS-SQL though

Awesome Perl / Database Drivers / NoSQL Databases

Cache::Memcached::Fast
MangoPure-Perl non-blocking I/O MongoDB driver
Redis
Redis::FastPerl wrapper around hiredis driver
Search::ElasticsearchOffical Elasticsearch client library
UnQLite

Awesome Perl / Date & Time

DateTime
Time::Moment
Time::Piece

Awesome Perl / Devices

Device::SerialPortGeneric Serial Port library for serial line communication
Device::ModemTalk to modem devices conneted via serial port
Device::OnkyoControl Onkyo/Integra AV equipment via LAN or Serial
Chipcard::PCSC::CardControl Smart card using perl and PCSC
Device::XBee::APIControl XBee Device using pure perl code
Device::Firmatamodule for controlling Firmata devices like Arduino

Awesome Perl / DevOps Tools

RexRemote Execution

Awesome Perl / Email

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

Awesome Perl / Event Loops

AESimpler, faster, newer AnyEvent API
AnyEventthe DBI of event loop programming
EVUses libev, very fast and popular. Default for AnyEvent if present
EventWorks well, but older
IO::AsyncAsynchronous event-driven programming
POECommon interface for several event loops
Promise::XSPromises in Perl

Awesome Perl / Exception Handling

autodieReplace functions with ones that succeed or die with lexical scope
Exception::ClassA module that allows you to declare real exception classes in Perl
Syntax::Keyword::Trya try/catch/finally syntax for perl
Throwablea role for classes that can be thrown
Try::Tinyminimal try/catch with proper preservation of $@
TryCatchfirst class try catch semantics for Perl, without source filters

Awesome Perl / DOM Manipulation

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

Awesome Perl / File Manipulation

File::UtilEasy, versatile, portable file handling
Path::TinySimple object-oriented file manipulation

Awesome Perl / Form Frameworks

Catalyst::Controller::HTML::FormFuUse HTML::FormFu in Catalyst
CGI::FormBuilderEasily generate and process stateful forms
Form::SensibleA sensible way to handle form based user interface
Form::TinyForms reusing Type::Tiny type constraints
Form::ToolkitA toolkit to build Data centric Forms
HTML::FormFuHTML Form Creation, Rendering and Validation Framework
HTML::FormFu::ExtJSExtJS form generation from HTML::FormFu config files
HTML::FormHandlerHTML forms using Moose
Mojolicious::Plugin::FormFieldsLightweight, flexible form builder with validation and filtering
WWW::FormSimple and extendable module that allows developers to handle HTML form input validation and display flexibly and consistently

Awesome Perl / Images

Image::MagickAn object-oriented interface to ImageMagick's image composing libraries
Imager
GDInterface to Gd Graphics Library
Image::InfoGet image informations
Image::PNG::LibpngPerl interface for libpng
Graphics::TIFFPerl wrapper for libtiff
Image::BMPPerl bitmap image parser and viewer

Awesome Perl / List Manipulation

Array::UniqueTie-able array that allows only unique values
List::AllUtilsCombines List::Util, List::SomeUtils and List::UtilsBy in one bite-sized package
List::CompareCompare elements of two or more lists
List::GenProvides functions for generating lists
List::MoreUtilsProvide the stuff missing in List::Util
List::SomeUtilsProvide the stuff missing in List::Util
List::UtilA selection of general-utility list subroutines
List::UtilsByhigher-order list utility functions

Awesome Perl / Logging

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

Awesome Perl / Module Development

Dist::Zilla-
MinillaCPAN module authoring tool

Awesome Perl / Network

DOCSIS::ConfigFileDecodes and encodes DOCSIS config files
NetAddr::MACHandle MAC addresses
Net::SSH::PerlSSH client implemented in Perl
Net::SSH2Wrapper for
Net::OpenSSHRun commands remotely using the client
Net::OpenSSH::ParallelRun remote commands in parallel using the OpenSSH client
Net::SSH::AnyRun remote commands using any module or binary client available
Net::SFTP::ForeignSFTP client for remote file access
Object::RemoteRun Perl code on remote machines
Net::CLI::InteractAutomates interactive programs
Net::Appliance::SessionAutomates interaction with appliances

Awesome Perl / ORM

DBIx::Class
Rose::DB
Teng

Awesome Perl / Package Management

App::cpanminus
Carton
PintoPowerful local CPAN repos

Awesome Perl / Processes and Threads

Parallel::ForkManagerA simple parallel processing fork manager
Parallel::PreforkA simple prefork server framework
ProcletMinimalistic supervisor, a Perl port of

Awesome Perl / Profiling

Devel::KYTProfVery light profiler for I/Os such as HTTP request-responses and SQL queries
Devel::NYTProfCode profiler

Awesome Perl / Protocol

FurlFaster HTTP(S) Client
HTTP::TinyMinimal and fast client. Included in the standard packages
LWP::UserAgentPopular HTTP(S) Client
Net::Curl(libcurl)[ integration
Net::DHCPSend and receive DHCP packets
Net::DNSResolve DNS host names
Protocol::DBusD-Bus in (pure) Perl

Awesome Perl / Queueing

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

Awesome Perl / Science/Numerics

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

Awesome Perl / Stream Manipulation

RxPerlPerl implementation of / rxjs

Awesome Perl / REST Frameworks

Catalyst::Action::RESTAutomated REST Method Dispatching
Dancer2::Plugin::RESTA plugin for writing RESTful apps with Dancer2
Dancer::Plugin::RESTA plugin for writing RESTful apps with Dancer
Raisina REST API micro framework for Perl
SquattingA Camping-inspired Web Microframework for Perl

Awesome Perl / Template Engines

HTML::TemplateTemplates for web pages
Template::AlloyTT2/3, HT, HTE, Tmpl, and Velocity Engine
Template::ToolkitVery Popular Template Processing System
Text::MicroTemplateFast, simple and safe template engine written in pure-Perl and core modules
Text::MicroTemplate::ExtendedExtended Text::MicroTemplate
Text::TemplateTemplates with embedded perl
Text::XslateFaster template engine with XS. Supports multiple syntaxes
TiffanyGeneric interface for template engines. It makes it easy to use multiple template engines
Template::MagicMagic merger of runtime values with templates

Awesome Perl / Testing / Testing Frameworks

Test::BaseA Data Driven Testing Framework
Test::Base::LessLimited version of Test::Base
Test::BDD::CucumberImplementation of the popular Cucumber framework in Perl
Test::ClassClass-based testing. Support "setup" and "teardown"
Test::DeepTest deep and complex data structures with great flexibility
Test::Deep::Matcher
Test::HarnessRun Perl standard test scripts with statistics
Test::Kantansimple, flexible, fun "Testing framework"
Test::More

Awesome Perl / Testing / Test Double

Test::Exception
Test::FatalSimple module for verifying exceptions
Test::Mock::GuardMocking package subroutines
Test::MockTime
Test::mysqld
Test::TCPLaunch temporary TCP Server
Test::TimeSimple module for faking system time

Awesome Perl / Testing / Coverage

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

Awesome Perl / Tools

App::Ackack is a tool like grep, optimized for programmers
App::NopastePost to various pastebins from the CLI
DaikuMake for Perl
Data::PrinterColored pretty-print of Perl data structures and objects
ReplyRead-eval-print-loop(REPL) command-line tool
RijiStatic site generator using markdown and git mainly for blogging
Smart::CommentsComments that do more than just sit there
Toolbox::SimpleSimplfy some common tasks in Perl
Script::ToolboxFramework for the daily business scripts
Devel::KitHandy toolbox of things to ease development/debugging
Config::TinyRead/Write .ini style files with as little code as possible

Awesome Perl / Type checking

MooseX::TypesMoose types management tool
Type::TinyTiny, yet comprehensive type library

Awesome Perl / Video

FFmpegInterface to FFmpeg, a video converter written in C
Video::InfoRetrieve video properties such as: height width codec fps
Vlc::Engineuse Vlc media player with Perl
VideoLAN::LibVLCPerl bindings for libvlc.so
Video::GeneratorPerl class for video generation

Awesome Perl / Web Frameworks

Amon2
CatalystOverflowing with features. Very popular
Dancer( )
Dancer2
GantryWeb application framework for mod_perl, cgi, etc
KelpPlack-focused Perl web framework
KossyA Web framework with simple interface
MojoliciousAn all in one framework
Poeta modern Perl web framework for Mason developers

Awesome Perl / Web Frameworks / Middlewares

GazellePreforked Plack Handler for performance freaks
PlackPSGI server implementation and utilities for Web applications
Server::StarterProcess manager with the "graceful restart" feature
StarletHigh-performance PSGI Server
StarmanHigh-performance preforking PSGI/Plack web server
TwiggyEvent-driven PSGI application server

Awesome Perl / Web Frameworks-Like

EmbperlBuilding dynamic Websites with Perl (sort of like Perl crossed with PHP)
MasonPowerful, high-performance templating for the web and beyond

Awesome Perl / Web Scraping

Web::Scraper
WWW::Mechanize
WWW::Mechanize::PhantomJSautomate the PhantomJS browser
WWW::ScripterFor scripting web sites that have scripts
WWW::Selenium

Awesome Perl / Network Security

Net::PcapInterface to the pcap LBL packet capture library
Net::NcapPerl binding to the ncap network data capture library
Net::FramePerl framework for frame crafting
NetPacketassemble/disassemble network packets at the protocol level
Net::Writeportable interface to open and send raw data to network
Net::AnalysisPerl library for analysing network traffic
Net::SilkPerl's Interface to the SiLK network flow library
Net::InspectPerl library for inspection of data on various network layers
Net::TsharkPerl interface for Tshark network capture utility
Net::SharktoolsWireshark's packet inspection capabilities in Perl
File::PCAPRead, Write and manipulate PCAP file format through Perl
Net::P0fPerl interface to p0f utility, usefull for finger-printing os
Net::Pcap::ReassemblePerl IP fragment reassembly for Net::Pcap
Nagios::NRPEPure perl Nagios NRPE implementation
Monitoring::PluginA family of perl modules to streamline writing Naemon, Nagios, Icinga or Shinken (and compatible) plugins
Net::Connection::Snifferpractical Perl library for MiTM connections
Net::ARPLibrary for crafting ARP packets
SNMPMonitorPerl extension for writing SNMP Monitors
Net::LibNIDSPerl interface for the Network Intrusion Detection System library
Parse::SnortPerl Snort rules parser
Net::Wireless::802_11::WPA::CLIPerl WPA_CLI interface
IO::Socket::SSL::Interceptlibrary for intercepting SSL connections through Perl

Awesome Perl / Metadata Forensics

Image::ExifToolGeneral metadata parser and viewer framework

Awesome Perl / Reverse Engineering

DisassemblyDecompiles binary bytecode to readable and recompilable bytecode assembler
Python::BytecodeParse Python bytecode
B::BytecodeCompiles a Perl script into a bytecode format that could be loaded later
Perf::ARMUse ARM instructions in Perl
Asm::Z80::Tableassemble / disassemble all Z80 CPU assembly instructions with Perl
X86::DisasmDisassemble Intel x86 instructions with Perl
Disassemble::X86Another library for disassembe X86 instructions
X86::Udis86Interface for the C Udis disassembler
Asm::X86List of instructions and registers of x86-compatible processors, validating and converting instructions and memory references
ELF::Writerwrite and read executable ELF files

Other Awesome Lists

bayandin/awesome-awesomeness32,173over 2 years ago
emijrp/awesome-awesome2,844about 2 years ago
fleveque/awesome-awesomes595almost 3 years ago
sindresorhus/awesome337,709almost 2 years ago
t3chnoboy/awesome-awesome-awesome1,960almost 3 years ago

Backlinks from these awesome lists:

More related projects: