My first web3 webpage (2024)

How I built my first web3 website, the web3 services I used, and what I think about web3's potential.

Today, I'm going to publish my first webpage using web3 technologies. I will upload a page to IPFS (InterPlanetary File System), make it available at dries.eth using ENS (Ethereum Name Service), and visit it with a web3-enabled browser. If you don't know what that means, buckle up for a crash course.

Step 1: Buy an ENS domain name

Last year, I minted buytaert.eth, and more recently, I purchased dries.eth. Both are ENS domain names.

ENS, which stands for Ethereum Name Service, is an Open Source blockchain-based naming protocol. You can think of ENS as DNS for web3. Where DNS maps domain names to IP addresses, ENS maps domain names to Ethereum addresses. And an Ethereum address can point to a cryptocurrency wallet, a content hash, and more.

ENS isn't just a service for Ethereum; it's a general purpose web3 service built on Ethereum using smart contracts. Because ENS is built on the blockchain, it is more resistant to censorship than DNS.

Today, the primary use case for having your own ENS domain is to make receiving cryptocurrencies easier. If you wanted to send me some Ether, you have to send it to 0xbAD65DE65AE2c23f5eA30d12fC8c2f883cbe671f, the address of my Ethereum wallet. Because I own dries.eth, you can send it dries.eth instead. Much easier to remember!

It's pretty amazing that dries.eth can collect cryptocurrencies permissionless from anyone anywhere in the world without a single intermediary. However, that is not the topic of today's blog post. In this blog post, I want to show how dries.eth can be used to host a fully decentralized web3 webpage.

If you want to buy an .eth domain, you can do so at the ENS Domains website. Because an .eth domain is an NFT (Non-Fungible Token), you can also buy and sell domain names at NFT marketplaces like OpenSea.

When ENS launched in May 2017, it only supported the ENS-native TLD .eth. As of August 2021, ENS added support for the full DNS namespace. So if you own example.com on DNS, you can use the ENS Domains website to set ENS records for example.com.

Step 2: Upload a HTML file to IPFS

IPFS, short for InterPlanetary File System, is an Open Source protocol and peer-to-peer network for storing and sharing data.

Today, most webpages are stored on a single server, hosted in a single data center. These sites are not very resilient to a single point of failure, denial of service attacks, or government censorship.

More advanced websites replicate their webpages using CDNs and other caching systems. My site uses multiple Kubernetes web nodes, Varnish and Cloudflare, but that is because my company helps run some of the largest websites in the world, not because my website requires it. All these technologies can be used to improve a website's resiliency.

With IPFS, your webpage can be replicated across hundreds of "IPFS nodes" around the world. Everyone in the world can run an IPFS node. The nodes create a single, global network, and each file in the network gets a unique, global identifier.

In theory, IPFS is more resilient than traditional website hosting. Because IPFS nodes are run by different people and organizations around the world, and content is replicated across them, the hosted content is more resistant to a single point of failure, denial of service attacks, or government censorship. The flip-side is that it is also more difficult to moderate misinformation.

I wrote "in theory" because content uploaded to IPFS only stays available as long as one node, somewhere in the world, chooses to host it. And by default, IPFS does not include a built-in mechanism to incentivize other nodes in the network to replicate data. Each IPFS node tends to host its own data. Other nodes can replicate data cooperatively, or as a service.

This is where Filecoin comes in. Like IPFS, Filecoin is an Open Source protocol. IPFS itself is not blockchain-based, but Filecoin is. Filecoin extends IPFS with a public marketplace for storing and replicating data. Miners can earn Filecoin (a cryptocurrency token) in exchange for storing and replicating IPFS data. Because Filecoin is blockchain-based, the marketplace is not owned by a single intermediary. Storage deals are brokered programmatically by nodes on the network.

Long story short, to host my webpage on IPFS, I need at least one IPFS node willing to host my content. There are two solutions for this: (1) I can run my own IPFS node or (2) I can pay a third-party IPFS service to host my content.

Running my own IPFS node

In the spirit of helping to build a decentralized web, running your own IPFS node should be the preferred option. Below you can see my local IPFS node hosting my index.html file:

My first web3 webpage (1)
My first web3 webpage (2)

Replicating my webpage

Because my local IPFS node runs on my laptop, my webpage is only available when my laptop is connected to the internet.

As explained, I can use Filecoin to pay other nodes on the network to replicate my content. However, I came up with a better solution: one of my best friends.

I asked him to "pin" my file on some of his IPFS nodes that are permanently connected to the internet. This way my webpage remains available even when my laptop disconnects from the internet.

My first web3 webpage (3)

With a few friends pinning each other's websites on IPFS, you don't need to pay for web hosting anymore!

Third-party IPFS and pinning services

If you don't want to run your own IPFS service, or you don't have friends who can replicate your data, you can use a third-party IPFS and pinning service.

I found a dozen pinning services, and tried the following:

Infura makes it easy to upload files using their command line tool:

$ ipfs-upload-client --id xxx --secret yyy ./index.html

xxx is the Infura Project ID and yyy the Infura Project Secret Key.

Fleek and Pinata allow you to upload files from your web browser:

My first web3 webpage (4)
My first web3 webpage (5)

If you're looking for Filecoin-based solutions, web3.storage and estuary.tech come recommended.

Step 3: Visit your web3 webpage

After uploading a file to IPFS, you get the "hash" (a unique ID or address) of the file. The hash of my index.html file is:

bafybeibbkhmln7o4ud6an4qk6bukcpri7nhiwv6pz6ygslgtsrey2c3o3q

Content hosted on IPFS can be accessed using an IPFS-compatible browser like Brave. Firefox, Safari and Chrome don't currently support IPFS natively, but various IPFS browser extensions exist.

Using Brave, you can visit my webpage at ipfs://bafybeibbkhmln7o4ud6an4qk6bukcpri7nhiwv6pz6ygslgtsrey2c3o3q (note the ipfs:// schema).

My first web3 webpage (6)

Step 4: Map your webpage to your domain name

Being able to visit your IPFS-hosted website is pretty neat, but you're probably not going to ask other people to check out your new webpage at ipfs://bafybeibbkhmln7o4ud6an4qk6bukcpri7nhiwv6pz6ygslgtsrey2c3o3q. Using a 60-character hexadecimal hash isn't exactly ideal.

This is where ENS comes in. I just had to set the Content Resolver record of dries.eth to the IPFS hash associated with my webpage.

My first web3 webpage (7)

Updating an ENS record permanently updates the state of the Ethereum blockchain. This means you have to pay a "gas fee", or a network transaction fee. As you can see on Etherscan, it cost me 0.004369 Ether ($11.69 at the time) to update my ENS record.

You can now use an ENS and IPFS compatible browser to visit https://dries.eth. Voila, a truly decentralized website!

My first web3 webpage (8)

Are ENS and IPFS the future of the web?

There are various big shortcomings:

  • It only works with static sites. Most organizations use dynamic websites such as those rendered by Drupal or WordPress. Of course, you can export simple Drupal sites (like this blog) to static HTML and upload those files to IPFS. But not all sites lend themselves to becoming static sites.
  • It is too costly for many. Every time you make changes to your website, and you redeploy to IPFS, you generate a new hash. A new hash means updating your ENS record, and updating your ENS record means paying gas fees. This becomes expensive when you have to update your site frequently.
  • It is too slow for some. Updating my ENS record was manual, requires approval of the transaction, and takes some time to settle on the blockchain. Not acceptable for news websites that need to get information out in real-time.
  • Lack of browser support. Mainstream browsers still don't support ENS out-of-the-box. Until they do, web3 feels like a parallel universe.

I'm sure these shortcomings will be addressed in the years ahead. Some might already have solutions.

Shortcomings aside, I believe IPFS and ENS hold promise:

  • I prefer using the IPFS API over Amazon's proprietary S3 API. It makes my web applications more portable. Open Source protocols are preferred.
  • The idea that these services are both permissionless and programmable is mind-blowing. For example, it makes me wonder if I could create a smart contract that automatically pays miners around the world to keep my blog and photo albums online for the next 250+ years. I'd love to explore that in a future blog post.
  • ENS feels like a really useful building block for resolving and verifying various things. A global key-value store has many potential use cases.

What does web3 mean for developers?

If you are a developer, think of web3 as a growing collection of new "web services".

IPFS and ENS are two such web services. Today, they mainly provide improved resiliency and censorship protection. If resiliency and censorship protection are important for your website, use them. If they are not, you don't have to use them. As the owner and developer of https://dri.es, I don't care about censorship protection. For that reason, I'm happy to keep using traditional hosting technologies. But I do recognize that IPFS and ENS could become more interesting in the future.

In its current state, IPFS and ENS offer limited value to most website owners, but tremendous value to a very narrow subset of all website owners. That could change in the future.

What is the promise of web3?

I do think it is important to watch the web3 space. New and powerful web3 services will emerge. The internet's desire to eliminate intermediates has raged on for 20+ years. It is an unstoppable trend. With web3, more intermediaries face risk of disintermediation and decentralization.

That includes organizations whose business model depends on proprietary databases and ledgers; financial institutions, central banks, certain non-profits, social communities. Many of these could turn into truly decentralized web services.

For example, many commerce websites offer loans and loan repayment programs using intermediaries like PayPal or Square. In time, some of these intermediaries could be replaced by permissionless, distributed web services that charge less interest and/or smaller transaction fees. Imagine the day it becomes really easy for commerce websites to offer loan repayment programs directly to their customers without an intermediary. When profit margins stand to benefit, technology solutions gets adopted quickly.

The blockchain will also enable us to solve coordination and ownership problems in new ways. Everyone who creates content on the web (images, music, videos, blog posts) could benefit from that. The ability for others to use your content, and for value to flow back to you programmatically is quite exciting.

Most of all, I'm hopeful that these decentralized services will help us advance how we govern public goods, how we sustain Open Source projects, and how we can meaningfully shift power back from large organizations to individuals and communities. But that is the topic for a future blog post.

My first web3 webpage (2024)

FAQs

What are Web 3.0 examples? ›

Web 3.0, or Web3, is a set of values and technical applications that define a new era of the World Wide Web. Prime Web 3.0 examples include ubiquity, decentralization, artificial intelligence, blockchain, and connectivity.

How do I get my website on Web3? ›

Make sure to log in to your Unstoppable Domains account. Then, go to “Go Domains” > “My Domain” and select “Manage”. This will bring up a sidebar menu. Select the “Website” option to bring up the list of options to create a site using registered Web3 domains.

How do I start my journey in Web3? ›

5 Tips To Start Your Web3 Journey
  1. A long intro and background.
  2. Security is key.
  3. DYOR and only invest in what you understand.
  4. Don't be greedy. Stick with your strategy.
  5. Find your community, learn and exchange with each other.
  6. Give yourself enough rest.
  7. Final thoughts.
Dec 6, 2022

What makes a website Web3? ›

Web3 websites are websites that can be accessed through your Ethereum wallet's browser extension. These websites can show you a bunch of information about your wallet, the blockchain, and the decentralized applications (DApps) you're using.

What does Web 3.0 look like? ›

Defining features of Web 3.0 include decentralization; trustlessness and permissionlessness; artificial intelligence (AI) and machine learning; and connectivity and ubiquity.

What is Web 3.0 for dummies? ›

Web 3.0 or semantic web is a new concept of the world wide web that benefits users who make content instead of the platform where this content is published. It promotes decentralized networks based on blockchain technology. This tackles ownership and data issues which are the main drawbacks of Web 2.0.

How much does a Web3 website cost? ›

At Web3, monthly SEO plans range from $800/month all the way up to $3500+/month, depending on the keywords your website is targeting — more specifically, the number of keywords, how competitive they are, and the number of geographic regions in which you're looking to improve your ranking.

Can you make money on Web3? ›

The first way an everyday joe can make some money with Web3 is investing and/or trading Cryptocurrencies. Cryptocurrencies are digital assets built on the premise they are on the blockchain and are decentralized.

What programming language is used for Web3? ›

Frontend Programming Languages for Web3

JavaScript (JS) – JS is one of the most prominent programming languages, mainly used for web development. It is an object-oriented language that can update both HTML and CSS elements.

How do I learn Web 3.0 from scratch? ›

Ultimate guide to become a Web 3.0 developer
  1. Learn the fundamentals of blockchain technology. You must be aware of the materials with which you deal. ...
  2. Get a basic understanding of smart contracts. ...
  3. Learn how to use the blockchain to interact with it. ...
  4. Solidity is something you should learn.

Is Web3 easy to learn? ›

It's really simple.

To be more specific, I am familiar with web development and have used it for many years. It was the first skill I initially learned and used to make money.

Why is Web3 so hard? ›

Ease of Use: Web3 can be a little trickier to use since it requires additional software and education. As a result, less-savvy internet users might have a harder time adopting Web3. Slow to Grow: While a decentralized web means users have more power, it also means developments can be slow to take hold.

What is the main goal of Web3? ›

The goal of Web 3.0 is to offer people control and ownership over their data. The goal of Web3. 0 is to cut out the middlemen, allowing individuals to give services to one another and decide what portions of the internet they utilize.

Is HTML used in Web3? ›

HTML, CSS, JavaScript

Basic web2 principles are still required to become a full-stack web3 developer.

Can Web 3.0 be hacked? ›

As mentioned earlier, data security is one of the features of web3. In fact, security is one of it's crucial features. This means that it is impenetrable to hackers.

Is Chrome a Web3? ›

So, is Chrome a Web3 browser? No, Chrome is a Web2 browser like Firefox and Safari. However, users can access Web3 applications with Web2 browsers using a Web3 wallet like MetaMask.

What are some Web3 websites? ›

Current examples of Web 3.0
  • Brave Browser. It is probably one of the most popular Web 3.0 applications today. ...
  • Decentraland. It's a project that runs on the Ethereum (ETH) blockchain and aims to create an open virtual world where users can operate just as they do in the physical world. ...
  • Storj. ...
  • STEPN. ...
  • ySign.
Sep 26, 2022

What problems will Web 3.0 solve? ›

Web 3.0 is a decentralized internet experience built on blockchain technology. This technology was created to, hopefully, give users greater control over their data and creations. Web 3.0 also focuses on emerging technologies, like AI, semantic search, and virtual reality.

What are main advantages of Web 3.0 give an example *? ›

Benefits of Web 3.0:
  • Ownership of Data. ...
  • Fewer intermediaries. ...
  • Transparency. ...
  • Efficient information access and connecting. ...
  • Web-surfing experience that is tailored to you. ...
  • Services that are not disrupted. ...
  • Improved Marketing.

How many hours does it take to build a website? ›

The time it takes to develop a website ranges from 150 to 500 hours. The website building process will go through various stages if you are getting it built from a technical partner. The project discovery phase, design phase, development phase, and website improvements phase.

How do web3 founders make money? ›

They earn from licensing the blockchain to other companies and from the virtual currency mining. Many companies license their blockchain from other companies to create a product. The web3 companies are the new billionaires. They are not just making money but they are also changing the way we do business.

How much do web3 developers make? ›

Web3 Developer Salary - Jan 2023
PositionAvg Yearly SalaryMin Yearly Salary
Lead Developer$126k$60k
Architect Developer$120k$60k
Senior Developer$120k$60k
CTO$120k$50k
1 more row

What are the best Web3 projects? ›

Analyzing the Best Web 3.0 Crypto Coins
  • 1.RobotEra - Overall Best Web 3.0 Cryptocurrency on Presale.
  • Tamadoge - Top Web 3.0 Coin with Ongoing Bull Run.
  • Battle Infinity - New Cryptocurrency Project with Multi-Use P2E Platform.
  • Lucky Block - Decentralized Cryptocurrency Competition Platform.
Dec 28, 2022

Are Web3 developers in demand? ›

Web3 software engineers are highly sought after by companies who want to build their own blockchain or decentralized apps, which requires knowing a lot of programming languages such as Python, Java, Solidity and others.

Does Web3 have a future? ›

While we can't quite (yet) describe the user experience on Web3, that shouldn't be seen as evidence that it isn't coming. Web3 is the future, as probably as Web2 was the future in 1990. And, as we've shown, much of the technology that will drive this new decentralized internet already exists, and is already being used.

Does Web3 require coding? ›

Aspiring web3 developers must learn programming in Solidity for developing smart contracts according to client needs.

Who invented Web3? ›

Web3 Foundation founder and President Dr. Gavin Wood discusses the ethos and vision behind Web 3.0 and proposes the Web 3.0 Technology Stack as a way to measure our progress.

What skills are needed for Web3? ›

What skills your portfolio should demonstrate
  • Front-end web development.
  • A web3 programming language like Solidity or Rust.
  • Smart contract development.
  • Gas optimization.
  • Integration and staging deployment.
  • Know how of deployment to the official testnet.
  • Design patterns.
  • Smart contract security.
Jan 11, 2023

Do I need to learn Web2 before Web3? ›

To become a successful Web3 developer, you'll need a deep understanding of blockchain protocols and functions. Even before that, you must become proficient in Web2 programming, which form the foundations of more advanced skills and also enable you to quickly adapt to new tech changes.

How long does it take to become a Web3 developer? ›

It can take around 2 years for beginners to become professional Web3 developer from scratch. Start by taking courses such as Become a Professional Developer Course and extend your application to blockchain by joining other short courses.

How do I master Web3? ›

Learn Web3 With These Free Resources (Updated January 2023)
  1. Get started Building Web3 Apps with Cloudflare. ...
  2. ETHEREUM DEVELOPMENT TUTORIALS. ...
  3. 2.3 Create your own Blockchain ERC20 Token | Python, Brownie, Solidity. ...
  4. 2.4 Scaffold-ETH - Simple NFT Example. ...
  5. 2.5 UNISWAP-V2 CONTRACT WALK-THROUGH. ...
  6. Buildspace. ...
  7. Crypto Zombies.

Is Python useful in Web3? ›

It is an interpreted and object-oriented language for web3 programming with multiple value advantages for developers. Python can help in facilitating faster development of prototypes alongside serving use cases in testing and control.

What is the biggest problem in Web3? ›

Web3 has Poor UX and UI Ratings

While imagining an advanced form of the internet, users won't be expecting poor interface and experience, which is a huge problem when it comes to Web3 applications.

Why Web3 is not the future? ›

In short, Web3 is not the future, it is already here, and although we are still at a very early stage, words such as metaverse, smart contracts, tokens, cryptocurrencies, DAO or NFT, are words that are becoming more and more common, and with this new evolution of the Web, new ways are opening up for the creation of ...

Is Web 3.0 the future? ›

For tech professionals, Web 3.0 will be a game-changer. The technology will be defined by eight main features – Semantic Web, AI, 3D Graphics, Connectivity, Ubiquity, Blockchain, Decentralization, and Edge Computing.

What are some Web 3.0 companies? ›

World's Prominent Companies in the Web 3.0 Market: Top 10 By Revenue
  • Helium Systems, Inc.
  • Coinbase Global, Inc.
  • Polygon Technology.
  • ConsenSys.
  • CoinSwitch Kuber.
  • Alchemy Insights, Inc.
  • Web3 Foundation.
  • Brave Software, Inc.
Oct 27, 2022

Is Google a Web3? ›

Google has been active in the Web3 sector regarding business development. Previously, Google partnered with Near Protocol to provide technical support for the latter's grant recipients.

Top Articles
Latest Posts
Article information

Author: Domingo Moore

Last Updated:

Views: 6025

Rating: 4.2 / 5 (73 voted)

Reviews: 80% of readers found this page helpful

Author information

Name: Domingo Moore

Birthday: 1997-05-20

Address: 6485 Kohler Route, Antonioton, VT 77375-0299

Phone: +3213869077934

Job: Sales Analyst

Hobby: Kayaking, Roller skating, Cabaret, Rugby, Homebrewing, Creative writing, amateur radio

Introduction: My name is Domingo Moore, I am a attractive, gorgeous, funny, jolly, spotless, nice, fantastic person who loves writing and wants to share my knowledge and understanding with you.