# rust-ens [![](https://travis-ci.org/hhatto/rust-ens.svg?branch=master)](https://travis-ci.org/hhatto/rust-ens) Rust ENS interface, based on [rust-web3](https://github.com/tomusdrw/rust-web3). ## Usage Cargo.toml ```toml [dependencies] ens = "0.1" ``` ```rust extern crate ens; extern crate web3; use ens::ENS; fn main() { let (_evloop, transport) = web3::transports::Http::new( "http://localhost:8545", ).unwrap(); let ens_name = "hexacosa.eth"; let ens = ENS::new(web3::Web3::new(transport)); match ens.address(ens_name) { Ok(addr) => println!("{:?}", addr), Err(_) => println!("unknown"), }; } ``` ## for Developer ### Contract use ENS Contract from https://github.com/ensdomains/ens/tree/master/contracts . * ENS.sol * PublicResolver.sol ``` $ solc --bin --abi --optimize contract/PublicResolver.sol -o contract $ ls contract ENS.abi ENS.bin ENS.sol PublicResolver.abi PublicResolver.bin PublicResolver.sol ```