ppio-sandbox
v1.1.3
Published
PPIO Sandbox SDK for JavaScript/TypeScript - A comprehensive SDK for code execution, desktop automation, and cloud computing environments
Maintainers
Readme
PPIO Sandbox SDK
TypeScript/JavaScript SDK for PPIO Sandbox environments, providing code execution, desktop automation, and cloud computing capabilities, which is compatible with e2b.
Please read the documentation for more information.
Installation
npm install ppio-sandboxFeatures
- 🚀 Code Interpreter: Execute Python, JavaScript, and other languages in isolated environments
- 🖥️ Desktop Automation: Control desktop applications and GUI interactions
- ☁️ Cloud Computing: Scalable sandbox environments for various computing tasks
- 📊 Data Visualization: Built-in charting and visualization capabilities
- 🔧 File System Operations: Complete file system management and monitoring
Quick Start
Authentication
You can get the PPIO API key by refer to this documentation.
Core
The basic package provides a way to interact with the sandbox environment.
import { Sandbox } from 'ppio-sandbox';
// Using the official template `base` by default.
const sandbox = await Sandbox.create(
"base",
{
apiKey: process.env.PPIO_API_KEY || '',
},
);
// File operations
await sandbox.files.write('/tmp/test.txt', 'Hello, World!');
const content = await sandbox.files.read('/tmp/test.txt');
// Command execution
const result = await sandbox.commands.run('ls -la /tmp');
console.log(result.stdout);
// Real-time monitoring
sandbox.files.watchDir('/tmp', (event) => {
console.log(`File ${event.name} was ${event.type}`);
});Code Interpreter
The Code Interpreter sandbox provides a Jupyter-like environment for executing code using the official code-interpreter-v1 template.
import { Sandbox } from 'ppio-sandbox/code-interpreter';
const sandbox = await Sandbox.create({
apiKey: process.env.PPIO_API_KEY || '',
});
// Execute Python code
const result = await sandbox.runCode('print("Hello, World!")');
console.log(result.logs);
Desktop
The Desktop sandbox allows you to control desktop environments programmatically using the official desktop template.
import { Sandbox } from 'ppio-sandbox/desktop';
const desktop = await Sandbox.create({
apiKey: process.env.PPIO_API_KEY || ''
});
// Take a screenshot
const screenshot = await desktop.screenshot();
// Automate mouse and keyboard
await desktop.leftClick(100, 200);
await desktop.press('Enter');
await desktop.write('Hello, World!');