Open source search.cpan.org clone with MetaCPAN API back-end
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
bin
lib/MetaCPAN
static
t
tt
.gitignore
.perlcriticrc
.perltidyrc
.tidyallrc
.travis.yml
Changes
Makefile.PL
README
app.psgi

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