New:Microsoft Teams Notifications Are Now Available in Socket.Learn more →
Get Started

@chargebee/chargebee-apps-libs

Package Overview
Dependencies
Maintainers
4
Versions
10
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@chargebee/chargebee-apps-libs

Public library implementations for Chargebee Apps CLI

npmnpm
Version
1.0.2
Version published
Weekly downloads
183
632%
Maintainers
4
Weekly downloads
 
Created
Source

@chargebee/chargebee-apps-libs

Library implementations for the Chargebee Apps CLI — local development, sandbox execution, logging, configuration, and the web testing UI.

Installation

npm install @chargebee/chargebee-apps-libs

This package is typically installed as a dependency of @chargebee/chargebee-apps. You can also use it directly when building tools on top of the Chargebee Apps platform.

What's included

  • Configuration — application config loading with caching and validation
  • Logging — structured logging and a safe console for sandboxed user code
  • Sandbox — VM-based secure execution for event handlers
  • Utilities — port validation and related helpers
  • Templates — starter app scaffolds used by the CLI
  • Web UI — browser interface for local handler testing

Templates

serverless-node-starter-app

Basic Node.js serverless app with sample handlers, test data, and TypeScript definitions.

serverless-node-starter-app-with-iparams

Same as the starter app, plus sectioned installation parameters:

  • iparams.json — parameter definitions under installation_parameters.sections
  • iparams.local.json — local values keyed by section name
  • Handlers receive payload.iparams.<section>.<param>

See templates/serverless-node-starter-app-with-iparams/README.md for the full iparams schema and examples.

Usage

import {
	ConfigLoader,
	createCBPublicLogger,
	PublicSandboxWrapper,
} from '@chargebee/chargebee-apps-libs';
import {
	CBFileSystem,
	CBProcess,
	DependencyManager,
	ManifestValidator,
	PackageValidator,
} from '@chargebee/chargebee-apps-shared';

const configLoader = new ConfigLoader();
const allowedModules = configLoader.loadAllowedModules();

const fileSystem = new CBFileSystem();
const processService = new CBProcess();
const packageValidator = new PackageValidator(fileSystem);
const manifestValidator = new ManifestValidator(allowedModules);
const dependencyManager = new DependencyManager(fileSystem);

const manifest = manifestValidator.validateFile('./my-app/manifest.json');
await dependencyManager.ensureDependencies('./my-app', manifest);

const logger = createCBPublicLogger(fileSystem, processService, './my-app');

const sandbox = new PublicSandboxWrapper(
	allowedModules,
	fileSystem,
	packageValidator,
	dependencyManager,
	manifestValidator
);

const result = await sandbox.execute('./my-app', { event: eventData }, logger);

Security

  • Module whitelisting — only approved npm modules can be used
  • Sandboxed execution — user code runs in isolated VM contexts
  • Controlled logging — user code logging is managed and correlated

Dependencies

  • @chargebee/chargebee-apps-shared — shared interfaces, validators, and utilities
  • dotenv — environment variable loading for local development

License

MIT

FAQs

Package last updated on 30 Jul 2026

Related posts