Upload 40MB vitalik's blog to a smart contract on Arbitrum Nova with 0.13ETH

Upload 40MB vitalik's blog to a smart contract on Arbitrum Nova with 0.13ETH

We have uploaded all @VitalikButerin's blog (40MB) on Arbitrum Nova mainnet permanently with only 0.13 ETH!

Further, anyone can browse the blog using web3:// access protocol at https://0xe4ba0e245436b737468c206ab5c8f4950597ab7f.arb-nova.w3link.io/ or with ENS https://vitalikblog.w3eth.io/!

Questions and answers

Why did you do this?

We are experimenting with a new application of Ethereum: host websites directly on Ethereum! This brings huge benefits compared to other solutions:

  • reuse Ethereum security with minimal 3rd trust
  • dynamic with rich UX vs static ones
  • simple user/dev onboarding with ETH wallet and dev stack (hardhat/remix/etc)

Should it be super expensive?

Yes, uploading 40MB on the mainnet will be prohibitively expensive - even using opt. rollups are unaffordable since the data will be uploaded as mainnet calldata.

Luckily, Arbitrum Nova's DAC solves the problem, and it only takes 0.13 ETH!

Interesting, how could I browse the website on smart contract?

The web3:// access protocol (ERC-4804, see https://web3url.io) is proposed to do this. And we have launched two gateways http://w3link.io and http://w3eth.io to support browsing web3:// (see previous reddit post).

How could I create a web3:// website for myself?

If you have local files, you can use ethfs-uploader to create an EthFS contract and upload all the local files to the contract.

You can also check ERC-5018 Filesystem-like Interface for Smart Contracts for more details.

What are the next steps?

We are exploring more interesting applications on Ethereum such as dynamic NFT, decentralized social networks, etc, on Arbitrum Nova.

You can play some prototypes on http://web3url.io. Enjoy!