Acme-CPANModules

 view release on metacpan or  search on metacpan

README  view on Meta::CPAN

NAME
    Acme::CPANModules - List of CPAN modules

SPECIFICATION VERSION
    0.1

VERSION
    This document describes version 0.1.12 of Acme::CPANModules (from Perl
    distribution Acme-CPANModules), released on 2023-11-01.

DESCRIPTION
    With the multitude of modules that are available on CPAN, it is
    sometimes difficult for a user to choose an appropriate module for a
    task or find other modules related in some ways to a module. Various
    projects like CPAN Ratings <http://cpanratings.perl.org/> (where users
    rate and review a distribution; now no longer accepting new submission)
    or MetaCPAN <https://metacpan.org/> (which has a "++" feature where
    logged-in users can press a button to "++" a module and the website will
    tally the number of "++"'s a distribution has) help to some extent.
    There are also various blog posts by Perl programmers which review
    modules, e.g. CPAN Module Reviews by Neil Bowers
    <http://neilb.org/reviews/>.

    Acme::CPANModules is another mechanism to help, to let someone
    categorize modules in whatever way she likes.

    A related website/online service for "CPAN modules" is coming (when I
    eventually get to it :-), or perhaps when I get some help).

CREATING AN ACME::CPANMODULES MODULE
    The first step is to decide on the name of your module. It must be under
    the "Acme::CPANModules::" namespace. For example, if you create a list
    of your favorite modules, you can use
    "Acme::CPANModules::YOURCPANID::Favorite". Or if you are creating a list
    of modules that predict the future, you can choose
    "Acme::CPANModules::PredictingTheFuture". See recommendations for module
    name in "module name" under "RECOMMENDATIONS".

    Inside the module, you must declare a hash named $LIST:

     our $LIST = {
         ...
     };

    The names of the keys in the hash must follow DefHash convention. The
    basic structure is this:

     # an example module list
     {
         summary => 'List of my favorite modules',  # for recommendation of summary, see Recommendations section
         description => <<'_',
     (Some longer description, in Markdown format)

     This is just a list of my favorite modules.
     _

         ## define features to be used by entries. this can be used to generate a
         ## feature comparison matrix among the entries.
         # entry_features => { # optional
         #     feature1 => {summary=>'Summary of feature1', schema=>'str*'}, # default schema is 'bool' if not specified
         #     feature2 => {summary=>'Summary of feature2', ...},
         #     feature3 => {...},
         #     feature4 => {...},
         #     ...
         # },

         entries => [
             {...},
             ...
         ],

         ## specify Bencher scenario properties; "bench_" prefix will be removed
         ## when creating scenario record. see Bencher for more details.
         # bench_datasets => [ ... ],
         # bench_extra_modules => [ ... ],

         ## optional. Instruct cpanmodules script to not show the entries when
         ## viewing the list. This is sometimes convenient when the description
         ## already mentions all the entries.
         #'x.app.cpanmodules.show_entries' => 0,

     }

README  view on Meta::CPAN

    an "Acme::CPANModules::*" module. See recommendations in "module name".

  module bundle abstract
    An "Acme::CPANModulesBundle::" module should have abstract that begins
    with "Bundle of ...".

  other modules
    Other suggested namespaces:

    *   "Acme::CPANModulesUtil::",

        Utility modules that do not contain lists of modules themselves.

    *   "Acme::CPANModulesUtilBundle::",

        For distribution that contains several "Acme::CPANModulesUtil::*"
        modules.

    *   "Acme::CPANModulesRole::"

        For role related to "Acme::CPANModules".

    *   "Acme::CPANModulesRoleBundle::"

        For distribution that contains several "Acme::CPANModulesRole::"
        modules.

USING ACME::CPANMODULES MODULES
    You can install the cpanmodules CLI script (from the App::cpanmodules
    distribution). It can list installed Acme::CPANModules modules and view
    list entries. To install all modules listed on an Acme::CPANModules
    module, you can do something like:

     % cpanmodules ls-entries Org | cpanm -n

    Putting similar/related modules together in an Acme::CPANModules can
    also help the lcpan script find related modules ("lcpan related-mods").
    See the lcpan documentation or "lcpan related-mods --help" for more
    details.

    As mentioned earlier, a website/online service that collects and indexes
    all Acme::CPANModules modules on CPAN is coming in the future.
    Meanwhile, there's MetaCPAN.

HOMEPAGE
    Please visit the project's homepage at
    <https://metacpan.org/release/Acme-CPANModules>.

SOURCE
    Source repository is at
    <https://github.com/perlancar/perl-Acme-CPANModules>.

SEE ALSO
    "Acme::CPANModules::*" modules

    cpanmodules from App::cpanmodules

    Bencher

    For categorizing CPAN authors, there are also the Acme::CPANAuthors
    project, complete with its own website <http://acme.cpanauthors.org/>.

AUTHOR
    perlancar <perlancar@cpan.org>

CONTRIBUTING
    To contribute, you can send patches by email/via RT, or send pull
    requests on GitHub.

    Most of the time, you don't need to build the distribution yourself. You
    can simply modify the code, then test via:

     % prove -l

    If you want to build the distribution (e.g. to try to install it locally
    on your system), you can install Dist::Zilla,
    Dist::Zilla::PluginBundle::Author::PERLANCAR,
    Pod::Weaver::PluginBundle::Author::PERLANCAR, and sometimes one or two
    other Dist::Zilla- and/or Pod::Weaver plugins. Any additional steps
    required beyond that are considered a bug and can be reported to me.

COPYRIGHT AND LICENSE
    This software is copyright (c) 2023, 2022, 2021, 2019, 2018 by perlancar
    <perlancar@cpan.org>.

    This is free software; you can redistribute it and/or modify it under
    the same terms as the Perl 5 programming language system itself.

BUGS
    Please report any bugs or feature requests on the bugtracker website
    <https://rt.cpan.org/Public/Dist/Display.html?Name=Acme-CPANModules>

    When submitting a bug or request, please include a test-file or a patch
    to an existing test-file that illustrates the bug or desired feature.



( run in 0.540 second using v1.01-cache-2.11-cpan-e1769b4cff6 )