LogoLogo
  • Introduction
    • What is Arichain
    • Why Arichain
    • Vision: Redefining Layer 1, Empowering Every Builder.
    • TL;DR Summary for Builders
    • Details to read
  • Architectural Philosophy
    • Monolithic vs Modular: Why Multi-VM
    • Native Composability over Interoperability
    • Unified Chain State and Execution Environment
    • Chain Structure: Multi-VM under One Consensus
    • Identity & User Abstraction
  • General Architecture Overview
    • Multi-VM Execution Environment
    • Consensus Mechanism
    • Token Design
    • Unified Gas System
    • GAID: Global Account Identity
    • Future Roadmap
  • Technical Overview
    • Consensus Protocol Details
    • Token Design and Interoperability
    • Gas System Architecture
    • GAID Architecture
    • State Management
    • Bridge Infrastructure
  • Developer Experience
    • SDK
    • Developer tools
  • Validator
    • Validator Roles & Node Types
    • Reward System
    • Staking
    • Use Cases
    • Node Operations
  • Security
    • Design Goals
    • Threat Model and Risk Assessment
    • Continuous Security Verification
  • Token Economics & Validator Incentives
    • Token Utility
    • Validator Incentives
    • Token Supply and Distribution
    • Onboarding Workflow
  • Roadmap
Powered by GitBook
On this page
  1. Developer Experience

Developer tools

Details are provisional and may be updated during development.

Arichain CLI (ari-tools)

The Arichain CLI provides essential tools for Multi-VM development, deployment, and management.

Installation:

npm install -g @arichain/cli
# or
curl -sSL https://install.arichain.io/cli | sh

Project Initialization:

# Create new Multi-VM project
ari-tools init my-dapp --template multivm

# Initialize EVM-only project
ari-tools init my-evm-dapp --template evm --framework hardhat

# Initialize SVM-only project
ari-tools init my-svm-dapp --template svm --framework anchor

Contract Deployment:

# Deploy to specific VM
ari-tools deploy --vm evm --contract MyContract.sol --network testnet
ari-tools deploy --vm svm --program my_program.so --network testnet

# Deploy to multiple VMs
ari-tools deploy --multi-vm --config deploy.json --network testnet

Network Management:

# Add custom network
ari-tools network add \
  --name my-testnet \
  --evm-rpc https://evm-rpc.my-testnet.arichain.io \
  --svm-rpc https://svm-rpc.my-testnet.arichain.io \
  --chain-id 1337

# Switch networks
ari-tools network use my-testnet

# Check network status
ari-tools network status

Development Utilities:

# Generate GAID for testing
ari-tools gaid generate --vm evm

Configuration Management:

# Set default configuration
ari-tools config set default-gas-token ARI
ari-tools config set preferred-vm evm

# View current configuration
ari-tools config list

# Export/import configuration
ari-tools config export --file config.json
ari-tools config import --file config.json

Development Workflow Integration

Continuous Integration Support:

# .github/workflows/arichain-deploy.yml
name: Deploy to Arichain
on:
  push:
    branches: [main]

jobs:
  deploy:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      
      - name: Setup Arichain CLI
        run: npm install -g @arichain/cli
        
      - name: Deploy to testnet
        run: |
          ari-tools deploy --multi-vm --network testnet
        env:
          ARI_PRIVATE_KEY: ${{ secrets.ARI_PRIVATE_KEY }}
PreviousSDKNextValidator

Last updated 24 days ago