Skip to content
B3Pay
GitHubGet started
For developers

Typed canister calls, cached and invalidated for you.

IC Reactor sits above the raw Actor API. You keep type safety and control; you stop writing cache keys by hand.

Install

React apps
pnpm add @ic-reactor/react @icp-sdk/core @tanstack/react-query
Non-React
pnpm add @ic-reactor/core @icp-sdk/core @tanstack/query-core

Packages

@ic-reactor/core
ClientManager, Reactor, DisplayReactor
@ic-reactor/react
Hooks and query/mutation factories
@ic-reactor/candid
Dynamic Candid parsing
@ic-reactor/parser
WASM Candid parser
@ic-reactor/codegen
Shared codegen pipeline
@ic-reactor/cli
Declarations and typed hooks
@ic-reactor/vite-plugin
Watch-mode hook generation
src/App.tsx
function Greeting() {
const { data, isPending, error } = useActorQuery({
functionName: "greet",
args: ["World"],
})
if (isPending) return <div>Loading…</div>
if (error) return <div>Error: {error.message}</div>
return <h1>{data}</h1>
}

Do not call hooks outside React

Use getProfile.fetch() and updateProfile.execute() in loaders, services and tests.

Reactor vs Actor

Caching, background refetch, typed Ok/Err and shared auth — none of which the standard Actor gives you.

Agent skills

ic-reactor-hooks ships as an installable skill for AI coding agents.