Skip to content

Commit 772f380

Browse files
Merge pull request #272 from sei-protocol/alexander-patch
Improve differences with Ethereum Page
2 parents 60057e0 + 092c964 commit 772f380

File tree

2 files changed

+29
-19
lines changed

2 files changed

+29
-19
lines changed

content/evm/building-a-frontend.mdx

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ Ethers.js is ideal for developers who want a comprehensive, battle-tested librar
2525
- Works well with both TypeScript and JavaScript
2626
- All-in-one solution for wallet connection and contract interaction
2727
- **Cons**:
28-
2928
- Larger bundle size compared to Viem
3029
- Not specifically designed for React hooks integration
3130

@@ -39,7 +38,6 @@ Viem is perfect for developers who want fine-grained control over their blockcha
3938
- Lower-level API gives more control
4039
- Smaller bundle size
4140
- **Cons**:
42-
4341
- Steeper learning curve
4442
- Requires more boilerplate code for some operations
4543
- Requires separate handling for wallet connection and contract interactions
@@ -79,7 +77,7 @@ This command creates a new folder with a React project using TypeScript. Open `s
7977

8078
## Project Structure
8179

82-
For clarity, we'll create separate components for each library implementation. Let's set up the project structure:
80+
For clarity, we'll create separate components for each library implementation. First, let's set up the project structure:
8381

8482
```bash copy
8583
cd sei-token-interface
@@ -808,7 +806,7 @@ npm run dev
808806

809807
This will start a local development server, at `http://localhost:5173`. You can toggle between the different library implementations to see how each one works.
810808

811-
To build your application, build first:
809+
To build your application, run:
812810

813811
```bash copy
814812
npm run build

content/evm/differences-with-ethereum.mdx

Lines changed: 27 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,33 @@
1+
import { Callout } from 'nextra/components';
2+
13
# Divergence from Ethereum
24

35
While Sei features full EVM compatibility, there are some distinctions between
4-
Sei's EVM and Ethereum itself.
5-
6-
## EVM Differences
7-
8-
Unlike Ethereum mainnet which is on Cancun for its execution layer, Sei uses the
9-
Shanghai version of EVM. This means that features like blob transactions are not
10-
supported on Sei.
6+
Sei's EVM and Ethereum itself:
7+
8+
| | Sei | Ethereum Mainnet |
9+
| --------------------- | ------------------------------------------------------------------------------------- | -------------------------------------------------------------------- |
10+
| Gas per Second | ~ 25 MegaGas/s | ~ 3 MegaGas/s |
11+
| TPS | ~ 12,500 | ~ 11 |
12+
| Block time | 400 ms | 12 s |
13+
| Finality | Instant | Various commitment levels (i.e., safe, latest, justified, finalized) |
14+
| EVM Version | Shanghai | Cancun |
15+
| Gas Limit | 10 M | 36 M |
16+
| Byte Size Limit | 21 MB | No byte-denominated limits |
17+
| Execution environment | EVM and CosmWasm | EVM |
18+
| Address space | Dual ECDSA-derived addresses; sei-native Bech32 (sei…) + EVM-compatible address (0x…) | ECDSA-derived address (0x…) |
19+
20+
- Sei uses the [Shanghai](https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/shanghai.md) version of EVM. This means features rolled out on Ethereum mainnet via the [Cancun](https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/cancun.md) upgrade (i.e., EIP-4844 or blob transactions) are not supported on Sei
21+
- Sei’s gas limit is 10M as opposed to Ethereum’s 30M. Sei also has a byte size limit of 21MB.
22+
- Sei has instant finality. This means the various commitment levels typical for Ethereum (i.e., safe, latest, justified) do not apply on Sei.
23+
24+
- **Sei is a dual-execution environment (EVM and CosmWasm).** This means:
25+
- Non-EVM transactions can update EVM-accessible state.
26+
- For example, an account’s SEI balance can be affected by both Cosmos (bank send, wasm execute) transactions as well as EVM send transactions
27+
- Sei assets can not only exist as EVM (i.e., ERC20/721/1155), but also as CW (i.e., CW20, CW721) or as native (Sei, IBC, Tokenfactory).
28+
- User accounts on Sei have [two addresses](https://www.docs.sei.io/learn/account-structure) derived from the same public key (sei-native Bech32 and EVM-compatible 0x…)
29+
30+
<Callout type="info">💡 Interoperability between EVM and CosmWasm is governed and navigated via [precompiles](./precompiles/example-usage) and [pointer contracts](./pointers/standard)</Callout>
1131

1232
## Opcode Differences
1333

@@ -58,14 +78,6 @@ subspace: evm
5878
value: '"0.007500000000000000"'
5979
```
6080

61-
## Block Limit
62-
63-
Sei has a gas limit of 10M on `pacific-1`, compared to
64-
Ethereum’s 30M.
65-
66-
In addition, Sei also has a byte size limit of 21MB, whereas Ethereum doesn’t
67-
have byte-denominated limits.
68-
6981
## Non-EVM Transactions
7082

7183
On Sei there exists non-EVM transactions which may update states accessible by

0 commit comments

Comments
 (0)