> ## Documentation Index
> Fetch the complete documentation index at: https://docs.opengdp.network/llms.txt
> Use this file to discover all available pages before exploring further.

# EVM Compatibility

OpenGDP is a fully EVM-compatible Layer 1 blockchain. All protocol extensions are additive; no existing EVM opcodes or execution semantics are modified.

## Design Philosophy

Protocol features are delivered through two extension mechanisms:

* **Precompiles**: Fixed-address contracts that implement protocol logic (fee management, orderbook, token factory, etc.) at native speed.
* **Transaction type extensions**: New tx types (`0x76` for AA, `0x4a` for encrypted) that carry additional fields while remaining compatible with existing RPC infrastructure.

This means any Solidity/Vyper contract that compiles against a standard EVM target will deploy and execute on OpenGDP without modification.

## Tooling Compatibility

| Tool                               | Status     | Notes                                                                        |
| ---------------------------------- | ---------- | ---------------------------------------------------------------------------- |
| Foundry (`forge`, `cast`, `anvil`) | Supported  | Standard deployment and testing workflows.                                   |
| Hardhat / Ethers.js                | Supported  | Connect via JSON-RPC as with any EVM chain.                                  |
| Viem / Wagmi                       | Supported  | Custom transport for AA and encrypted tx types available in the OpenGDP SDK. |
| Block Explorers                    | Compatible | Standard receipt and log formats.                                            |

## Example: Deploying a Contract

Deploying is identical to any EVM chain:

```bash theme={null}
# Using Foundry
forge create src/MyContract.sol:MyContract \
  --rpc-url $OPENGDP_RPC \
  --private-key $DEPLOYER_KEY
```

The only difference from Ethereum Mainnet is that the deployer pays gas fees in a stablecoin rather than in a native token.
