Coinbosa
Écosystème Chaîne & BOSA Développeurs À propos Rejoindre l'écosystème

Construire sur Coinbosa Chain

La chaîne est compatible EVM : Hardhat, Foundry, ethers.js et viem fonctionnent sans adaptation. Il suffit de pointer vers le bon RPC.

Connexion

Ajouter le réseau par le code.

Un site peut proposer l'ajout du réseau en une invite, sans que l'utilisateur recopie quoi que ce soit à la main.

wallet_addEthereumChain
await window.ethereum.request({
  method: 'wallet_addEthereumChain',
  params: [{
    chainId: '0x6696',
    chainName: 'Coinbosa Chain',
    nativeCurrency: { name: 'Coinbosa', symbol: 'BOSA', decimals: 18 },
    rpcUrls: ['https://explorer.coinbosa.com/rpc'],
    blockExplorerUrls: ['https://explorer.coinbosa.com']
  }]
});
hardhat.config.js
module.exports = {
  solidity: '0.8.24',
  networks: {
    coinbosa: {
      url: 'https://explorer.coinbosa.com/rpc',
      chainId: 26262,
      accounts: [process.env.CLE_PRIVEE]   // jamais en clair dans le dépôt
    }
  }
};
foundry.toml
[rpc_endpoints]
coinbosa = "https://explorer.coinbosa.com/rpc"

# forge script script/Deploy.s.sol --rpc-url coinbosa --broadcast
Surface exposée

Ce que le RPC public accepte.

Le nœud public est volontairement restreint. Les familles de méthodes qui permettent d'administrer un nœud ou d'en extraire des clés ne sont pas exposées.

Familles ouverteseth, net
Familles ferméesadmin, personal, debug, txpool, miner
Requêtes groupées50 au maximum par appel
Plage de journauxbornée — une requête eth_getLogs sans borne est refusée
Limite de gaz par bloc55 000 000 (bloc 0 : 40 000 000)
TransportHTTPS uniquement
Jetons

Le standard BRC20.

BRC20 est l'interface de jeton de Coinbosa Chain. Elle est compatible ERC-20 : un contrat, un portefeuille ou un explorateur qui sait lire un ERC-20 sait lire un BRC20.

Interface minimale
interface IBRC20 {
    function name()        external view returns (string memory);
    function symbol()      external view returns (string memory);
    function decimals()    external view returns (uint8);
    function totalSupply() external view returns (uint256);

    function balanceOf(address compte) external view returns (uint256);
    function allowance(address proprietaire, address delegue) external view returns (uint256);

    function transfer(address vers, uint256 montant) external returns (bool);
    function approve(address delegue, uint256 montant) external returns (bool);
    function transferFrom(address de, address vers, uint256 montant) external returns (bool);

    event Transfer(address indexed de, address indexed vers, uint256 montant);
    event Approval(address indexed proprietaire, address indexed delegue, uint256 montant);
}

La transmission de propriété d'un contrat BRC20 se fait en deux temps (transferOwnership puis acceptOwnership par le destinataire). Un transfert en une seule étape vers une adresse mal saisie rend le contrat définitivement orphelin : ce détour évite une erreur irréversible.

Le code est ouvertClient, contrats système, genesis et scripts de déploiement sont publics et vérifiables.

Voir le dépôt