v7.3.0

Private repository access

Bryntum components are commercial products, hosted in a private Bryntum repository. To get repository access, you need to complete these two steps:

You may access the repository with a single login, or if your team contains multiple developers, you may follow the instructions in the multi-user access section.

Important: Repository scope configuration

When you configure npm for the @bryntum scope to use the private repository, all@bryntum packages in your project will be loaded from that repository. You cannot mix packages from public and private repositories in the same project.

Both repositories contain identical packages (trial packages and framework wrappers), so you can use them from either source. However, licensed packages (without the -trial suffix) are only available from the private repository.

If you previously used trial packages from the public npm registry and are switching to the private repository, you need to run a project cleanup. See the Troubleshooting guide for cleanup instructions.

Repositories

Bryntum has two repositories located in Europe and US:

Europe locationUS location
https://npm.bryntum.com
https://npm-us.bryntum.com
Please change repository URL for the commands in this guide accordingly.

Configure npm

Configure npm to download packages for the @bryntum scope from the Bryntum registry with this command which will store the npm configuration in your local machine:

Europe locationUS location
npm config set "@bryntum:registry=https://npm.bryntum.com"
npm config set "@bryntum:registry=https://npm-us.bryntum.com"
Do not forget to put the config value in quotes as shown above (required for Windows PowerShell).

Check that npm uses correct Bryntum repository setting with:

npm config list

Command console output should contain this setting:

Europe locationUS location
@bryntum:registry = "https://npm.bryntum.com"
@bryntum:registry = "https://npm-us.bryntum.com"

Check npm-config online documentation.

Login

Login to the registry using this command, which will create and store login credentials on your local machine:

Europe locationUS location
npm login --registry=https://npm.bryntum.com
npm login --registry=https://npm-us.bryntum.com

Login example:

Do not use user..yourdomain.com and user@yourdomain.com from the example below to login! Use your own email address.
Trial versionLicensed version
Use your email as the login but replace the @ with .. (double dot) and use trial as password. For example, if your email is user@yourdomain.com, use the following:
Europe location:
$ npm login --registry=https://npm.bryntum.com
npm notice Log in on https://npm.bryntum.com/
Username: user..yourdomain.com
Password: trial
US location:
$ npm login --registry=https://npm-us.bryntum.com
npm notice Log in on https://npm-us.bryntum.com/
Username: user..yourdomain.com
Password: trial
Use your Bryntum Customer Zone email as login but replace @ with .. (double dot). Use your Bryntum Customer Zone password. For example, if your username in Customer Zone is user@yourdomain.com, use the following:
Europe location:
$ npm login --registry=https://npm.bryntum.com
npm notice Log in on https://npm.bryntum.com/
Username: user..yourdomain.com
Password: your-customer-zone-password
US location:
$ npm login --registry=https://npm-us.bryntum.com
npm notice Log in on https://npm-us.bryntum.com/
Username: user..yourdomain.com
Password: your-customer-zone-password
If you purchased a product and registered a new email at Bryntum Customer Zone, then you should re-login with new email to gain full registry access.
Access to the licensed packages requires an active support subscription. After your subscription expires, you will only have access to packages which were published before subscription expiry date.
If you see a rotating spinner after the password prompt in the console (introduced in npm10.7), enter your password and press [Enter]. The spinner is not indicating any progress, it's a part of the prompt display waiting for your input.

Multi-user access

The Bryntum npm repository requires authentication to install packages. For teams working on projects with Bryntum Suite packages, there are two recommended approaches to manage repository access:

  1. Individual Developer Access: Each team member can set up their own login through the Bryntum Customer Zone. Navigate to Licenses - Seats - Manage to add/remove team members and manage user licenses. However, using individual developer credentials for repository access is not recommended for shared projects or development teams since package-lock.json will contain user-specific authentication hashes. Instead, use shared access tokens as described in option 2 below.

  2. Shared Token Access: For CI/CD pipelines or development teams, use access tokens for authentication. These secure tokens can be:

  • Stored in individual .npmrc files in each developer's home directory. This allows access to be shared with a limited number of developers
  • Added to a shared .npmrc file in the project directory and committed to version control. This enables access for everyone working on the project
  • Used in CI/CD pipeline configurations. The pipeline can copy the token file into the project folder before running npm install, limiting token exposure to the CI/CD process without sharing it with the entire development team

Tokens provide several benefits:

  • No expiration date
  • Can be created or deleted as needed
  • More secure than sharing login credentials
  • Ideal for automated build processes
  • One developer seat/license in the Bryntum Customer Zone allows the creation of an unlimited number of tokens for accessing the repository

For detailed instructions on using tokens in CI/CD pipelines, please see Access tokens for CI/CD and Artifactory integration guides.

Access tokens

Access tokens may be used instead of password authentication for CI/CD environment or multi-user repository access for secure authorization to the Bryntum repository.

You can create a token and save it as a .npmrc file in your project directory to be able to install Bryntum packages with npm or yarn. Please follow the instructions below.

See also npm token documentation.

Creating an access token

To create a new token using the command line, run:

Europe locationUS location
$ npm token create --registry=https://npm.bryntum.com
npm password: Enter your password here
$ npm token create --registry=https://npm-us.bryntum.com
npm password: Enter your password here

Copy the token from the console, which is displayed after this command:

+----------+-------------------------+
| token    | eyJhb...                |
+----------+-------------------------+
| user     | user..example.com       |
+----------+-------------------------+
| cidr     |                         |
+----------+-------------------------+
| readonly | false                   |
+----------+-------------------------+
| created  | 2021-07-20T01:02:03.00Z |
+----------+-------------------------+

Viewing access tokens

To view all available tokens using the command line, run:

Europe locationUS location
npm token list --registry=https://npm.bryntum.com
npm token list --registry=https://npm-us.bryntum.com

All available tokens will be displayed in the console:

+--------+---------+------------+----------+----------------+
| id     | token   | created    | readonly | CIDR whitelist |
+--------+---------+------------+----------+----------------+
| b54f12 | eyJhb.. | 2021-07-20 | no       |                |
+--------+---------+------------+----------+----------------+

Removing an access token

To remove a created token using the command line, run:

Replace tokenId with id from the tokens table displayed after npm token list command
Europe locationUS location
npm token delete tokenId --registry=https://npm.bryntum.com
npm token delete tokenId --registry=https://npm-us.bryntum.com

.npmrc locations

The npm package manager uses a configuration file named .npmrc that stores information of repositories, authTokens and other configuration options. npm uses this file from the following locations in this order:

  • per-project config file (/path/to/my/project/.npmrc)
  • per-user config file (~/.npmrc)
  • global config file ($PREFIX/etc/npmrc)
  • npm builtin config file (/path/to/npm/npmrc)

See also npmrc documentation.

Listing the npm configuration

Use npm config ls to see the following information:

Europe locationUS location
; "user" config from /Users/user/.npmrc
@bryntum:registry = "https://npm.bryntum.com"
//npm.bryntum.com/:_authToken = (protected)
; node bin location = /Users/user/.nvm/versions/node/v12.22.1/bin/node
; cwd = /Users/Shared/data/devel/bryntum-suite
; HOME = /Users/user
; Run <code>npm config ls -l</code> to show all defaults.
; "user" config from /Users/user/.npmrc
@bryntum:registry = "https://npm-us.bryntum.com"
//npm-us.bryntum.com/:_authToken = (protected)
; node bin location = /Users/user/.nvm/versions/node/v12.22.1/bin/node
; cwd = /Users/Shared/data/devel/bryntum-suite
; HOME = /Users/user
; Run <code>npm config ls -l</code> to show all defaults.

The first line shows that the .npmrc from the user's home directory will be used and we can also see that we have configured the registry for @bryntum namespace and that we have logged-in because we have an authToken.

If we had .npmrc in the project directory, /Users/Shared/data/devel/bryntum-suite in this case, then the output would look like:

Europe locationUS location
; "user" config from /Users/user/.npmrc
@bryntum:registry = "https://npm.bryntum.com"
//npm.bryntum.com/:_authToken = (protected)
; "project" config from /Users/Shared/data/devel/bryntum-suite/.npmrc
legacy-peer-deps = true
; node bin location = /Users/user/.nvm/versions/node/v12.22.1/bin/node
; cwd = /Users/Shared/data/devel/bryntum-suite
; HOME = /Users/user
; Run <code>npm config ls -l</code> to show all defaults.
; "user" config from /Users/user/.npmrc
@bryntum:registry = "https://npm-us.bryntum.com"
//npm-us.bryntum.com/:_authToken = (protected)
; "project" config from /Users/Shared/data/devel/bryntum-suite/.npmrc
legacy-peer-deps = true
; node bin location = /Users/user/.nvm/versions/node/v12.22.1/bin/node
; cwd = /Users/Shared/data/devel/bryntum-suite
; HOME = /Users/user
; Run <code>npm config ls -l</code> to show all defaults.

Both user and project configs are used at this time, legacy-peer-deps configured in the project directory and repository and authToken used from the user home directory.

Contents