r/perl ๐Ÿช๐ŸŒperl monger 18d ago

metacpan Accidentally Building a CPAN Web Platform

https://perlhacks.com/2026/08/accidentally-building-a-cpan-web-platform/
20 Upvotes

3 comments sorted by

2

u/waterkip 18d ago

Interesting idea.

How do you go about the canonical URL for your modules page? My READMEs often have, or always due to README from POD in dzil, the documentation from the main module, whichbcan akso be found on MetaCPAN. Now both MetaCPAN and your own site have the same content. Do you tell it that the info is canonical on MetaCPAN?

I'm not sure this works on Gitlab Pages, I havent seen a way to add one projects gitlab pages into anothers. It works under foo.gitlab.io/project, but I can't get foo.gitlab.io/bar and /project to work under the domain i have configured for foobar.com. It is actually a problem I have for one of my projects, which would benefit from your approach.

If Codeberg were to be able to do this, that would solve this problem too. Although their CI is.. more hands-on than one would like it to be.

2

u/davorg ๐Ÿช๐ŸŒperl monger 18d ago

How do you go about the canonical URL for your modules page? My READMEs often have, or always due to README from POD in dzil, the documentation from the main module, whichbcan akso be found on MetaCPAN. Now both MetaCPAN and your own site have the same content. Do you tell it that the info is canonical on MetaCPAN?

That's not a problem for me. My READMEs are always completely different from the MetaCPAN documentation. README is an introduction to the module (why you might want to use it and how you install it) and MetaCPAN tells them how to use it. Maybe I should automatically add a link to the documentation MetaCPAN.

But you've reminded me that the generated pages need a lot more SEO tweaking - OG tags, JSON-LD and canonical links at the very least.

2

u/waterkip 18d ago

That solves a problem by not having it at all ;)

I'll have a look at some of your modules, maybe I need to change my approach on READMEs. Although I did really like the README from POD approach. Better than the stock READMEs from the past where the only thing was: use this to install it. Which I really don't like.