MetaPOD - An evolution of POD


version v0.4.0

What is MetaPOD

1. Documentation About Documentation

MetaPOD is a system intended to express the relationships between different documents, and express the importance and context of other things within the documents, and express how the documents as a whole fit together

2. Documentation about Meta

MetaPOD also is a system by which one can express relationships about code, code which has documentation, but how the documentation is related to other documentation requires you to normally understand the meta-level information within the code works, so, this system aims to make the "meta level" more visible from the surface, so the meta-level information can be more easily used to

  • Aggregate multiple documents to a single document in line with how the Meta layer works

  • Show pretty graphs and things showing how classes are related to each other

What can MetaPOD do for me

At present, there is not much built on top of the MetaPOD API, so it is marginally limited.

And at present, there is not much on CPAN with MetaPOD annotations, so any such functionality is presently limited by that.

However, for a taste of what we might see with widespread use of MetaPOD, here is what we can easily determine from the present API, with the existing annotations in within MetaPOD itself: self_structure.png

People who are writing MetaPOD

Eventually, the goal is to have the MetaPOD itself able to be generated via tools during development, so that the meta-layer information is cemented into the POD itself, before, or during release.

In that vein, I hope to make a Dist::Zilla plug-in that does this for you.

In the mean time, the documents you want to be reading are

  • MetaPOD::Spec - The general specification for all forms of MetaPOD

  • MetaPOD::JSON - Information specific to the JSON based implementation of MetaPOD

People who are wanting to read MetaPOD


Kent Fredric <>


This software is copyright (c) 2017 by Kent Fredric <>.

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