Developer Documentation

Build dApps on Bittensor with Synaptao. Full API documentation, examples, and integration guides.

API Reference

Standard Web3 provider API with Bittensor extensions

Injected Provider API

Standard Web3 provider interface compatible with Ethereum tooling

// Connect to Synaptao
if (window.synaptao) {
  const provider = window.synaptao;
  const accounts = await provider.request({ 
    method: 'eth_requestAccounts' 
  });
}

Wallet Connection

Request wallet connection and handle user approval

// Request connection
try {
  const accounts = await window.synaptao.request({
    method: 'eth_requestAccounts'
  });
  console.log('Connected:', accounts[0]);
} catch (error) {
  console.error('Connection rejected');
}

Transaction Signing

Sign and send transactions on the Bittensor network

// Send transaction
const txHash = await window.synaptao.request({
  method: 'eth_sendTransaction',
  params: [{
    from: accounts[0],
    to: '0x...',
    value: '0x...',
    data: '0x...'
  }]
});

Network Management

Switch networks and manage Bittensor subnet connections

// Switch network
await window.synaptao.request({
  method: 'wallet_switchEthereumChain',
  params: [{ chainId: '0x...' }]
});

Integration Examples

Get started quickly with these code examples

React Integration

Connect Synaptao to your React dApp

import { useEffect, useState } from 'react';

function useSynaptao() {
  const [account, setAccount] = useState<string | null>(null);
  
  useEffect(() => {
    if (window.synaptao) {
      window.synaptao.request({ 
        method: 'eth_requestAccounts' 
      }).then((accounts: string[]) => {
        setAccount(accounts[0]);
      });
    }
  }, []);
  
  return { account };
}

Next.js Integration

Use Synaptao in your Next.js application

'use client';

import { useEffect, useState } from 'react';

export default function WalletButton() {
  const [connected, setConnected] = useState(false);
  
  const connect = async () => {
    if (window.synaptao) {
      await window.synaptao.request({
        method: 'eth_requestAccounts'
      });
      setConnected(true);
    }
  };
  
  return (
    <button onClick={connect}>
      {connected ? 'Connected' : 'Connect Wallet'}
    </button>
  );
}

Building on Bittensor

Learn how to build dApps on the Bittensor network

Understanding Bittensor Subnets

Learn about the subnet architecture and how to interact with different subnets

TAO Token Operations

Send, receive, and manage TAO tokens in your dApp

Neuron Management

Integrate neuron staking and delegation features

dApp Connection Flow

Implement secure wallet connection and transaction flows