A Web3 website is a decentralized website that operates on blockchain technology and uses peer-to-peer networks like IPFS (InterPlanetary File System) for hosting. Unlike traditional Web2 websites that rely on centralized servers, Web3 websites store and distribute their content across multiple nodes in the IPFS network. This ensures greater resilience, censorship resistance, and accessibility. With IPFS, content is identified by a unique cryptographic hash rather than a server address, making it immutable and verifiable. Web3 websites often leverage blockchain-based domains, such as those from Unstoppable Domains, to provide user-friendly, secure, and tamper-proof addresses for accessing this decentralized content.
A Web3 website differs from a Web2 website in both how it is hosted and its functionality. Web2 websites are hosted on centralized servers and can support dynamic, interactive features like those seen in platforms such as WordPress, where server-side commands process user requests, update databases, and generate dynamic content. In contrast, Web3 websites are hosted on decentralized networks like IPFS (InterPlanetary File System), which store and serve static content such as HTML, CSS, and JavaScript. Since IPFS doesn’t support server-side processing, features like dynamic content generation or user authentication typically found on Web2 sites require external solutions, such as blockchain smart contracts or APIs. While Web2 offers more flexibility for dynamic applications, Web3 focuses on decentralization, ownership, and distributing content in a peer-to-peer manner, making it ideal for static sites or applications designed to leverage blockchain technology.
Creating a Web3 website involves building your site and hosting it on a decentralized network like IPFS (InterPlanetary File System). Here’s a step-by-step guide to get started:
1. Plan Your Website
Decide on the structure and content of your site. Web3 websites are static, so focus on creating pages with HTML, CSS, and JavaScript. If you need interactive features, plan to use blockchain integrations or APIs.
2. Choose a Website Builder
To design and build your site, use a tool that allows exporting HTML files, as these are necessary for IPFS hosting. Here are some excellent tools:
Free Tools:
Pazly.dev: Specifically optimized for Web3, Pazly.dev makes it easy to design lightweight, modular websites with exportable HTML, perfect for IPFS hosting.
Webflow (Free Tier): A visual website builder that lets you design and export static HTML, CSS, and JS.
Paid Tools:
Bootstrap Studio: A powerful desktop app for building responsive websites. It allows you to export clean HTML and is ideal for creating professional Web3 sites.
Blocs: A Mac-based website builder offering an intuitive interface and easy HTML export functionality.
For sites under 20mb, upload Your Website Using Unstoppable Domains.
Unstoppable Domains offers a simple way to upload your Web3 website and link it to your Web3 domain.
After you’ve logged into your account on Unstoppable Domains, go to “My Domains” and click on the domain you want to upload a site to. Once you are in the domain, click on “Website” from the left-hand side.
You may see an IPFS hash in this section already. If you do, click on “Remove” and follow any prompts to sign a transaction with your wallet.
Once the transaction has gone through, select the option to upload your files. An important step here is to ensure you upload the folder containing your website files if your website has more than one page or assets like images or style sheets. Uploading the folder containing these files will ensure all the links work then the site is uploaded to IPFS.
Once your files are uploaded, click on “Publish” and follow any prompts to sign a transaction with your wallet.
For sites over 20mb, you will need to use a paid IPFS pinning service such as pinata.cloud.
As Unstoppable Domains has a 20mb file limit for sites, you will need to use a paid service to upload larger websites to IPFS.
Once you create a paid account on Pinata, log in and navigate to the "Files" section. Now drag and drop your entire website folder into the upload area. After uploading, Pinata will generate an IPFS hash for your content.
Head over to Unstoppable Domains, log in and go to the “My Domains” page. Click on the domain you want to add the site to and then click on “Website” on the left-hand side.
You may see an IPFS hash in this section already. If you do, click on “Remove” and follow any prompts to sign a transaction with your wallet.
Once the transaction has gone through, there will be an option to link an existing site. Click on this option and enter the IPFS hash from Pinata. Follow any prompts to sign a transaction with your wallet and when the transaction has gone through, your website will be attached to your domain.