External Libraries

JetClient allows you to use npm packages and custom JavaScript modules in your scripts by configuring the Libraries Path in your JetClient project (root folder) settings.

Setting Up Libraries Path

Configure the Libraries Path in JetClient project. The Libraries Path can contain:

  • package.json and npm packages installed in node_modules
  • Custom JavaScript modules

The Libraries Path can be placed in any directory, but you might want to place it in the sync directory to share with your team. For example:

.jetclient/libraries/
├── package.json
├── node_modules/
└── utils.js

Using npm Packages

1. Create package.json

{
  "dependencies": {
    "@faker-js/faker": "8.4.1",
    "dayjs": "1.11.10"
  }
}

2. Install Dependencies

Run in your Libraries Path directory:

npm install

3. Import and Use in Scripts

// Using Faker.js
const { faker } = require('@faker-js/faker/dist/cjs/locale/en')
console.log(faker.internet.userName())

// Using Day.js
const dayjs = require('dayjs')
console.log(dayjs().format('YYYY-MM-DD'))

Custom Modules

Creating a Module

Create JavaScript files in your Libraries Path:

// utils.js
function capitalizeFirstLetter(string) {
    if (typeof string !== 'string') return ''
    return string.charAt(0).toUpperCase() + string.slice(1)
}

function generateId() {
    return Math.random().toString(36).substring(7)
}

module.exports = {
    capitalizeFirstLetter,
    generateId
}

Using Custom Modules

Import and use your modules in scripts:

// Import entire module
const utils = require('./utils.js')
console.log(utils.capitalizeFirstLetter('hello'))
console.log(utils.generateId())

// Import specific functions
const { capitalizeFirstLetter } = require('./utils.js')
console.log(capitalizeFirstLetter('world'))