Skip to content

mendsalbert/http3

Repository files navigation

logo

HTTP3 - Decentralized Web Hosting Platform

A revolutionary platform for hosting websites on the blockchain, ensuring permanent and censorship-resistant web presence.


Table of Contents

About the Project

HTTP3 is a revolutionary decentralized web hosting platform that leverages blockchain technology to provide permanent, censorship-resistant website hosting. It combines the power of IPFS (InterPlanetary File System) with smart contracts to create a robust, decentralized infrastructure for the web.

Screenshots

screenshot screenshot screenshot screenshot screenshot

Tech Stack

Client
Server
Database
DevOps

Features

  • Decentralized Deployment: Host websites on the blockchain, ensuring permanent availability.
  • Instant Preview & CI/CD: Automatic deployments from GitHub with instant preview links.
  • AI Website Generator: Create websites using AI and deploy directly to the blockchain.
  • Decentralized Search Engine: Index and search all websites hosted on the platform.
  • Analytics & Monitoring: Real-time analytics dashboard and uptime monitoring for your decentralized websites.
  • Decentralized CDN: Utilize our decentralized content delivery network for faster and more reliable access.
  • Smart Contract Integration: Deploy and interact with smart contracts directly from the platform.
  • Token Economy: Earn and stake tokens for hosting and maintaining the network.

Environment Variables

To run this project, you will need to add the following environment variables to your .env file

DATABASE_URL

PRIVATE_KEY

GEMINI_API_KEY

Getting Started

Prerequisites

This project uses npm as package manager

 npm install --global npm

Installation

Install HTTP3 with npm

  npm install http3
  cd http3

Running Tests

To run tests, run the following command

  npm run test

Run Locally

Clone the project

  git clone https://github.com/yourusername/http3.git

Go to the project directory

  cd http3

Install dependencies

  npm install

Start the server

  npm run dev

Deployment

To deploy this project run

  npm run build
  npm run start

Usage

  1. Connect your Web3 wallet to the platform.
  2. Navigate to the Dashboard to deploy a new website or manage existing ones.
  3. Use the AI Website Generator to create a website quickly.
  4. Deploy your website to the decentralized network.
  5. Monitor your website's performance and analytics.
  6. Participate in the token economy by staking and earning rewards.

Here's a basic example of deploying a website:

import { createWebpage } from "@/utils/db/actions";

async function deployWebsite(userId, domain, content) {
  try {
    const { webpage, txHash, cid, deploymentUrl } = await createWebpage(
      userId,
      domain,
      content
    );
    console.log(`Website deployed successfully. URL: ${deploymentUrl}`);
  } catch (error) {
    console.error("Deployment failed:", error);
  }
}

Roadmap

  • Implement basic website deployment
  • Integrate with IPFS
  • Develop smart contract for storing website metadata
  • Implement token economy
  • Enhance analytics and monitoring features

Contributions are always welcome!

See contributing.md for ways to get started.

Code of Conduct

Please read the Code of Conduct

FAQ

  • How is my website stored on the blockchain?

    • Your website content is stored on IPFS, and the IPFS hash (CID) is stored on the blockchain along with metadata about your website.
  • Can I update my website after deployment?

    • Yes, you can update your website content at any time. Each update will create a new IPFS hash, which will be recorded on the blockchain.

⚠️ License

Distributed under the MIT License. See LICENSE.txt for more information.

Contact

Project Link: https://github.com/blocklinklabs/http3

Acknowledgements

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published