Skip to content

Getting Started

Overview

@growae/reactive-cli is a CLI tool for generating type-safe code from Sophia contract source files. It reads your contracts and produces TypeScript ACI definitions, typed actions, and hooks that integrate with Reactive.

Quick Start

1. Install

bash
npm install -D @growae/reactive-cli
bash
yarn add -D @growae/reactive-cli
bash
pnpm add -D @growae/reactive-cli

2. Initialize Config

bash
npx reactive init

This creates a reactive.config.ts file:

typescript
import { defineConfig } from '@growae/reactive-cli'

export default defineConfig({
  out: 'src/generated.ts',
  contracts: [
    {
      name: 'Token',
      source: 'contracts/Token.aes',
    },
  ],
})

3. Generate Code

bash
npx reactive generate

This compiles your Sophia contracts and generates typed ACI, actions, and hooks.

4. Use Generated Code

typescript
import { tokenAci, tokenBytecode } from './generated'
import { readContract } from '@growae/reactive/actions'

const balance = await readContract(config, {
  address: 'ct_token...',
  aci: tokenAci,
  fn: 'balance',
  args: ['ak_owner...'],
})

Next Steps