-
Notifications
You must be signed in to change notification settings - Fork 4
Getting Started
b3hr4d edited this page Mar 11, 2026
·
1 revision
pnpm add @ic-reactor/react @icp-sdk/core @tanstack/react-querypnpm add @ic-reactor/core @icp-sdk/core @tanstack/query-corepnpm add @icp-sdk/auth
pnpm add @ic-reactor/candid @ic-reactor/parserIC Reactor needs generated declarations for full type safety. The recommended choices are:
-
@ic-reactor/vite-pluginfor Vite apps -
@ic-reactor/clifor explicit or non-Vite workflows - existing generators like
dfx generateor@icp-sdk/bindgenif your app already uses them
// src/reactor.ts
import { ClientManager, Reactor, createActorHooks } from "@ic-reactor/react"
import { QueryClient } from "@tanstack/react-query"
import { idlFactory, type _SERVICE } from "./declarations/backend"
export const queryClient = new QueryClient()
export const clientManager = new ClientManager({
queryClient,
})
export const backend = new Reactor<_SERVICE>({
clientManager,
idlFactory,
name: "backend",
canisterId: "rrkah-fqaaa-aaaaa-aaaaq-cai",
})
export const { useActorQuery, useActorMutation } = createActorHooks(backend)// src/App.tsx
function Greeting() {
const { data, isPending } = useActorQuery({
functionName: "greet",
args: ["World"],
})
if (isPending) return <div>Loading...</div>
return <div>{data}</div>
}