(The following is intended for developers who want to extend PRSM)
The program code is available on GitHub.
js is divided into several modules: those that handle the main network pane (
prsm.js), the background painting functions (
paint.js), editing the styles (
styles.js) (the default styles are in
samples.js), the initial tour (
tutorial.js), trophic layout (
trophic.js), clustering (
cluster.js), the calculation of betweenness centrality (
betweenness.js), file saving and reading (
files.js), the data view (
table.js) and shared utility functions (
merge.js). The HTML file that displays in the browser is in the
PRSM uses two important packages:
vis-network. The former handles the sharing between participants' browsers and the latter draws the network. A few other packages are used for dealing with touch input (
Hammer), vector graphics for the background (
fabric.js), drawing emojis, and parsing XML file input.
These components are assembled using
parcel and the bundled file is placed in the
dist directory. So that users have an easy URL to access (i.e. not needing to include
dist in the link), there is an
.htaccess file that rewrites URLs from what the user puts into their browser to the correct location.
To install the code, use
git to clone the repo to your local disk and change to the cloned directory. Then install the required packages with
and build the distribution with
npm run build
Documentation can be found in the
doc directory including a jsdoc index of all functions and methods.
package.json for other npm commands.