Skip to content
Web interface for MetaCPAN
Perl HTML JavaScript CSS Raku Shell Dockerfile
Branch: master
Clone or download

Latest commit

oalders Merge pull request #2304 from hstejas/mobile2
move top-margin to nav-list
Latest commit 2e09656 May 24, 2020


Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Fix casing in Apr 1, 2020
bin Tidy Dec 5, 2019
deploy build and deploy docker image when on master Apr 27, 2019
git Don't stash when using pre-commit hook Dec 7, 2019
lib Addendum to #2283; "Developer release" sidebar label added to Release… Apr 30, 2020
root move top-margin to nav-list May 23, 2020
t remove broken and extraneous sorting parameters from rev deps links May 4, 2020
.dockerignore Dockerize MetaCPAN web frontend Jun 29, 2017
.editorconfig Keep indentation consistent in travis yml Oct 15, 2014
.gitignore remove some unneeded +x flags Nov 30, 2017
.hadolint.yaml Add .hadolint.yaml Dec 8, 2019
.mailmap Update .mailmap [minor] Mar 23, 2020
.perlcriticrc Allow explicit undef. May 12, 2017
.perltidyrc enable perltidy --weld-nested-containers Jan 29, 2018
Dockerfile fixes metacpan/metacpan-docker#67 Jan 22, 2020
LICENSE License under same terms as Perl (GPL/Artistic) Jan 25, 2014 Mention source code permalinks in News Apr 1, 2020 Update README Mar 24, 2020
app.psgi Use /var/tmp for tmpdir in docker Dec 7, 2019
cpanfile Re-order cpanfile Mar 23, 2020
cpanfile.snapshot Update cpanfile.snapshot Mar 23, 2020
log4perl.conf move syslogging to prod log4perl conf Apr 15, 2019
log4perl_prod.conf move syslogging to prod log4perl conf Apr 15, 2019
metacpan_web.conf clear and re-cache templates on server start in production Mar 7, 2019
package.json Bump yarn from 1.19.2 to 1.22.0 Feb 19, 2020
run-dev don't try to use Feersum in run-dev May 4, 2020
static-app.psgi improvement for dev server Jun 25, 2018
tidyall.ini Upgrade Code::TidyAll and move its rc file Dec 5, 2019
yarn.lock Bump yarn from 1.19.2 to 1.22.0 Feb 19, 2020

test Coverage Status Kritika Analysis Status

Getting Started

We strongly recommend using metacpan-docker. This will give you a virtual machine already configured and ready to start developing on.

Installing Manually

If you prefer not to use Docker, the following commands will get you started:

$ carton install
$ npm install
$ export PATH="$(realpath ./node_modules/.bin):$PATH"
$ ./bin/prove t
$ carton exec plackup -p 5001 -r

To run the tests in parallel, add -j8 (or however many CPUs you have) to the prove command.

Local Configuration Changes

The back end defaults to Running a local API server is optional and not required to hack on the front end. The address to the API being used can be changed in the metacpan_web.conf file. Ideally you would create a new file called metacpan_web_local.conf that contains


which will be loaded on top of the existing config file.

Compatibility Notes

On Win32 (and possibly also on other platforms) when using Perl < 5.12, the server started with plackup will generate warnings relating to date parsing. These are caused by Plack due to a bug in the gmtime implementation and can be removed by upgrading to Perl 5.12.

You can’t perform that action at this time.