Pod::ProjectDocs(3pm)

✨ NAME ✨

Pod::ProjectDocs β€” bestie, it generates CPAN like project documents from pod. That's it, that's the whole vibe πŸ’… (and yes, it's a Perl module, manual page Pod::ProjectDocs(3pm), we're doing this).


🌸 SYNOPSIS 🌸

okay so first things first, here's how you'd actually use it in Perl:

#!/usr/bin/perl

use strict;
use warnings;

use Pod::ProjectDocs;

my $pd = Pod::ProjectDocs->new(
    libroot => '/your/project/lib/root',
    outroot => '/output/directory',
    title   => 'ProjectName',
);
$pd->gen();

or, and this is the low-effort iconic route, just use pod2projdocs right on your shell:

pod2projdocs -out /output/directory -lib /your/project/lib/root

πŸ¦‹ DESCRIPTION πŸ¦‹

This module lets you generates CPAN like pod pages from your modules for your projects, no cap. It also creates an optional index page if you want one πŸŽ€


πŸ’– OPTIONS πŸ’–

  • outroot β€” the output directory where the generated documentation goes. your docs' new home 🏠
  • libroot β€” your library's (source code) root directory. this is where it reads from, bestie.

You can set a single path by string, or multiple by arrayref. so like, one lib or a whole squad:

my $pd = Pod::ProjectDocs->new(
    outroot => '/path/to/output/directory',
    libroot => '/path/to/lib'
);

or

my $pd = Pod::ProjectDocs->new(
    outroot => '/path/to/output/directory',
    libroot => ['/path/to/lib1', '/path/to/lib2'],
);
  • title β€” your project's name. the main character label ✨
  • desc β€” description for your project. tell the people what it is πŸ’¬
  • index β€” whether you want to create an index for all generated pages (0 or 1).
  • lang β€” set this language as xml:lang (default 'en'). multilingual queen 🌈
  • forcegen β€” whether you want to generate HTML document even if source files are not updated (default is 0). no patience for incremental builds, respect 🫢
  • nosourcecode β€” whether to suppress inclusion of the original source code in the generated output (default is 0).
  • except β€” the files matches this regex won't be parsed. so you can yeet whole directories out of the parse πŸ™ˆ
Pod::ProjectDocs->new(
  except => qr/^specific_dir\//,
  ...other parameters
);
Pod::ProjectDocs->new(
  except => [qr/^specific_dir1\//, qr/^specific_dir2\//],
  ...other parameters
);

πŸŽ€ pod2projdocs πŸŽ€

You can use the command line script pod2projdocs to generate your documentation without creating a custom perl script. zero perl required, just vibes:

pod2projdocs -help

πŸ‘‘ SEE ALSO πŸ‘‘

  • Pod::Simple::XHTML

πŸ’œ AUTHORS πŸ’œ


Β© 2005 by Lyo Kato Β© 2018 by Martin Gruner

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.5 or, at your option, any later version of Perl 5 you may have available.


fr fr, that's the whole page β€” no skips, no summaries, every flag accounted for πŸ’€βœ¨

this was perl v5.32.1, dated 2021-02-21, and it's giving iconic documentation energy β€” slay, stay hydrated, and go generate some pod pages bestie πŸ¦‹πŸ’…πŸŒΈ

πŸ“¦ where this page comes from