Synthetix System Documentation

ยท

Synthetix is a leading crypto-backed synthetic asset platform that enables users to mint and trade synthetic assets (synths) representing real-world assets, cryptocurrencies, and indices. This documentation provides an in-depth exploration of Synthetix's architecture, smart contract system, and developer tools.

How Synthetix Works

Synthetix operates through a decentralized network of smart contracts on the Ethereum blockchain:

๐Ÿ‘‰ Discover how synthetic assets are revolutionizing DeFi

Core Technical Components

Smart Contract Architecture

  1. Proxy Contracts

    • Enables upgradeability without disrupting user experience
    • All upgrades emit on-chain events for transparency
    • Implemented via ReadProxyAddressResolver (introduced in SIP-57)
  2. Address Resolution
    The system uses IAddressResolver to dynamically locate contracts:

    // Fetch contract addresses
    IAddressResolver.getAddress(bytes32("Synthetix"));
    
    // Fetch synth addresses
    IAddressResolver.getSynth(bytes32("sUSD"));

Development Tools

The Synthetix npm package provides comprehensive utilities:

FunctionDescriptionExample Output
getAST()Returns abstract syntax tree of contracts{ contracts: ['AddressResolver.sol', ...] }
getSynths()Lists available synths['sUSD', 'sEUR', 'sBTC']
getTarget()Returns contract deployment details{ address: '0x123...', source: 'Proxy' }

Version Management

Synthetix follows semantic versioning:

// Get version history
const versions = snx.getVersions();
/* Output:
{
  'v2.21.12': {
    network: 'mainnet',
    contracts: {
      Synthetix: '0x123...'
    }
  }
}
*/

๐Ÿ‘‰ Explore advanced blockchain integration techniques

Frequently Asked Questions

How does Synthetix handle contract upgrades?

The proxy system allows for seamless upgrades. Users always interact with the proxy address while implementation contracts can be swapped behind the scenes.

What's the difference between sUSD and other stablecoins?

sUSD is collateralized by SNX tokens rather than fiat reserves, making it fully decentralized and transparent on-chain.

How can developers interact with Synthetix contracts?

The recommended approach is through the IAddressResolver interface which provides stable access points to all system components regardless of upgrades.

What networks does Synthetix support?

Currently:

Where can I find the latest SIPs?

All Synthetix Improvement Proposals are documented at sips.synthetix.io

Key Features

The Synthetix protocol continues to evolve through community governance, with regular upgrades adding new features and optimizations while maintaining robust security and decentralization principles.