The NDE Customization package offers options to enhance and extend the functionality of Primo’s New Discovery Experience (NDE). This Third Iron Adapter adds LibKey support directly into the Primo NDE experience.
The NDE UI supports loading of custom modules at runtime and also provides infrastructure to dynamically load add-ons developed by vendors, consortia, or community members. This enables seamless integration, allowing institutions to configure and deploy external add-ons through Add-On Configuration in Alma.
The NDE UI add-on framework allows various stakeholders to develop and integrate custom functionality:
- Vendors can create and host services that institutions can seamlessly incorporate into their environment.
- Institutions and consortia can develop and share custom components, enabling consistency and collaboration across multiple libraries.
Library staff can easily add, configure, and manage these add-ons through Alma, following guidelines provided by the stakeholders. These typically include:
- Add-on Name – The identifier used in Alma’s configuration.
- Add-on URL – The location where the add-on is hosted (static folder to load the add-on at runtime).
- Configuration Parameters – JSON-based config parameters to be referenced at runtime by the add-on.
Note: The NDE Customization package is currently available exclusively to Primo customers who have early access to the New Discovery Experience (NDE). Further availability will be announced in upcoming releases.
-
In Alma, navigate to Discovery > Configure Views
-
On the View List screen, select "Add View"
-
Configure the view as needed, making sure to check the NDE checkbox
Fill in your LibKey Library ID and API Key, along with your Unpaywall Email Address. Update the other boolean configuration values as needed.
Default configuration JSON:
{
"apiKey": "your-libkey-api-key",
"libraryId":"your-libkey-library-id",
"unpaywallEmailAddressKey": "your-unpaywall-email-address",
"journalCoverImagesEnabled": "true",
"journalBrowZineWebLinkTextEnabled": "true",
"articleBrowZineWebLinkTextEnabled": "true",
"articlePDFDownloadLinkEnabled": "true",
"articleLinkEnabled": "true",
"printRecordsIntegrationEnabled": "true",
"showFormatChoice": "false",
"showLinkResolverLink": "false",
"enableLinkOptimizer": "true",
"articleRetractionWatchEnabled": "true",
"articleExpressionOfConcernEnabled": "true",
"problematicJournalEnabled": "true",
"articlePDFDownloadViaUnpaywallEnabled": "true",
"articleLinkViaUnpaywallEnabled": "true",
"articleAcceptedManuscriptPDFViaUnpaywallEnabled": "true",
"articleAcceptedManuscriptArticleLinkViaUnpaywallEnabled": "true"
}
-
In Alma, navigate to the "Configuration" section
-
Then go to Discovery > Add-on Configuration
Configure the following:
- Add-on Name – The identifier used in Alma’s configuration (View ID set in step 1).
- Add-on URL – The location where the add-on is hosted (static folder to load the add-on at runtime). The current URL for the LibKey adaptor is
https://browzine-adapters.s3.amazonaws.com/primo-nde/production/
(keep the trailing '/') - Add-on Configuration File – JSON-based config parameters to be referenced at runtime by the add-on. Upload your modified JSON configuration file from Step 2.
- To add new icons, bring in the .svg file into
/src/assets/icons
. Edit the svg file to have acolor
prop that is dynamically set (see the other svg files for examples). - a new icon component needs to be created in
/src/app/components/icons
and imported insvg-icon.component.ts
. - A new case for the switch statement in the svg-icon component template file
svg-icon.component.html
also needs to be added. - Also, for icon positioning, make sure to add a class to the svg-icon component's style file (
svg-icon.component.scss
) specific to the new icon or extend existing style classes.
The following environment variables are used in CircleCI:
AWS Deployment
AWS_ACCESS_KEY
: value stored in keepassAWS_ACCESS_KEY_ID
: value stored in keepassAWS_BUCKET
: thirdiron-adaptersAWS_DEFAULT_REGION
: us-east-1AWS_SECRET_ACCESS_KEY
: value stored in keepass
Release Notes Generator
RENOGEN_GITHUB_OAUTH_TOKEN
: value stored in keepass
- Customize Primo NDE UI: Watch the ExLibris live demo on YouTube for a visual guide on how to customize the Primo NDE UI: Customize Primo NDE UI: Live Demo