Open source search.cpan.org clone with MetaCPAN API back-end
Perl
Fetching latest commit…
Cannot retrieve the latest commit at this time.

README

search.cpan.org clone based on MetaCPAN API

This is an attempt to recreate the look-and-feel of http://search.cpan.org/ using the
MetaCPAN API as a back-end. https://github.com/CPAN-API/cpan-api/

For objectives, plans, and a description of what the site, and the code behind it should look like see
http://perlmaven.com/search-cpan-org

For a live version of this application visit http://sco.perlmaven.com/


Development environment:
------------------------

* Install the prerequisites via Makefile.PL
* Run bin/fetch.pl to fetch some meta-meta-data from MetaCPAN::API
* Run plackup -r
* Borwse to http://localhost:5000/


Enhancements
=============

Various places where the clone differs from the real sco that can be considered enhancements.

The permalink in the top-right corner of
--------------
   http://sco.perlmaven.com/~szabgab/CPAN-Test-Dummy-SCO-Special-0.04/lib/CPAN/Test/Dummy/SCO/Special.pm
  links directly to the permanent url and not to /perldoc?


https://github.com/szabgab/MetaCPAN-SCO/issues/18

Canonical URLs
---------------
All the version-specific files set the non-version specific file as the canonical URL.
For example
       http://search.cpan.org/~szabgab/CPAN-Test-Dummy-SCO-Special-0.04/lib/CPAN/Test/Dummy/SCO/Separate.pod
  sets http://search.cpan.org/dist/CPAN-Test-Dummy-SCO-Special/lib/CPAN/Test/Dummy/SCO/Separate.pod

       http://search.cpan.org/~szabgab/CPAN-Test-Dummy-SCO-Special-0.04/
  sets http://search.cpan.org/dist/CPAN-Test-Dummy-SCO-Special/

See https://support.google.com/webmasters/answer/139066?hl=en
https://github.com/szabgab/MetaCPAN-SCO/issues/17


Redirect URLs
--------------

Historically many people have been linking to version specific files on search.cpan.org.
When that version of the module is removed from CPAN, these links become broken.

Instead of showing a 'Not found' error sco. could redirect those URLs to the stable URL.

For example

    http://saerch.cpan.org/~szabgab/CPAN-Test-Dummy-SCO-Pirated-1.02/lib/CPAN/Test/Dummy/SCO/Pirated.pm
 to http://sco.perlmaven.com/dist/CPAN-Test-Dummy-SCO-Pirated/lib/CPAN/Test/Dummy/SCO/Pirated.pm

and

    http://saerch.cpan.org/~szabgab/CPAN-Test-Dummy-SCO-Pirated-1.02/
 to http://sco.perlmaven.com/dist/CPAN-Test-Dummy-SCO-Pirated/

See https://github.com/szabgab/MetaCPAN-SCO/issues/19


Author lists
-------------

All these pages used to server the same content:

   http://search.cpan.org/author/?a
   http://search.cpan.org/author/?A
   http://search.cpan.org/author/?Abc

And then pages with different query_string had different content.

Instead of that now all of them redirect to

   http://search.cpan.org/author/A