@toolforge-js/sdk
v0.8.8
Published
Backend code to complete tools, instantly.
Readme
Tool Forge SDK
Backend code to complete tools, instantly.
Tool Forge SDK provides the necessary backend functionalities to build and run tools seamlessly. It abstracts away the complexities of backend development, allowing developers to focus on writing code while Tool Forge SDK handles the rest.
Installation
Prerequisites
- tool-forge sdk uses bun runtime, so you need to install
bun
Installation Steps
You can install the tool-forge sdk package using bun by running the following command in your terminal:
bun add @toolforge-js/sdkThis command will add the tool-forge sdk package to your project's dependencies, allowing you to utilize its features in your backend development.
Getting Authentication Credentials
To use tool-forge sdk, you need to obtain authentication credentials. Follow these steps:
- Sign up or log in to your Tool Forge account.
- Create a new workspace or select an existing one.
- Create a new environment within the workspace or select an existing one.
- Generate a new API key for that environment.
- Store these credentials securely, as you will need them to authenticate your requests when using the SDK.
Usage
Setting Up the SDK
After installing the tool-forge sdk, you have configure the SDK using toolforge.config.ts
// toolforge.config.ts
import 'dotenv/config'
import { defineToolForgeConfig } from '@toolforge-js/sdk'
import { defineConfig } from '@toolforge-js/sdk/config'
export default defineConfig({
// store the API key in environment variable TOOL_FORGE_API_KEY
apiKey: process.env.TOOL_FORGE_API_KEY,
})Writing a Tool
After installing the tool-forge sdk package, you can start using it in your backend code. Here's a simple example to get you started:
// tools/my-first-tool.ts
import { defineTool } from '@toolforge-js/sdk'
export default defineTool({
name: 'My First Tool',
description: 'A simple tool using Tool Forge SDK',
async run({ io }) {
const name = await io.textInput({ label: 'Enter your name' })
return `Hello, ${name}!`
},
})