CPANscan logo

CPANscan

Recent Perl modules, releases and favorites.
Last updated 5 March 2026 08:30 PM
Perl logo

Text-HTML-Turndown

Release | 5 Mar 2026 08:05 PM | Author: CORION | Version: 0.11
Convert HTML to Markdown
Text::HTML::Turndown is a Perl module designed to convert HTML content into Markdown format, facilitating the transformation of web content into a more readable and portable text format. By utilizing the turndown libraries, this module allows users to easily convert HTML strings into Markdown, which can be particularly useful for developers and writers looking to manage content across different platforms. The module supports UTF-8 encoded HTML and provides a function, `html2markdown`, that returns a Text::FrontMatter::YAML object, making it compatible with various Markdown flavors. While it aims for compatibility with the original JavaScript implementation, users should note that it may not pass all tests from the original library. This module is actively maintained and offers a straightforward interface for HTML to Markdown conversion.
Perl logo

File-StatX

Release | 5 Mar 2026 06:46 PM | Author: LEONT | Version: 0.004
CPAN Testers: Pass 100.0%
StatX for Perl
File::StatX is a Perl module that provides an interface to the "statx" system call, enabling users to retrieve detailed file status information with enhanced capabilities compared to traditional stat functions. With this module, developers can obtain various attributes of files, such as size, timestamps, ownership, and specific filesystem features, by utilizing bitmask flags and masks to customize the information retrieved. The module supports operations on both absolute and relative paths, as well as filehandles, making it versatile for different file management tasks. By leveraging File::StatX, Perl programmers can efficiently access comprehensive file metadata, which is particularly useful for applications requiring precise file handling and analysis.
Perl logo

CtrlO-PDF

Release | 5 Mar 2026 04:29 PM | Author: ABEVERLEY | Version: 0.36
Upvotes: 3 | CPAN Testers: Pass 100.0%
High level PDF creator
The CtrlO::PDF module is a high-level PDF creator designed to simplify the process of generating PDF documents in Perl. It provides an intuitive interface for adding various elements such as pages, headings, paragraph text, images, and tables, while managing layout and pagination automatically. With customizable options for dimensions, margins, headers, and footers, users can easily create well-structured PDFs without extensive coding. Built on the PDF::Builder library, CtrlO::PDF allows for advanced features and direct access to the underlying PDF object, making it a versatile choice for developers looking to produce feature-rich PDF documents efficiently.
Perl logo

SVG

Release | 5 Mar 2026 11:43 AM | Author: MANWAR | Version: 2.89
Upvotes: 18 | CPAN Testers: Pass 100.0%
Perl extension for generating Scalable Vector Graphics (SVG) documents
The SVG Perl module is a powerful extension designed for generating Scalable Vector Graphics (SVG) documents directly from Perl code. It allows developers to create complex SVG images by constructing a nested data structure that represents the SVG DOM, enabling the addition of various graphical elements such as circles, rectangles, and paths, as well as grouping elements and applying styles. The module provides a straightforward interface for rendering SVG content into XML format, with options for standalone or inline documents, and supports features like animation and interactivity through anchors. Recent updates have improved documentation clarity and fixed issues related to comment and description rendering, ensuring that SVG elements are correctly output as XML comments. This makes the SVG module an essential tool for Perl developers looking to incorporate vector graphics into their applications.
Perl logo

Env-Dot

Release | 5 Mar 2026 10:53 AM | Author: MIKKOI | Version: 0.020
Upvotes: 9 | CPAN Testers: Pass 100.0%
Read .env file and turn its content into environment variables for different shells. Module and executable
The Env::Dot Perl module provides a flexible way to manage environment variables from a `.env` file, allowing developers to easily read and utilize these variables in their applications. With features such as the ability to specify custom file paths for dotenv files, enforce the presence of required variables, and support for different dotenv file formats, Env::Dot enhances the management of environment configurations. It also allows for hierarchical loading of environment variables from parent directories, making it suitable for projects with shared configurations. Notably, the recent version 0.020 introduced a new parameter to enforce the requirement of a `.env` file, improving error handling and usability. This module is particularly useful for developers looking to streamline their environment variable management in Perl applications.
Perl logo

Perl-Critic-Policy-ControlStructures-ProhibitReturnInMappingBlock

Release | 5 Mar 2026 09:38 AM | Author: HOGASHI | Version: 0.01
CPAN Testers: Pass 100.0%
Do not "return" in mapping blocks (map, grep, sort)
The Perl::Critic::Policy::ControlStructures::ProhibitReturnInMappingBlock module is designed to enforce best practices in Perl programming by preventing the use of "return" statements within mapping blocks such as "map", "grep", and "sort". This policy aims to avoid unexpected behavior that arises when "return" exits the entire enclosing subroutine instead of just the block, which can lead to unintended consequences in code execution. Instead of using "return" to skip elements, developers are encouraged to use "next" for this purpose, ensuring clearer and more predictable code. This module is part of the Perl::Critic framework, which helps maintain code quality and adherence to coding standards.
Perl logo

MooseX

Favorite | 5 Mar 2026 08:36 AM | Author: ETHER | Version: 0.002
Upvotes: 2 | CPAN Testers: Pass 100.0%
Document the MooseX namespace
MooseX is a Perl module designed to document the MooseX namespace, which is specifically intended for extensions of the Moose object system rather than general-purpose modules that utilize Moose. It facilitates the creation of Moose extensions by leveraging Moose::Exporter, allowing developers to define class or attribute traits, apply roles, or provide utility functions. This module encourages a clear naming convention, urging developers to name their modules based on functionality rather than implementation details. The latest update, version 0.002, marks the migration of the repository to the GitHub Moose organization, reflecting ongoing development and community support.
Perl logo

LaTeX-Replicase

Release | 5 Mar 2026 07:07 AM | Author: DONANGEL | Version: 0.599
Upvotes: 1 | CPAN Testers
Perl extension implementing a minimalistic engine for filling real TeX-LaTeX files that act as templates
LaTeX::Replicase is a Perl module designed to facilitate the dynamic generation of TeX-LaTeX documents by acting as a minimalistic template engine. It allows users to fill templates with data by defining and substituting variable values, executing conditional actions, and capturing the output into a new document. The module supports various data structures, including scalars, arrays, and hashes, and provides a straightforward syntax for embedding tags within the TeX files. Recent updates have expanded its capabilities, including the addition of new subroutines and improved handling of input values, making it easier to create customizable and programmatically configurable documents. Notably, the latest version enhances the functionality of the %%%VAR tag, allowing for more complex data manipulations and improved debugging messages, thereby streamlining the document creation process.
Perl logo

Remote-Perl

Release | 5 Mar 2026 12:55 AM | Author: CROW | Version: 0.001
CPAN Testers: Pass 45.3%N/A 54.7%
Run Perl scripts on remote machines over any pipe transport
Remote::Perl is a versatile Perl module designed to execute Perl scripts on remote machines via any pipe transport, such as SSH. It allows users to run both script files and inline Perl code while seamlessly relaying standard output and error in real time. The module supports on-demand fetching of missing dependencies from the local machine, making it particularly useful for environments where the remote machine has minimal setup. With the accompanying command-line tool, remperl, users can easily leverage its functionality to run scripts or commands remotely. Notably, the module requires Perl 5.36 or later on both local and remote systems, ensuring compatibility with modern Perl features.
Perl logo

Net-Async-NATS

Release | 5 Mar 2026 12:24 AM | Author: GETTY | Version: 0.001
CPAN Testers: Pass 87.0%Fail 1.3%N/A 11.7%
Async NATS client for IO::Async
Net::Async::NATS is an asynchronous client for the NATS messaging system, designed to work seamlessly with the IO::Async framework. This module allows developers to implement publish/subscribe messaging, request/reply patterns, and wildcard subscriptions, all while managing connections and reconnections automatically. With features like queue group subscriptions, automatic keepalive handling, and server INFO processing, it provides a robust solution for building scalable, event-driven applications. The initial release, version 0.001, introduced these capabilities, making it a valuable tool for developers looking to integrate NATS into their Perl applications.
Perl logo

PDL-Minuit

Release | 4 Mar 2026 10:39 PM | Author: ETJ | Version: 0.002
Upvotes: 1 | CPAN Testers: Pass 100.0%
Minuit 1 optimization routines for PDL
PDL::Minuit is a Perl module that provides an interface to the Minuit library, enabling users to perform minimization routines commonly used in data fitting and optimization tasks. This module is particularly useful for those working with the Perl Data Language (PDL), as it allows for seamless integration of Minuit's powerful minimization algorithms within PDL's framework. Users can initialize a fit, define parameters with bounds, execute various Minuit commands, and retrieve results such as parameter values, uncertainties, and covariance matrices. Recent updates include enhancements to testing with Test::PDL and a fix for a previously identified issue with the parameter definition function, ensuring improved reliability and functionality for users.
Perl logo

Google-GeoCoder-Smart

Release | 4 Mar 2026 05:01 PM | Author: TTG | Version: v2.6.4
Simple Google Geocoding API client
Google::GeoCoder::Smart is a Perl module that serves as a lightweight client for the Google Geocoding API v3, allowing developers to easily convert structured addresses and place IDs into geographic coordinates. By utilizing this module, users can send geocoding requests to the Google API and receive decoded responses, complete with raw JSON data for debugging purposes. The module supports various optional parameters such as language, region, and components, enhancing its flexibility for different geocoding needs. Recent updates have improved the module's structure and testing capabilities, including the addition of explicit CPAN metadata and enhanced test coverage, ensuring a more robust and user-friendly experience.
Perl logo

Zonemaster-LDNS

Release | 4 Mar 2026 04:41 PM | Author: ZNMSTR | Version: 5.0.2
Upvotes: 1 | CPAN Testers: Pass 73.5%Fail 2.0%N/A 15.3%Unknown 9.2%
Perl wrapper for the ldns DNS library
Zonemaster::LDNS is a Perl module that serves as a wrapper for the ldns DNS library, enabling developers to create DNS resolvers that can send queries and receive responses. This module allows for various DNS operations, including querying for resource records, performing zone transfers, and converting domain names to A-labels. It provides a flexible interface for managing DNS settings, such as recursion, DNSSEC, and timeouts, while also supporting advanced features like AXFR for zone transfers. Recent updates in version 5.0.2 have improved robustness by adding checks for cryptographic SHA-1 support during installation and enhancing handling of unknown resource record types. With its comprehensive functionality, Zonemaster::LDNS is an essential tool for developers working with DNS in Perl applications.
Perl logo

Zonemaster-Engine

Release | 4 Mar 2026 04:40 PM | Author: ZNMSTR | Version: 8.001001
A tool to check the quality of a DNS zone
Zonemaster::Engine is a comprehensive Perl module designed to assess the quality of DNS zones through a series of automated tests. By invoking the `test_zone` method with a domain name, users can execute a full suite of tests, receiving detailed results encapsulated in Zonemaster::Engine::Logger::Entry objects. The module supports various functionalities, including the ability to initialize the testing environment, manage test profiles, and handle DNS queries recursively. Recent updates in version 8.1.1 have addressed several critical issues, including fixes for the Nameserver13 implementation and improvements to the upward referral guard, ensuring more reliable DNS zone testing. This module is essential for developers and system administrators seeking to enhance their DNS configurations and ensure optimal performance.
Perl logo

Test-Mockingbird

Favorite | 4 Mar 2026 03:10 PM | Author: NHORNE | Version: 0.03
Upvotes: 1 | CPAN Testers: Pass 100.0%
Advanced mocking library for Perl with support for dependency injection and spies
Test::Mockingbird is an advanced mocking library for Perl that enhances testing capabilities through powerful features such as mocking, spying, and dependency injection. With this module, developers can easily replace methods in their code with mock implementations, track calls to methods with spies, and inject mock dependencies to facilitate isolated testing. The recent version 0.03 introduced shorthand syntax for method mocking and a new `mock_scoped` feature, which allows for temporary mocks that automatically restore the original method when they go out of scope, simplifying the management of test environments. This module is ideal for Perl developers looking to streamline their testing processes and improve code reliability.
Perl logo

Affix

Favorite | 4 Mar 2026 03:06 PM | Author: SANKO | Version: v1.0.8
Upvotes: 5 | CPAN Testers: Pass 100.0%
A Foreign Function Interface eXtension
Affix is a powerful Foreign Function Interface (FFI) extension for Perl that enables seamless integration with native libraries written in languages such as C, Rust, and Fortran, without the need for XS code or complex compiler management. It provides a high-performance bridge to native software, allowing developers to bind and call functions, work with C structs, manage raw memory, and perform pointer arithmetic with ease. Affix features an extensive type system that supports various data types, including primitives, nested structs, and SIMD vectors, while leveraging a Just-In-Time (JIT) compilation engine for optimized performance. With built-in memory management, error handling, and library discovery capabilities, Affix simplifies the process of interfacing Perl with external libraries, making it an ideal choice for developers looking to enhance their Perl applications with native functionality.
Perl logo

PDL

Favorite | 4 Mar 2026 02:04 PM | Author: ETJ | Version: 2.103
Upvotes: 61 | CPAN Testers: Pass 86.7%Fail 11.7%N/A 0.8%Unknown 0.8%
Perl Data Language
PDL, or Perl Data Language, is a powerful Perl extension designed for efficient scientific and bulk numeric data processing and visualization. It enhances Perl's capabilities by providing fully vectorized, multidimensional array handling, making it suitable for managing large datasets such as images and spectra. With its fast performance, often surpassing that of IDL and MATLAB, PDL allows users to perform complex mathematical operations and manipulations on N-dimensional arrays with ease. The module includes an interactive shell for learning and exploring its functions, along with extensive documentation and tutorials to support users from beginners to advanced levels.
Perl logo

Amazon-CreatorsAPI

Release | 4 Mar 2026 01:57 PM | Author: BAYASHI | Version: 0.01
CPAN Testers: Pass 100.0%
The Amazon Creators API Helper
Amazon::CreatorsAPI is a Perl module designed to facilitate interaction with the Amazon Creators API, enabling developers to easily access and manage Amazon's affiliate program features. By providing a straightforward interface, this module allows users to perform various operations such as searching for items, retrieving item details, and accessing browse nodes with minimal effort. With methods like `search_items` and `get_items`, developers can quickly integrate Amazon's product data into their applications, making it an essential tool for those looking to leverage Amazon's affiliate offerings. The module is open-source and available on GitHub, encouraging community contributions and feedback.
Perl logo

XML-PugiXML

Favorite | 4 Mar 2026 01:38 PM | Author: EGOR | Version: 0.01
Upvotes: 1 | CPAN Testers: Pass 59.7%Fail 39.5%Unknown 0.8%
Perl binding for pugixml C++ XML parser
XML::PugiXML is a Perl module that provides a binding to the pugixml C++ XML parsing library, enabling fast and efficient XML document manipulation. With a clean and intuitive API, it allows users to create, load, and modify XML documents easily, whether from strings or files. The module supports XPath queries for selecting nodes, including the ability to compile XPath expressions for improved performance on repeated queries. Users can navigate the XML structure, access and modify attributes, and serialize documents back to XML format with customizable formatting options. Designed for performance, XML::PugiXML is significantly faster than other XML processing modules, making it an excellent choice for applications requiring robust XML handling capabilities.
Perl logo

CGI-ACL

Release | 4 Mar 2026 11:37 AM | Author: NHORNE | Version: 0.06
CPAN Testers: Pass 100.0%
Decide whether to allow a client to run this script
CGI::ACL is a Perl module designed to manage client access to CGI scripts based on IP addresses and geographical locations. It allows developers to specify which IPs or countries are permitted or denied access, providing a flexible way to control who can interact with their web applications. The module can integrate with CGI::Lingua to detect the client's country, enabling more nuanced access control. Additionally, it features the ability to block requests from major cloud hosting providers, helping to mitigate unwanted traffic from bots and scrapers. With methods for allowing and denying access, as well as evaluating all restrictions, CGI::ACL offers a comprehensive solution for securing CGI scripts against unauthorized access.
Perl logo

App-week

Release | 4 Mar 2026 08:57 AM | Author: UTASHIRO | Version: 1.07
Upvotes: 3 | CPAN Testers: Pass 82.4%N/A 17.6%
Colorful calendar command for ANSI terminal
The `week` Perl module is a colorful calendar command designed for ANSI terminals, allowing users to display a visually appealing weekly calendar. With version 1.07, it introduces enhancements such as the use of non-breaking space (NBSP) for frame characters to improve compatibility with terminal emulators, and it raises the minimum required Perl version from 5.14 to 5.24. The module supports various options, including internationalization features and specific team-related displays, making it versatile for different user needs. The author, Kazumasa Utashiro, has ensured that the module remains free software, adhering to Perl's licensing terms.
Perl logo

Term-ANSIEncode

Release | 4 Mar 2026 02:42 AM | Author: RKELSCH | Version: 1.94
CPAN Testers: Pass 41.4%Fail 51.1%N/A 7.5%
Markup Language for ANSI Encoding
The Term::ANSIEncode Perl module provides a markup language for generating ANSI text, enabling developers to create visually appealing terminal output with various colors and formatting options. It requires a UTF-8 compatible terminal to support special characters and offers a range of tokens for cursor movement, text attributes, and color settings, including foreground and background colors. Users can easily instantiate the module and utilize its methods to encode strings with ANSI sequences, allowing for features like text framing, line clearing, and text wrapping. This module is particularly useful for enhancing command-line interfaces and creating dynamic text displays in terminal applications.
Perl logo

OpenAPI-Linter

Release | 4 Mar 2026 01:24 AM | Author: MANWAR | Version: 0.17
Upvotes: 1 | CPAN Testers: Pass 100.0%
Validate and lint OpenAPI 3.x specification files
OpenAPI::Linter is a Perl module designed to validate and lint OpenAPI 3.x specification files, ensuring they adhere to both the official OpenAPI JSON Schema and a set of semantic rules. It operates in two phases: first, it performs structural validation against the OpenAPI schema, and then it applies semantic checks to assess documentation completeness, naming conventions, and more. Users can easily create a linter instance by providing a path to a YAML or JSON file or a pre-parsed specification. The module returns a list of issues, categorized by severity, allowing developers to filter results based on error levels or specific message patterns. Notably, version 0.17 introduced bundled OpenAPI meta-schemas for offline validation, enhancing usability in environments without internet access, and improved issue reporting by including detailed location information for each problem found in the specification.
Perl logo

Alien-pugixml

Release | 3 Mar 2026 10:28 PM | Author: EGOR | Version: 0.02
CPAN Testers: Pass 99.3%N/A 0.7%
Find or build pugixml C++ XML parser library
The `Alien::pugixml` Perl module serves as a bridge to the pugixml C++ XML parser library, enabling Perl developers to easily integrate XML parsing capabilities into their applications. It intelligently checks for the availability of the pugixml library on the system and, if not found, automatically downloads and builds it from source. By utilizing this module, developers can seamlessly configure their projects to include the necessary compiler flags and library links, streamlining the process of working with XML data in Perl.
Perl logo

ExtUtils-MakeMaker

Release | 3 Mar 2026 08:35 PM | Author: BINGOS | Version: 7.78
Upvotes: 64 | CPAN Testers: Pass 98.4%Fail 1.0%Unknown 0.5%
Create a module Makefile
ExtUtils::MakeMaker is a Perl module that simplifies the creation of Makefiles for Perl extension modules. By using the `WriteMakefile` function, developers can easily generate a Makefile from a `Makefile.PL` script, which facilitates the building, testing, and installation of Perl modules. This utility is designed to handle various Make programs and their syntax differences across operating systems, ensuring compatibility and reducing errors during the build process. ExtUtils::MakeMaker supports Unicode characters, allows for customization of installation paths, and provides a structured way to manage dependencies and module metadata. It is an essential tool for Perl developers looking to streamline the module creation process and ensure proper installation across different environments.
Perl logo

Text-Trim

Favorite | 3 Mar 2026 08:17 PM | Author: RJT | Version: 1.04
Upvotes: 7 | CPAN Testers: Pass 99.9%Fail 0.1%
Remove leading and/or trailing whitespace from strings
The Text::Trim Perl module provides a simple and efficient way to remove leading and/or trailing whitespace from strings, making it an essential tool for text processing. With functions like `trim`, `ltrim`, and `rtrim`, users can easily manipulate strings in various contexts—whether modifying them in place or returning trimmed versions without altering the originals. This module supports Unicode whitespace characters, ensuring compatibility with a wide range of text inputs. Its straightforward interface and default export of all functions make it easy to integrate into any Perl script, enhancing the handling of string data with minimal effort.
Perl logo

Crypt-HSM

Release | 3 Mar 2026 07:50 PM | Author: LEONT | Version: 0.026
CPAN Testers: Pass 100.0%
A PKCS11 interface for Perl
Crypt::HSM is a Perl module that provides an interface to PKCS11 libraries, enabling developers to leverage cryptographic operations through hardware tokens or software implementations. With this module, users can load a PKCS11 provider, access available slots, open sessions, and perform various cryptographic tasks such as key management, encryption, and random number generation. The recent version 0.026 introduced a compatibility fix for Perl versions earlier than 5.38, ensuring broader usability of the module. This makes Crypt::HSM a valuable tool for developers looking to integrate secure cryptographic functionalities into their Perl applications.
Perl logo

Module-Build-Tiny

Release | 3 Mar 2026 07:42 PM | Author: LEONT | Version: 0.053
Upvotes: 16 | CPAN Testers: Pass 100.0%
A tiny replacement for Module::Build
Module::Build::Tiny is a lightweight alternative to the traditional Module::Build system used for Perl distribution configuration, build, test, and installation processes. With less than 200 lines of code, it offers essential features for most distributions, including support for pure Perl distributions, XS or C building, recursive test files, MYMETA generation, and man page creation, while maintaining a simple and efficient interface. Users can easily replace their existing Build.PL files with this module to streamline their build process without sacrificing functionality. However, it does not support HTML documentation generation or extensibility, making it ideal for developers seeking a straightforward solution for their Perl module builds.