Recent Perl modules, releases and favorites.
Last updated 7 February 2026 04:30 PM
Last updated 7 February 2026 04:30 PM
Dancer-Template-Mason
Release | 7 Feb 2026 03:45 PM | Author: YANICK | Version: 0.004002
Mason wrapper for Dancer
Dancer::Template::Mason is a Perl module that serves as a bridge between the Dancer web application framework and the HTML::Mason templating system, allowing developers to utilize Mason templates seamlessly within their Dancer applications. By configuring the template engine to 'mason' in the application's configuration file, users can create dynamic web pages using Mason's powerful templating features. The module supports passing parameters to Mason templates and allows for additional configuration of the HTML::Mason::Interp interpreter. The latest version, 0.004002, includes minor refactoring and a shift to using Test2 for testing, enhancing the module's maintainability and performance.
Hash-Util-Merge
Release | 7 Feb 2026 03:38 PM | Author: RRWO | Version: v0.3.0
Upvotes: 2 | CPAN Testers: Pass 100.0%
Utility functions for merging hashes
The `Hash::Util::Merge` Perl module provides utility functions for merging hashes with customizable behavior through a user-defined function. With the `mergemap` function, users can easily combine multiple hashes by applying a specified operation to their values for each key, allowing for flexible merging strategies. For instance, it can sum or subtract values from hashes, accommodating cases where keys may not align perfectly. The latest version, v0.3.0, enhances the module by allowing the merging of any number of hashes and ensuring that duplicate keys are not reprocessed, while also improving documentation and cleaning up the namespace. This module is particularly useful for developers needing efficient and customizable hash merging capabilities in their Perl applications.
Net-Proxmox-VE
Release | 7 Feb 2026 01:23 PM | Author: DJZORT | Version: 0.44
Pure Perl API for Proxmox Virtual Environment
Net::Proxmox::VE is a Perl module that provides a pure Perl API for interacting with the Proxmox Virtual Environment (PVE) REST API, facilitating both user/password and API token authentication methods. This module allows developers to easily perform various API operations such as logging in, retrieving API versions, and executing CRUD actions (create, read, update, delete) on Proxmox resources. With a focus on simplicity, it abstracts the complexities of the REST interface while offering a framework for future enhancements and additional API functionalities. Recent updates in version 0.44 include fixes to the Storage and Pools modules, as well as improvements to unit tests, reflecting ongoing efforts to enhance the module's reliability and performance.
A lightweight jq-like JSON query engine in Perl
JQ::Lite is a pure Perl module that serves as a lightweight, jq-compatible JSON query engine, ideal for environments where the jq binary cannot be installed, such as minimal Linux distributions, legacy systems, or air-gapped environments. With a familiar jq-like syntax, it allows users to extract, traverse, and filter JSON data without the need for external binaries or compilation steps. The module can be utilized both as a library and through its command-line interface, "jq-lite," which supports various features including optional key access, boolean filtering, and a wide array of built-in functions for data manipulation. Notably, version 2.32 introduces enhancements to variable handling, ensuring that query-local bindings do not leak across independent queries, thereby improving the reliability of variable usage in complex queries.
Business-ISBN-Data
Release | 7 Feb 2026 09:07 AM | Author: BRIANDFOY | Version: 20260203.001
Upvotes: 3 | CPAN Testers: Pass 100.0%
Data pack for Business::ISBN
The Perl module Business::ISBN::Data serves as a data pack for the **Business::ISBN** module, providing essential data structures related to ISBNs, particularly for managing ISBN-13 prefixes. This module is typically loaded automatically by **Business::ISBN** and requires version 3.005 or later due to structural changes that address previous bugs. The data is sourced from the ISBN Agency's **RangeMessage.xml** file, which is included in the distribution and can be updated by setting the **ISBN_RANGE_MESSAGE** environment variable to point to a different file location. If the specified data file is unavailable, the module defaults to older data included in **Data.pm**. Recent updates include multiple data refreshes throughout early 2026, ensuring that users have access to the latest ISBN information.
Text-ANSI-Fold
Release | 7 Feb 2026 09:04 AM | Author: UTASHIRO | Version: 2.3305
Text folding library supporting ANSI terminal sequence and Asian wide characters with prohibition character handling
Text::ANSI::Fold is a Perl module designed for folding text while accommodating ANSI terminal sequences and Asian wide characters, ensuring proper handling of prohibited characters. It allows users to split text into two parts based on a specified visual width, accurately calculating the width by considering the visible representation of ANSI sequences. The module can manage hyperlinks and supports Unicode formatting, particularly for Japanese text, with options for word or space boundaries. Users can utilize the ansi_fold function for quick folding or create an object for more complex configurations, including padding, line break handling, and tab expansion. This makes Text::ANSI::Fold a versatile tool for processing and formatting text in terminal applications.
StreamFinder
Release | 7 Feb 2026 04:14 AM | Author: TURNERJW | Version: 2.60
Upvotes: 7 | CPAN Testers: Pass 100.0%
Fetch actual raw streamable URLs from various radio-station, video & podcast websites
StreamFinder is a Perl module designed to extract raw streamable URLs from various radio stations, video platforms, and podcast websites, allowing users to bypass the clutter of web browsers and stream content directly in their preferred media players. By accepting a valid URL, StreamFinder returns essential information such as stream URLs, titles, descriptions, and cover art icons, facilitating a seamless streaming experience. The module supports a wide range of sites through specific submodules, enabling users to fetch streams from popular platforms like YouTube, Apple Podcasts, and SoundCloud, among others. While StreamFinder is not a standalone application, it can be easily integrated into custom Perl scripts, making it a versatile tool for developers looking to enhance media playback capabilities.
DataBase Interface for SPVM (PRE-ALPHA)
SPVM::DBI is an early-stage database interface module designed for the SPVM programming language, currently in pre-alpha development. As it stands, the module is not functional, lacking any implemented features, tests, or a defined public API, making it unsuitable for use at this time. It serves primarily as a placeholder for future enhancements and development efforts in creating a robust database interface for SPVM. For those interested in tracking its progress or contributing, the module's repository is available on GitHub.
Marlin
Release | 6 Feb 2026 10:34 PM | Author: TOBYINK | Version: 0.023000
Upvotes: 11 | CPAN Testers: Pass 100.0%
П pretty fast class builder with most Moo/Moose features 🐟
Marlin is a high-performance class builder for Perl, designed to offer a blend of features from both Moose and Moo while maintaining a simpler syntax. It leverages Class::XSAccessor, Class::XSConstructor, and Type::Tiny::XS for enhanced speed, particularly when using straightforward attributes. Marlin supports a wide range of Perl versions, starting from 5.8.8, and provides a variety of attribute declaration shortcuts and options, making it flexible for developers. Recent updates have improved documentation significantly and introduced the use of Sub::HandlesVia::XS for potentially faster delegated methods, showcasing Marlin's ongoing evolution and commitment to performance enhancements.
libintl-perl
Release | 6 Feb 2026 05:53 PM | Author: GUIDO | Version: 1.36
High-Level Interface to Uniforum Message Translation
The Perl module `Locale::Recode` provides a powerful framework for character set conversion, enabling developers to easily translate text between various encoding formats. This module is particularly useful for applications that need to handle internationalization and localization, as it supports a wide range of character encodings, including popular ones like UTF-8, ISO-8859, and various IBM code pages. By utilizing `Locale::Recode`, programmers can ensure that their applications correctly interpret and display text data from different languages and regions, facilitating seamless communication and data exchange across diverse systems.
Object oriented interface to Clearcase
The Clearcase Perl module provides an object-oriented interface to IBM's ClearCase version control system, allowing developers to interact with ClearCase entities and commands in a more intuitive manner. It facilitates access to global ClearCase information, such as client and region details, and offers a streamlined IPC interface to the cleartool command-line utility, significantly improving performance for repetitive command executions. The module includes various methods for managing VOBs (Versioned Object Bases), formatting options, and retrieving attributes, among others. A noteworthy recent addition is the MockClearcase feature, introduced in version 1.01, which allows for testing without requiring a ClearCase installation, enhancing the module's usability in development environments.
App-GitKtti
Release | 6 Feb 2026 05:14 PM | Author: SAUMON | Version: v2.0.1
Git flow helper scripts for safe branch management
App::GitKtti is a Perl module designed to assist developers in managing Git branches safely and efficiently, adhering to the Git flow methodology. It offers a suite of command-line tools, including functionalities for checking out, deleting, fixing, moving, tagging, and testing branches, all while ensuring safe operations through validation. With features like colorized output for enhanced readability and support for various workflows such as feature, hotfix, and release, App::GitKtti streamlines branch management and automates cleanup processes, making it an invaluable resource for developers looking to maintain a clean and organized Git repository.
Object oriented interface to Clearquest
The Clearquest Perl module provides an object-oriented interface for interacting with the Clearquest database, allowing users to perform operations such as connecting to the database, retrieving, modifying, and deleting records in a straightforward manner. It supports three modes of operation: 'api', which requires local Clearquest installation for optimal speed; 'rest', which utilizes a RESTful interface for broader compatibility; and 'client', which operates through a server process for multithreaded access. The module reads configuration settings from a file or environment variables, making it flexible for various deployment scenarios. A noteworthy recent change in version 2.23 includes the incorporation of GetConfig logic to eliminate an external dependency, enhancing the module's usability.
Convert text to speech using Google's engine and play it on speakers
The Speak Perl module provides a straightforward interface for converting text to speech using Google's text-to-speech engine, allowing users to play the spoken output through their speakers. It includes a primary subroutine, `speak`, which can take a message from various sources, including direct input, file handles, or clipboard content, and supports logging of errors and messages. Users can specify the language for speech output through parameters or configuration files, with defaults set to environment variables. The module is designed for ease of use and flexibility, making it suitable for applications that require speech synthesis. The initial version 1.0 was packaged for CPAN on January 11, 2026, marking its debut in the Perl community.
App-cpangitify
Release | 6 Feb 2026 04:19 PM | Author: PLICEASE | Version: 0.21
Upvotes: 7 | CPAN Testers: Pass 100.0%
Convert cpan distribution from BackPAN to a git repository
App::cpangitify is a Perl module designed to facilitate the conversion of CPAN distributions from BackPAN into Git repositories, streamlining the process for developers who wish to manage their Perl modules using Git. The module provides the functionality through the cpangitify script, allowing users to easily create Git repositories from existing CPAN distributions. Notably, version 0.20 introduced SSL validation, enhancing security during the conversion process. This module is particularly useful for Perl developers looking to modernize their workflow by leveraging version control systems.
Geo-Address-Parser
Release | 6 Feb 2026 04:03 PM | Author: NHORNE | Version: 0.07
Lightweight country-aware address parser from flat text
Geo::Address::Parser is a Perl module designed for lightweight, country-aware parsing of address components from flat text input. It supports parsing for addresses in the US, UK, Canada, Australia, and New Zealand by utilizing country-specific regular expressions. Users can create a parser instance tailored to a specific country and then call the `parse` method to extract structured address information, including fields such as name, road, city, region, and country. The module also allows for runtime configuration through environment variables and configuration files, enhancing its flexibility for various applications. With its straightforward API, Geo::Address::Parser is an efficient tool for developers needing to handle address data in a structured manner.
Plack-Middleware-ProofOfWork
Favorite | 6 Feb 2026 03:37 PM | Author: PSTADT | Version: 0.23
Upvotes: 2 | CPAN Testers: Pass 100.0%
Proof-of-Work based bot protection for Plack applications
Plack::Middleware::ProofOfWork is a Perl module designed to enhance the security of Plack applications by implementing a Proof-of-Work mechanism that protects against automated requests from bots and scrapers. By requiring legitimate users to solve a computationally intensive task—finding a nonce that produces a hash with a specified number of leading zeros—this middleware effectively filters out unwanted automated traffic. It offers configurable options such as difficulty levels (including fractional values for finer granularity), cookie management, and customizable HTML and JavaScript templates for the challenge page. Recent updates in version 0.21 have improved repository management and documentation, while version 0.20 introduced significant features like DNS-based bot verification and support for external templates, marking its first public release on CPAN.
Travel-Status-DE-IRIS
Release | 6 Feb 2026 03:36 PM | Author: DERF | Version: 2.02
Interface to IRIS based web departure monitors
Travel::Status::DE::IRIS is a Perl module that provides an interface to IRIS-based web departure monitors, allowing users to retrieve real-time train departure information for specific stations in Germany. It supports both blocking and experimental non-blocking operations, enabling developers to fetch schedule and real-time data efficiently. Users can customize their queries with options such as lookahead and lookbehind times, station codes, and caching mechanisms. However, it's important to note that as of May 2024, the backend service this module relies on is deprecated, and the module is no longer actively maintained, with no direct successor offering equivalent features. The latest version, 2.02, includes an updated station database, reflecting ongoing adjustments despite the deprecation notice.
CatalystX-CRUD-Model-RDBO
Release | 6 Feb 2026 02:59 PM | Author: KARMAN | Version: 0.304
CPAN Testers: Pass 100.0%
Rose::DB::Object CRUD
CatalystX::CRUD::Model::RDBO is a Perl module designed to facilitate CRUD (Create, Read, Update, Delete) operations within the Catalyst web framework using Rose::DB::Object for database interactions. By extending the CatalystX::CRUD functionality, this module allows developers to easily configure models that represent database objects, manage relationships, and perform queries with minimal boilerplate code. It provides a range of methods for object instantiation, fetching, searching, and managing related objects, all while ensuring error handling and configuration flexibility. This makes it an ideal choice for developers looking to streamline their database interactions in Catalyst applications.
Travel-Routing-DE-DBRIS
Release | 6 Feb 2026 02:33 PM | Author: DERF | Version: 0.08
Interface to the bahn.de itinerary service
Travel::Routing::DE::DBRIS is a Perl module that provides an interface to the bahn.de itinerary service, enabling users to request and retrieve train connections between specified locations in Germany. By creating an instance of Travel::Routing::DE::DBRIS with mandatory origin and destination parameters, users can access detailed information about available train routes, including departure and arrival times, train details, and any necessary transfers. The module supports various options such as specifying stopovers, caching requests, and customizing the output language, making it a versatile tool for developers looking to integrate train routing functionality into their applications. With built-in error handling and the ability to customize request parameters, Travel::Routing::DE::DBRIS simplifies the process of accessing and displaying train travel information.
Travel-Status-DE-HAFAS
Release | 6 Feb 2026 02:30 PM | Author: DERF | Version: 6.25
Interface to HAFAS-based online arrival/departure
Travel::Status::DE::HAFAS is a Perl module designed to interface with HAFAS-based online arrival and departure monitors, allowing users to retrieve real-time transit information for specific stations in Germany. By utilizing the mgate.exe interface, this module can report on departures and arrivals, search for stations, and provide journey details, all while supporting non-blocking operations through promises. Users can create a new instance by specifying a service identifier and various options such as station name, geographical coordinates, or journey details. The latest version, 6.25, includes updates to service definitions, notably fixing issues with the BVG service, ensuring users have access to accurate and up-to-date transit information.
Travel-Status-DE-DBRIS
Release | 6 Feb 2026 02:30 PM | Author: DERF | Version: 0.23
Interface to bahn.de / bahnhof.de departure monitors
Travel::Status::DE::DBRIS is a Perl module that provides an unofficial interface to the departure monitors and train information APIs of bahn.de and bahnhof.de. It allows users to retrieve real-time departure information for specific train stations in Germany, search for nearby stations based on geographic coordinates, and obtain details about specific journeys or train formations. The module supports both blocking and non-blocking (asynchronous) request methods, making it versatile for different programming needs. Users can customize their requests with various options, such as caching responses, filtering by modes of transit, and handling errors effectively. This module is particularly useful for developers building applications that require up-to-date train schedule information in Germany.
Em·dee, Markdown Easy on the Eyes
The `mdee` Perl module is a terminal-based multi-column Markdown viewer designed to enhance the readability of Markdown documents, particularly those generated by large language models (LLMs). It preserves the original Markdown syntax while providing features such as syntax highlighting, line folding for long list items, and table formatting. Users can customize the output style, choose between light and dark themes, and adjust various display options like column layout and fold width. Recent updates in version 0.12 include improved handling of emphasis patterns to avoid conflicts with inline code and enhancements for pager support, ensuring a more robust viewing experience. This module is ideal for users looking to read and analyze Markdown files in a visually appealing and organized manner directly from the terminal.
Compiler from Markdown to tests and documentation
Liveman is a Perl module designed to streamline the process of generating tests and documentation from Markdown files, effectively bridging the gap between documentation and testing in modern projects. By compiling Markdown files located in the "lib" directory into corresponding test files in the "t" directory, Liveman ensures that examples in documentation remain functional and up-to-date with the code. The module also facilitates the integration of documentation into Perl modules, replacing the "__END__" section with relevant content. Notably, version 4.1 introduced enhancements such as the ability to generate a cpanfile and improvements in symbolic diff testing, making it easier for developers to manage dependencies and test expectations. With features like language translation support and comprehensive test generation capabilities, Liveman is an invaluable tool for maintaining high-quality documentation and testing standards in Perl projects.
HTML-HTMLDoc
Release | 6 Feb 2026 04:00 AM | Author: ECHERNOF | Version: 0.24
Perl interface to the htmldoc program for producing PDF Files from HTML content
HTML::HTMLDoc is a Perl module that serves as an object-oriented interface to the HTMLDOC program, enabling users to generate PDF and PostScript files from HTML content. With this module, developers can easily convert HTML strings or files into well-formatted PDF documents by utilizing various configuration options such as page size, margins, encryption, and image quality. It provides methods for setting document properties, including headers, footers, and permissions, while also allowing for customization of fonts and colors. Users must have the HTMLDOC program installed to utilize this module effectively, making it a powerful tool for creating printable documents from web content.
Dist-Zilla-Plugin-SchwartzRatio
Release | 6 Feb 2026 02:42 AM | Author: YANICK | Version: 0.3.5
Display the Schwartz ratio of the distribution upon release
Dist::Zilla::Plugin::SchwartzRatio is a Perl module designed to help authors manage their CPAN distributions by displaying the Schwartz ratio, which indicates the proportion of the latest releases compared to the total number of releases available on CPAN. By integrating this plugin into the dist.ini configuration file, authors receive insights after a successful release about the number of previous versions still present on CPAN, prompting them to consider potential cleanup of outdated distributions. This tool aids in maintaining a tidy and up-to-date presence on CPAN, enhancing the overall quality of the author's offerings.
SPVM-IO-Socket-SSL
Release | 6 Feb 2026 01:55 AM | Author: KIMOTO | Version: 0.017
CPAN Testers: Pass 100.0%
SSL/TLS Sockets with Goroutine and Context/Deadline Support
The `SPVM::IO::Socket::SSL` module provides a robust solution for SSL/TLS communication over sockets in Perl, designed to work seamlessly with Go's goroutines and context management. This module extends the capabilities of `IO::Socket`, allowing for non-blocking I/O operations that yield control to the Go scheduler during blocking calls, thus enhancing concurrency. It supports deadline management through options compatible with Go's context, enabling efficient timeout handling. With features like SSL handshake initiation, certificate verification, and customizable SSL context settings, `SPVM::IO::Socket::SSL` is ideal for developers looking to implement secure socket communication in a concurrent environment, making it a powerful tool for both client and server applications.
Data-Printer-Filter-EscapeNonPrintable
Release | 5 Feb 2026 11:22 PM | Author: RYOSKZYPU | Version: v1.0.0
Escape missing ASCII nonprintable characters
Data::Printer::Filter::EscapeNonPrintable is a Perl module designed as a filter plugin for Data::Printer, enhancing its functionality by escaping missing ASCII nonprintable characters into octal notation. This module addresses the limitation of Data::Printer, which does not escape certain control characters, including vertical tab and DEL, ensuring that all nonprintable characters are properly represented and colorized in their escaped format. Users can easily integrate this filter by configuring their .dataprinter settings or using it directly in their code. The initial release of this module was on February 5, 2026, marking its introduction to the Perl ecosystem.
URI-Shortener
Release | 5 Feb 2026 08:31 PM | Author: TEODESIAN | Version: 1.005
Shorten URIs so that you don't have to rely on external services
The `URI::Shortener` Perl module provides a robust solution for creating and managing shortened URIs without relying on external services. It allows users to generate short links that can be stored persistently in a database, such as SQLite, MySQL, or PostgreSQL, while offering features like URI lengthening and pruning of old entries. The module employs a secure algorithm based on `Crypt::PRNG` to ensure that generated short URIs are difficult to guess, making it suitable for applications where URI length and obscurity are important, such as in email communications or for unlisted web content. Recent updates in version 1.005 include the removal of unnecessary dependencies and an added note regarding database grants, enhancing the module's usability and security.
Future-IO-Impl-Uring
Release | 5 Feb 2026 05:22 PM | Author: LEONT | Version: 0.007
A Future::IO implementation for IO::Uring
Future::IO::Impl::Uring is a Perl module that provides an implementation of Future::IO utilizing the IO::Uring interface, designed to enhance asynchronous I/O operations on Linux systems with kernel version 6.7 or higher. By simply loading this module alongside Future::IO, users can leverage its asynchronous capabilities without needing to implement additional methods. Recent updates in version 0.007 include the adoption of IO::Uring 0.011 for improved memory management and a refinement in error messaging, making it a more robust choice for developers looking to optimize I/O performance in their applications.