Build guide

Building on KXCO Armature

Connect, read, and deploy on Armature, the post-quantum, EVM-compatible, permissioned L1 built for regulated finance. Reading the chain through the explorer and its API is open to everyone; writing and deploying use a funded account on the permissioned network. Your existing EVM tools work unchanged.

What you’ll need

  • An EVM toolchain. Node.js 18+ with viem or ethers for scripting, and Hardhat or Foundry to compile and deploy contracts. Armature is fully EVM-compatible, your existing tools work unchanged.
  • A credential, to read through the RPC. The explorer and its API at chain.kxco.ai/api are open. The RPC at chain.kxco.ai/rpc takes a credential, request one from KXCO.
  • A funded account, to write. Armature is a permissioned QBFT chain. Sending transactions or deploying contracts needs a funded account, request one from KXCO. There is no public faucet on mainnet.
  • The post-quantum SDK (optional). For post-quantum-verifiable actions, install kxco-post-quantum to sign with ML-DSA-87 or ML-DSA-65 (NIST FIPS-204) alongside your EVM wallet.

Step-by-step

  1. 1

    Know the network

    Armature is EVM-compatible with QBFT proof-of-authority consensus, ~2s deterministic finality, and negligible gas. The native token is ARMR.

    Network     KXCO Armature
    Chain ID    1111111  (0x10F447)
    Currency    ARMR
    RPC (HTTP)  https://chain.kxco.ai/rpc
    REST API    https://chain.kxco.ai/api
    Explorer    https://chain.kxco.ai
  2. 2

    Verify you can reach it

    A single JSON-RPC call confirms connectivity and the chain ID before you write any code.

    curl -s -X POST https://chain.kxco.ai/rpc \
      -H "Content-Type: application/json" \
      -d '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}'
    # → {"jsonrpc":"2.0","id":1,"result":"0x10f447"}   (0x10f447 = 1111111)
  3. 3

    Connect with viem (or ethers)

    Define the chain once and point any EVM library at the RPC with your credential. Reads work immediately.

    import { createPublicClient, http, defineChain } from 'viem'
    
    export const armature = defineChain({
      id: 1111111,
      name: 'KXCO Armature',
      nativeCurrency: { name: 'ARMR', symbol: 'ARMR', decimals: 18 },
      rpcUrls: { default: { http: ['https://chain.kxco.ai/rpc'] } },
    })
    
    const client = createPublicClient({ chain: armature, transport: http() })
    console.log(await client.getBlockNumber())
  4. 4

    Get a funded account

    Reads through the explorer and its API are open to everyone; the RPC takes a credential, and writes require a funded account on the permissioned chain. Contact KXCO to be provisioned, the licensed operator running the platform handles any KYC/eligibility at the application layer, not at the chain layer.

  5. 5

    Deploy a contract with Hardhat or Foundry

    Add Armature as a network and deploy as you would on any EVM chain. Gas is negligible but not zero, the EIP-1559 base fee is a few wei, so query eth_gasPrice rather than sending gasPrice:0.

    // hardhat.config.js
    module.exports = {
      solidity: '0.8.24',
      networks: {
        armature: {
          url: 'https://chain.kxco.ai/rpc',
          chainId: 1111111,
          accounts: [process.env.PRIVATE_KEY],
        },
      },
    }
    
    // foundry: forge create --rpc-url https://chain.kxco.ai/rpc \
    //   --private-key $PRIVATE_KEY src/HelloWorld.sol:HelloWorld
  6. 6

    Add post-quantum signing (optional)

    EVM transactions are signed with secp256k1. To make an action post-quantum-verifiable, sign an ML-DSA-87 or ML-DSA-65 intent off-chain with kxco-post-quantum; the KXCO relay submits it and every validator verifies the post-quantum signature on chain, in consensus, before the result is recorded. See the Quantum section for the full cryptographic coverage.

    npm install kxco-post-quantum   # ML-DSA-87 / ML-DSA-65 / SLH-DSA / ML-KEM-1024 / ML-KEM-768

What you get on Armature

A standard EVM developer experience on a permissioned, post-quantum-secured settlement layer.

EVM-compatible
Hardhat, Foundry, viem, ethers and OpenZeppelin all work unchanged. No new language, no new toolchain.
Deterministic finality, ~2s
QBFT proof-of-authority, blocks are final on inclusion. No reorgs, no probabilistic confirmation to wait out.
Negligible gas
Base fee is a few wei. Query eth_gasPrice; a gasPrice:0 transaction is rejected by the EIP-1559 base fee.
Permissioned by design
Reads are open; writes need a funded account on a vetted, validator-gated network, built for regulated finance, not anonymous DeFi.
Post-quantum option
Layer ML-DSA-87 and ML-DSA-65 (FIPS-204) signing over standard EVM transactions via the kxco-post-quantum SDK.
Real explorer + REST API
Blocks, transactions, addresses and validators are all queryable over a lightweight JSON REST API.

Frequently asked

Can anyone deploy a contract on Armature?
Anyone can read the chain freely. Writing transactions or deploying contracts requires a funded account on the permissioned chain, contact KXCO to be provisioned. There is no public mainnet faucet.
What does gas cost?
Gas is negligible, the EIP-1559 base fee is only a few wei, paid in ARMR. Always query eth_gasPrice rather than submitting a zero-gas-price transaction, which the base fee rejects.
Which tools and libraries are supported?
All standard EVM tooling: Hardhat, Foundry, viem, ethers.js, web3.js and OpenZeppelin. Armature is EVM-compatible, so nothing special is required.
How is this post-quantum?
Identities and authorizations can be signed with ML-DSA-87 or ML-DSA-65 (NIST FIPS-204) using the kxco-post-quantum SDK, verified on chain, in consensus, when written through the KXCO relay. See the Quantum section for the complete cryptographic posture.

Go deeper

Ready to build?

Read the full developer reference, or contact KXCO to be provisioned with a funded account on the permissioned chain.