Skip to Content

Architecture

A visual guide to how the @cfxdevkit SDK is structured, how packages depend on each other, and how the full stack deploys.


Package layers

Packages are strictly layered — imports only flow downward, never sideways or upward.


Conflux dual-space model

Every Conflux chain runs two parallel execution environments on the same underlying chain.

Never construct raw viem/cive clients directly. Always use ClientManager from @cfxdevkit/core.


SDK data flow

How a typical on-chain interaction flows through the SDK layers.


CAS deployment architecture

Conflux Automation Studio — how the frontend, backend, and infrastructure relate.


Monorepo layout

packages/ @cfxdevkit/* published SDK packages apps/ Deployable full-stack apps (backend → VPS, frontend → Vercel) cas/ backend/ Fastify API → Hetzner VPS via Docker frontend/ Next.js UI → Vercel devtools/ Local-only dev tooling (Hardhat, CLI, dashboard) docs-site/ This site → cfxdevkit.org (Vercel) infra/ ansible/ VPS provisioning (5 roles: base · docker · caddy · backups · monitoring) docker/ conflux-devkit local dev stack (never deployed to VPS) scripts/ release.mjs, setup-npm-trust.mjs

Ansible provisioning roles


Security-sensitive areas

ComponentLocationKey concern
EncryptionServicepackages/services/src/services/encryption.tsAES-256-GCM, PBKDF2 (100k iter)
KeystoreServicepackages/services/src/services/keystore.tsEncrypted mnemonics, in-memory password only
SafetyGuardpackages/executor/src/safety-guard.tsCircuit-breaker, max $10k/swap
SessionKeyManagerpackages/core/src/wallet/session-keys/Scoped permissions + expiry
PermitHandlerdevtools/contracts/contracts/PermitHandler.solERC-2612 permit processing
Last updated on