Release v0.3.0
π Zigeth v0.3.0
A complete Ethereum library for Zig!
π What's Changed
- chore: bump version to v0.3.0 (e82dbd5)
- feat: Added proper error handling and updated readme to provide better documentation (1875ada)
- fix: Updated auto release (442f45d)
- feat: Added new account absctraction example (c9ab465)
- feat: Added full account abstraction functionality and an example program (00066ec)
- feat: Added functionality of functions of gas.zig (4798e79)
- feat: Added implementation for functions in entrypoint.zig (058a0bf)
- feat: Added implementation for functions in bundler.zig (8efa3db)
- feat: Added example code (352043c)
- feat: Added stub implementations for account_abstraction package (e6fb366)
- chore: bump version to v0.2.1 [skip ci] (3e9f14c)
π Library Status
- β 334 tests passing
- β 100% feature complete
- β 13/13 modules production-ready
- β ERC-4337 Account Abstraction support
- β Integrated with Etherspot v2 API
Modules
| Module | Status | Tests | Description |
|---|---|---|---|
| π― Primitives | β | 48 | Address, Hash, Bytes, Signature, U256, Bloom |
| π¦ Types | β | 23 | Transaction, Block, Receipt, Log |
| π Crypto | β | 27 | Keccak-256, secp256k1, ECDSA |
| π‘ ABI | β | 23 | Encoding, Decoding, EIP-712 |
| π Contract | β | 19 | Calls, Deploy, Events |
| π RLP | β | 36 | Encoding, Decoding |
| π RPC | β | 27 | Full JSON-RPC client |
| π Providers | β | 26 | HTTP, WebSocket, IPC, Mock |
| π§° Utils | β | 35 | Hex, Format, Units, Checksum |
| β‘ Solidity | β | 15 | Type mappings, Interfaces |
| βοΈ Middleware | β | 23 | Gas, Nonce, Signing |
| π Wallets | β | 35 | Software, HD, Keystore, Ledger |
| π― Account Abstraction | β | - | ERC-4337 v0.6/v0.7/v0.8, Bundler, Paymaster |
π Quick Start
const zigeth = @import("zigeth");
// Create a wallet
var wallet = try zigeth.signer.Wallet.generate(allocator);
// Connect to Ethereum
var provider = try zigeth.providers.Networks.mainnet(allocator);
defer provider.deinit();
// Get balance
const balance = try provider.getBalance(address);π₯ Installation
Add to your build.zig.zon:
.dependencies = .{
.zigeth = .{
.url = "https://github.com/ch4r10t33r/zigeth/archive/v0.3.0.tar.gz",
.hash = "...", // zig will provide this
},
},π Documentation
Full documentation: https://github.com/ch4r10t33r/zigeth#readme
π Supported Networks
- Ethereum (Mainnet, Sepolia)
- Polygon
- Arbitrum
- Optimism
- Base
- Custom RPCs
All using Etherspot v2 API endpoints!