Wolfram Paclet Repository

Bob Sandheinrich
2021/10/14

Wolfram Paclet Repository

New repository in the resource system

Easy to find and use paclets

Straightforward for any developer to publish paclets

Exploring the Wolfram Paclet Repository

Via the web

Hyperlink["https://resources.wolframcloud.com/PacletRepository/all"]

Searching Via WL

searchresults=ResourceSearch[{"ResourceType"->"Paclet","quantum"}]

Inspecting paclet resources

pacRO=Normal[searchresults[1]]["ResourceObject"]

pacRO["Description"]

pacRO["DocumentationLink"]

pacRO["ExampleNotebook"]

Compared To Wolfram Function Repository

Grid[{{Style["Function",Bold],Style["Paclet",Bold]},
{"Single standalone function","Full package of interdependent tools"},
{"Reviewed and editted","No review, direct publication"},
{"Single global namespace","PublisherID based namespace"},
{"Definition Notebook contains all","Definition Notebook points to files"}},Alignment->Left,Dividers->{All,{False,True,{False}}},BaseStyle->{FontFamily->"Source Sans Pro"}]

Creating a paclet for the WPR

Restrictions and Conventions

Paclet name begins with “PublisherID__”

All code lives in PublisherID` context

Preferably PublisherID`PacletBaseName`

Does not quietly modify system settings

Symbols are documented with examples

Must create a Paclet Resource Definition Notebook

Additional guidelines

Hyperlink["https://resources.wolframcloud.com/PacletRepository/guidelines"]

Paclet Resource Definition Notebook

Linked to a paclet directory

Auto-convert tool for existing paclets without publisher ids

Validation and auto-fix tools built in to the notebook

Demo

ResourceFunction["CreateResourceNotebook"]["Paclet"]

Request to join the WPR Beta Program

Hyperlink["https://www.wolframcloud.com/obj/bobs/Forms/WTC-2021-WPR-BetaRequest"]

URLShorten["https://www.wolframcloud.com/obj/bobs/Forms/WTC-2021-WPR-BetaRequest","WPRBeta"]

Magnify[BarcodeImage["https://www.wolframcloud.com/obj/bobs/Forms/WTC-2021-WPC-BetaRequest","QR"],4]

See other Paclet Related Talks

Paclet Development Thursday 1:30PM CDT

Authoring Paclet Documentation Friday 1:00PM CDT