CPANscan logo

CPANscan

Recent Perl modules, releases and favorites.
Last updated 9 January 2026 12:30 PM
Perl logo

perlsecret

Release | 9 Jan 2026 10:52 AM | Author: BOOK | Version: 1.018
Upvotes: 54 | CPAN Testers
Perl secret operators and constants
The `perlsecret` module introduces a collection of Perl's "secret operators" and constants, which are quirky, lesser-known constructs that enhance the language's expressiveness and brevity. These operators, often discovered by Perl enthusiasts and obfuscators, come with whimsical nicknames based on their appearance and functionality, such as "Venus" for numification (0+), "Babycart" for list interpolation (@{[ ]}), and "Eskimo greeting" for a one-liner END block (}{). While these operators can provide clever shortcuts for common tasks, they are generally not recommended for production code due to their obscurity. The module also includes secret constants like "Space fleet" (<=><=><=>) and "Amphisbaena" (<~>), which serve specific purposes in Perl programming. Overall, `perlsecret` is a playful exploration of Perl's capabilities, appealing to those who enjoy the language's more esoteric features.
Perl logo

Module-Starter

Release | 9 Jan 2026 10:40 AM | Author: XSAWYERX | Version: 1.80
Upvotes: 34 | CPAN Testers
A simple starter kit for any module
Module::Starter is a Perl module designed to simplify the creation of skeletal CPAN distributions for developers. By utilizing the command-line interface, users can quickly generate a complete module structure, including essential files such as builder scripts, tests, documentation, and module code, through its primary method, "create_distro." This method allows for customization of various parameters, including distribution name, module names, directory location, builder type, licensing, author information, and more. Additionally, Module::Starter supports the creation of SCM-specific ignore files and can be extended with plugins to enhance its functionality, making it an invaluable tool for Perl developers looking to streamline their module creation process.
Perl logo

LedgerSMB-Installer

Release | 9 Jan 2026 10:15 AM | Author: EHUELS | Version: v0.999.11
CPAN Testers: Pass 100.0%
Installer for LedgerSMB double entry accounting and ERP
The LedgerSMB::Installer module serves as the installation tool for the LedgerSMB accounting web application, facilitating the setup process for users looking to deploy this financial management software. Maintained by Erik Huelsmann, this module simplifies the installation steps, ensuring that users can efficiently configure and launch their LedgerSMB environment. It is distributed under a permissive license, allowing for free use, modification, and distribution, while also providing a clear disclaimer regarding the absence of warranties.
Perl logo

Perl-Critic-Grape

Release | 9 Jan 2026 05:27 AM | Author: BBLACKM | Version: 0.0.6
CPAN Testers: Pass 96.7%N/A 3.3%
Additional Perl::Critic policies
Perl::Critic::Grape is a Perl module that extends the capabilities of Perl::Critic by introducing additional coding policies aimed at improving code quality and maintainability. This module includes rules such as requiring parentheses with built-in function calls, prohibiting inline do blocks, and enforcing the use of sigils to indicate variable types. It also discourages manual reference checks and promotes the use of named loop control variables instead of topic iterators. The latest version, 0.0.6, released on January 8, 2026, includes enhancements to the RequireSigils policy, ensuring better adherence to coding standards. Overall, Perl::Critic::Grape serves as a valuable tool for developers seeking to enforce best practices in their Perl code.
Perl logo

App-Greple

Release | 9 Jan 2026 05:00 AM | Author: UTASHIRO | Version: 10.02
Upvotes: 4 | CPAN Testers: Pass 90.9%N/A 9.1%
Extensible grep with lexical expression and region handling
The `greple` Perl module is an advanced and extensible tool designed to enhance the functionality of traditional grep commands by incorporating lexical expression and region handling capabilities. With its latest version, 10.02, released on January 9, 2026, `greple` has improved backward compatibility with older Perl versions and suppressed warnings related to Variable Length Lookbehind. This module allows users to perform complex text searches with features such as block numbering, escape sequence support, and enhanced pattern matching, making it a powerful choice for developers and system administrators who require sophisticated text processing capabilities. The recent updates also include comprehensive documentation improvements and optimizations for pattern handling, ensuring that users can leverage its full potential effectively.
Perl logo

Bit-Set

Release | 9 Jan 2026 04:48 AM | Author: CHRISARG | Version: 0.12
Provides the Bit::Set and Bit::Set::DB libraries
The Bit::Set module provides a procedural interface for creating and manipulating bitsets in Perl, leveraging the performance of the underlying C library, Bit. With functions for setting, clearing, and querying bits, as well as performing set operations like union and intersection, this module is designed for efficiency and ease of use. It allows developers to create bitsets of specified lengths, manage memory effectively, and perform various operations with minimal overhead. The API closely mirrors the C library's functions, making it straightforward for users familiar with C to adopt. Additionally, the module supports runtime argument checks for debugging purposes and offers both procedural and object-oriented interfaces, enhancing its versatility for different programming styles.
Perl logo

Business-ISBN-Data

Release | 9 Jan 2026 04:29 AM | Author: BRIANDFOY | Version: 20260109.001
Upvotes: 3 | CPAN Testers: Pass 100.0%
Data pack for Business::ISBN
The `Business::ISBN::Data` Perl module serves as a data pack for the `Business::ISBN` module, providing essential data derived from the ISBN Agency's `RangeMessage.xml` file. This module is automatically loaded by `Business::ISBN` and requires version 3.005 or later due to structural changes aimed at fixing a bug related to ISBN-13 prefixes. Users can customize the data source by setting the `ISBN_RANGE_MESSAGE` environment variable to point to an alternative `RangeMessage.xml` file, allowing for the use of the latest data without needing to update the module itself. The module includes a fallback mechanism to older data if the specified file is unavailable. Recent updates include a data refresh on January 8, 2026, ensuring users have access to the most current ISBN information.
Perl logo

App-Greple-tee

Release | 9 Jan 2026 03:53 AM | Author: UTASHIRO | Version: 1.03
CPAN Testers: Pass 93.1%N/A 6.9%
Module to replace matched text by the external command result
The App::Greple::tee module is a powerful Perl extension designed to facilitate the replacement of matched text with the output of an external command, enhancing text processing capabilities. By utilizing the `greple` command with the `-Mtee` option, users can send specific text matches to a filter command, such as `tr` or `cat`, and replace the original text with the command's result. This module supports various options, including `--discrete` for processing each match individually and `--fillup` for combining non-blank lines before filtering, making it versatile for handling complex text transformations. Recent updates in version 1.03 have improved option handling by migrating to Getopt::EX::Config and enhanced support for CJK text joining, ensuring better processing of Korean and other Asian scripts. This module is particularly useful for users looking to leverage external commands within their text processing workflows while maintaining the flexibility of Perl's powerful text manipulation features.
Perl logo

App-ansifold

Release | 9 Jan 2026 02:56 AM | Author: UTASHIRO | Version: 1.33
CPAN Testers: Pass 100.0%
Fold/colrm/cut command handling ANSI terminal sequences
App::ansifold is a Perl module designed to handle ANSI terminal sequences effectively, allowing users to fold command output while preserving the formatting of colored and styled text. This utility is particularly useful for developers and system administrators who need to manage terminal output in a visually coherent manner. Recent updates include the addition of a `--crmode` option for integration with App::Greple::tee, enhancements for proper joining of CJK text, and improved handling of Korean text, ensuring that it is now joined correctly with spaces. These features make App::ansifold a robust tool for anyone working with terminal output that includes complex text formatting.
Perl logo

App-Netdisco

Release | 8 Jan 2026 10:37 PM | Author: OLIVER | Version: 2.097001
Upvotes: 18 | CPAN Testers
An open source web-based network management tool
App::Netdisco is an open-source, web-based network management tool tailored for network administrators, enabling efficient monitoring and management of network devices through a user-friendly interface. It collects data via SNMP and stores it in a PostgreSQL database, allowing users to locate devices by MAC or IP address, manage switch ports (including turning them off or changing VLAN settings), and generate detailed inventories of network hardware. The application features a built-in web server and a backend daemon for real-time data gathering and interactive requests. Recent enhancements in version 2.097001 include improved functionality for web buttons related to MAC and ARP operations, as well as updates to the NetAddr::MAC dependency, ensuring better performance and compatibility. For more information, users can access a demo or explore installation and troubleshooting resources available on the project's GitHub page.
Perl logo

Mojolicious-Plugin-HTMX

Favorite | 8 Jan 2026 10:37 PM | Author: GDT | Version: 1.03
Upvotes: 6 | CPAN Testers: Pass 100.0%
Mojolicious Plugin for htmx
Mojolicious::Plugin::HTMX is a powerful plugin designed for Mojolicious applications, enabling seamless integration of htmx, a library that facilitates dynamic web applications through HTML attributes. By utilizing this plugin, developers can easily implement features such as AJAX requests, client-side event triggers, and history management without extensive JavaScript coding. The plugin provides a variety of helpful methods and helpers, including `hx` and `hx_attr` for generating htmx attributes, as well as response helpers for managing client-side interactions. Notably, the recent version 1.03 introduced the `HTMX_V1_CDN_URL` constant and enhanced the functionality of the `hx` and `hx_attr` helpers, further streamlining the development process. This module is ideal for developers looking to enhance their Mojolicious applications with modern, interactive features while maintaining clean and manageable code.
Perl logo

App-sdseasydyn

Release | 8 Jan 2026 10:04 PM | Author: SDS | Version: v0.1.0
CPAN Testers: Pass 87.5%N/A 12.5%
EasyDNS Dynamic DNS updater (CLI-first App distribution)
"App::sdseasydyn" is a Perl module designed for easy management of Dynamic DNS updates with EasyDNS through a command-line interface (CLI). It allows users to update their DNS records effortlessly by executing the "sdseasydyn update" command, with configuration options that prioritize command-line inputs, environment variables, and configuration files. The module features public IPv4 address discovery, a state file to track the last IP address to prevent unnecessary updates, and robust error handling through retries. Notably, it ensures the security of sensitive information, such as user tokens, by preventing their logging. The initial public release introduced these functionalities along with a CI workflow and comprehensive documentation, making it a reliable tool for users needing dynamic DNS updates.
Perl logo

MooseX-Types-DateTime

Release | 8 Jan 2026 05:10 PM | Author: ETHER | Version: 0.14
Upvotes: 6 | CPAN Testers: Pass 100.0%
DateTime related constraints and coercions for Moose
MooseX::Types::DateTime is a Perl module that provides a set of type constraints and coercions specifically designed for use with the DateTime suite of objects in the Moose object system. It allows developers to define attributes in their Moose classes that can automatically coerce various input formats—such as strings representing time zones or numeric values representing durations—into the appropriate DateTime objects. This module simplifies the handling of date and time data by ensuring that attributes are validated and coerced correctly, enhancing the robustness of date-related operations in Perl applications. The latest version, 0.14, includes significant tooling updates that improve compatibility and maintainability, reflecting a decade of enhancements to the module.
Perl logo

Sim-OPT

Release | 8 Jan 2026 05:01 PM | Author: GLBRUNE | Version: 0.857
CPAN Testers: Pass 10.5%Unknown 89.5%
Sim::OPT is a optimization and parametric exploration program that can mix sequential and parallel block search methods
Sim::OPT is a Perl module designed for optimization and parametric exploration, particularly suited for simulation programs that utilize text files for input and output. It emphasizes problem decomposition and offers various optimization techniques, including block search methods that allow overlapping subspaces and a combination of sequential and parallel searches. The module includes specialized components such as Sim::OPT::Takechange for exploring less traversed search paths, and Sim::OPT::Morph for manipulating simulation model parameters. Additionally, it supports advanced features like metamodel building and can work with pre-simulated data. Users can easily install Sim::OPT via CPAN and configure it to suit their specific simulation needs. The module is dual-licensed, providing both open-source and proprietary options, and is primarily intended for use on Linux systems. Notably, the module has been actively maintained, with its original version released in December 2021.
Perl logo

App-TimeTracker-Command-Jira

Release | 8 Jan 2026 03:21 PM | Author: PEPL | Version: 1.1
CPAN Testers: Pass 100.0%
App::TimeTracker Jira plugin
The App::TimeTracker::Command::Jira module is a plugin for the App::TimeTracker that facilitates integration with Atlassian Jira, enabling users to manage their tasks more efficiently. With this module, users can automatically set the description and tags of their current tasks based on Jira ticket data, update ticket ownership, and log work hours directly to the Jira worklog. Additionally, if used alongside the Git plugin, it can generate branch names derived from Jira ticket information. Recent updates in version 1.1 have re-enabled authentication via Config::Identity, enhancing security by allowing credentials to be stored encrypted. This module is particularly useful for developers and teams who rely on Jira for project management and want to streamline their workflow.
Perl logo

MIME-Lite

Release | 8 Jan 2026 03:06 PM | Author: RJBS | Version: 3.035
Upvotes: 35 | CPAN Testers: Pass 100.0%
Low-calorie MIME generator
MIME::Lite is a Perl module designed for the straightforward creation and sending of MIME messages, allowing users to generate both single-part and multipart emails with text or binary attachments. It simplifies the process of composing emails by handling various MIME encodings automatically and does not require additional dependencies, although it can work with other MIME-related modules if they are available. Users can specify message details such as sender, recipient, subject, and content type, and can send messages using the default method for their operating system or configure custom sending methods like SMTP. However, it is important to note that MIME::Lite is not actively maintained and users are encouraged to consider alternatives like Email::MIME or MIME::Entity for more robust solutions.
Perl logo

Perl-Tidy

Release | 8 Jan 2026 02:58 PM | Author: SHANCOCK | Version: 20260109
Upvotes: 147 | CPAN Testers: Pass 100.0%
Indent and reformat perl scripts
Perl::Tidy is a Perl module that provides a powerful interface for parsing and beautifying Perl source code, making it easier to read and maintain. By utilizing the functionality of the perltidy utility, this module allows developers to format their Perl scripts directly within their code, offering a variety of input and output options, including file names, array references, and scalar references. Users can customize the formatting through numerous parameters, such as specifying a configuration file, redirecting error messages, and applying pre- and post-filters to the source code. Recent updates have introduced new parameters like `--break-at-old-trailing-loops` and `--break-at-old-trailing-conditionals`, which enhance the module's ability to maintain existing line breaks in specific control structures, improving the overall formatting consistency. With its extensive options and robust error handling, Perl::Tidy is an essential tool for Perl developers looking to enforce coding standards and improve code readability.
Perl logo

CLI-Cmdline

Favorite | 8 Jan 2026 02:05 PM | Author: HANSH | Version: 1.22
Upvotes: 1 | CPAN Testers: Pass 93.8%Fail 5.5%N/A 0.8%
A minimal command-line parser with short and long options in pure Perl
CLI::Cmdline is a lightweight and dependency-free command-line parser for Perl that simplifies the handling of both short and long options. With features such as support for single-letter option bundling, options that can accept arguments, and the ability to count switch occurrences, this module allows developers to easily define and parse command-line parameters. It effectively manages positional arguments while providing error handling that restores the original argument array in case of invalid input. Ideal for Perl scripts that require straightforward command-line interaction, CLI::Cmdline streamlines the process of option parsing with minimal overhead.
Perl logo

Future-IO

Release | 8 Jan 2026 01:33 PM | Author: PEVANS | Version: 0.18
Upvotes: 3 | CPAN Testers: Pass 87.2%Fail 10.7%N/A 2.1%
Future-returning IO methods
"Future::IO" is a Perl module designed to facilitate asynchronous input/output operations by returning results as Future instances, allowing for non-blocking execution. It provides a set of methods that mirror core Perl IO functions, such as `read`, `write`, `sleep`, and `connect`, but with the added benefit of yielding results asynchronously. This module is particularly useful for developers looking to implement IO in an event-driven manner, as it allows for easy integration with various event systems. Recent updates include the introduction of the `->load_best_impl` method in version 0.18, which automatically selects the most suitable implementation for the underlying event system, enhancing usability and flexibility for developers.
Perl logo

Net-API-Nominatim

Release | 8 Jan 2026 12:50 PM | Author: BLIAKO | Version: 0.01
CPAN Testers: Pass 100.0%
Perl client for local or public OpenStreetMap Nominatim Geocoding service. Open source, unrestricted and free
Net::API::Nominatim is a Perl module designed to facilitate interaction with the Nominatim geocoding service, which utilizes OpenStreetMap data to perform both forward and reverse geocoding. This module allows users to query either a public Nominatim server via HTTP/GET requests or a locally installed instance through a UNIX socket, making it suitable for applications with varying geocoding needs. It supports basic functionalities such as searching for addresses based on free-form or structured queries and retrieving addresses from geographic coordinates. With its open-source nature, users can also set up their own Nominatim server to avoid reliance on commercial services. The initial release of this module marks its entry into the Perl ecosystem, providing a valuable tool for developers working with geospatial data.
Perl logo

Net-EANSearch

Release | 8 Jan 2026 11:01 AM | Author: JANW | Version: 1.20
Upvotes: 3 | CPAN Testers: Pass 100.0%
Perl module for EAN and ISBN lookup and validation using the API on https://www.ean-search.org
The Net::EANSearch Perl module provides a robust interface for looking up and validating EAN and ISBN codes using the ean-search.org API. With methods for barcode and ISBN lookups, as well as searches by product name, category, and prefix, this module is ideal for developers needing to access product information efficiently. Recent updates include the addition of a new method, `creditsRemaining()`, which allows users to check their remaining API credits, enhancing the module's usability for those managing API usage. Overall, Net::EANSearch is a valuable tool for integrating barcode and ISBN functionalities into Perl applications.
Perl logo

Koha-Contrib-Sudoc

Release | 8 Jan 2026 10:16 AM | Author: FREDERICD | Version: 2.48
Upvotes: 1 | CPAN Testers
Chargeur Koha par Tamil
Koha::Contrib::Sudoc is a Perl module designed as a Sudoc loader for the Koha library management system, developed by Tamil. This tool facilitates the integration of Sudoc records into Koha, enhancing the library's cataloging capabilities. The module has seen various updates, with the latest version 2.48, released on January 8, 2026, introducing support for ES with login/password functionality, which improves security and user access management. For more detailed information on its operation, users can refer to the documentation available at Tamil's website. This module is open-source and licensed under the GNU General Public License, Version 3.
Perl logo

Version-Semantic

Release | 8 Jan 2026 10:00 AM | Author: SVW | Version: v1.0.0
CPAN Testers: Pass 98.6%N/A 1.4%
Tiny SemVer based class implementation
Version::Semantic is a Perl module that provides a lightweight implementation of semantic versioning (SemVer), allowing developers to create and manipulate version objects based on the Semantic Versioning Specification. With its `parse` method, users can easily generate immutable version objects from semantic version strings, including those with a "v" prefix. Each version object encapsulates essential attributes such as major, minor, and patch numbers, along with optional pre-release and build metadata. The module supports comparison of version objects according to SemVer precedence rules, enabling straightforward version management in applications. Additionally, it offers methods for string representation and core version extraction, making it a versatile tool for handling versioning in Perl projects.
Perl logo

App-SpreadRevolutionaryDate

Release | 8 Jan 2026 09:47 AM | Author: GIBUS | Version: 0.54
Upvotes: 1 | CPAN Testers: Pass 94.7%N/A 5.3%
Spread date and time from Revolutionary (Republican) Calendar on Bluesky, Twitter, Mastodon, Freenode and Liberachat
The `App::SpreadRevolutionaryDate` Perl module is designed to facilitate the dissemination of dates and times from the Revolutionary (Republican) Calendar across various social media platforms, including Bluesky, Twitter, Mastodon, Freenode, and Liberachat. With a straightforward constructor that allows for optional configuration file paths, this module initializes its internal objects and attempts authentication with the specified targets. The primary functionality is encapsulated in the `spread` method, which broadcasts the calendar date to all configured platforms. The latest version, 0.54, introduces a critical enhancement by ensuring the application terminates on encountering a Gemini error, thereby improving error handling and user experience.
Perl logo

Wiki-JSON

Release | 8 Jan 2026 09:41 AM | Author: SERGIOXZ | Version: v0.0.32
Upvotes: 1 | CPAN Testers: Pass 93.2%N/A 6.8%
Parse wiki-like articles to a data-structure transformable to JSON
The `Wiki::JSON` Perl module is designed to parse wiki-like articles formatted in a mediawiki syntax and transform them into a data structure that can be easily serialized to JSON or YAML. It supports various formatting elements such as headers, bold and italic text, bullet lists, and links, while also allowing for the inclusion of templates and images. Users can utilize the `parse` method to convert wiki text into a structured format, or use the `pre_html` method for more advanced HTML element generation. Recent updates have improved error handling for wiki text and enhanced support for multimedia elements, including PDF and video, making it a robust tool for developers working with wiki content.
Perl logo

Business-Westpac

Release | 8 Jan 2026 08:08 AM | Author: LEEJO | Version: 0.02
CPAN Testers: Pass 62.2%N/A 37.8%
Top level namespace for the Business::Westpac set of modules
Business::Westpac is a Perl module designed to facilitate the parsing and generation of files specifically for use with Westpac bank, as outlined in their documentation. Although the module is currently a work in progress and has been largely abandoned due to a shift in banking partnerships, it remains available on CPAN and GitHub for users who may wish to extend or fork it. Users are advised to refer to the specific submodules for the file formats they intend to work with, rather than using this top-level namespace directly. The latest update (version 0.02) includes documentation clarifying the incomplete status of the distribution, ensuring users are aware of its limitations.
Perl logo

Math-GMPq

Release | 8 Jan 2026 07:15 AM | Author: SISYPHUS | Version: 0.68
Upvotes: 1 | CPAN Testers: Pass 99.5%Unknown 0.5%
Perl interface to the GMP rational functions
Math::GMPq is a Perl module that provides an interface to the GNU Multiple Precision (GMP) library's rational number functions, specifically for handling big rational numbers (mpq). This module wraps the GMP's mpq functions, allowing users to create, manipulate, and perform arithmetic operations on rational numbers with high precision. It supports various initialization methods, including creating objects from strings representing fractions, and offers a range of functions for arithmetic, comparison, and conversion between different numeric types. Additionally, Math::GMPq includes operator overloading for seamless integration with Perl's native arithmetic operations, making it a powerful tool for applications requiring precise rational number calculations. Users must ensure that the GMP C library is installed, and they should be aware of specific memory management practices to avoid precision loss when working with large integers.
Perl logo

Mooish-AttributeBuilder

Favorite | 8 Jan 2026 12:00 AM | Author: BRTASTIC | Version: 1.003
Upvotes: 1 | CPAN Testers: Pass 100.0%
Build Mooish attribute definitions with less boilerplate
Mooish::AttributeBuilder is a Perl module designed to simplify the creation of attribute definitions in object-oriented programming, particularly when using the Moo, Moose, or Mouse frameworks. By providing a set of shortcuts for the "has" keyword, this module reduces boilerplate code and enhances readability. It allows developers to easily define required and optional attributes for constructors, as well as fields that are not accessible during object instantiation. Additionally, it supports extending existing attributes and offers customizable shortcuts for method naming conventions. This flexibility makes Mooish::AttributeBuilder a valuable tool for Perl developers looking to streamline their object-oriented code while maintaining compatibility across different OO systems.
Perl logo

Affix

Release | 7 Jan 2026 09:49 PM | Author: SANKO | Version: v1.0.3
Upvotes: 4 | CPAN Testers: Pass 51.7%Fail 48.3%
A Foreign Function Interface eXtension
Affix is a powerful Foreign Function Interface (FFI) for Perl that enables seamless interaction with dynamic libraries (DLLs and shared objects) without the need for XS code or C compiler configuration. It utilizes a custom lightweight Just-In-Time (JIT) engine called infix to generate machine code at runtime, significantly reducing overhead compared to traditional FFI solutions. With Affix, users can load libraries, bind functions with specific argument and return types, and manage memory manually if desired. Recent updates in version 1.0.3 introduced support for variadic functions, allowing dynamic JIT compilation for functions like `printf`, along with enhanced type coercion capabilities and new specialized pointer types for better integration with C APIs. This module is ideal for Perl developers looking to leverage existing C libraries efficiently and effectively.