Texto original: “Te enseñaré paso a paso a construir un sitio web personal descentralizado”

Autor: tigre gordo

Para los entusiastas de Web3 que tienen la costumbre de expresar opiniones, "alojar" contenido en las redes sociales de Web2 como Twitter no parece ser lo suficientemente "resistente a la censura" y carece de un sentido de exclusividad e independencia para los equipos de protocolo de Web3 o partes del proyecto; En otras palabras, la descentralización de todo el proceso, desde los servicios del producto hasta la presentación frontal, también es más atractiva en términos narrativos. No importa qué motivación tenga, convertir un sitio web oficial personal o de proyecto en un sitio web descentralizado tiene ciertas ventajas en términos de costo, anonimato y protección de la privacidad.

Por lo tanto, este artículo lo llevará paso a paso para implementar su sitio web personal (tomando como ejemplo la página web generada por Notion) en IPFS para construir un sitio web verdaderamente descentralizado (Dweb) que le pertenece solo a usted.

El artículo se divide en tres partes: introducción, funcionamiento práctico y sugerencias. Primero presentaré el concepto y la representación de la red descentralizada Dweb, y luego enseñaré paso a paso cómo agregar un sitio web de tarjeta de presentación personal a Dweb. Finalmente, también resumiré las ventajas y desventajas de la solución actual.

Teniendo en cuenta la extensión del artículo y la dificultad de comenzar, en la parte práctica, solo presentaré el método más simple para implementar un marco de página web HTML. Al mismo tiempo, este tutorial se basa principalmente en la herramienta Fleek para implementar la implementación. Fleek es poderoso y puede empaquetar una variedad de marcos de páginas web (como WordPress, Next.js, etc.). Los amigos con cierta base técnica pueden explorarlo en profundidad.

¿Qué es un sitio web descentralizado?

El sitio web descentralizado (Dweb) se refiere literalmente a un sitio web implementado en una red descentralizada.

Desde el punto de vista de los componentes, Dweb es similar a los sitios web tradicionales de Internet. Todos necesitan tener una entrada (un nombre de dominio) y un tema de alojamiento (un servidor de alojamiento). En el mundo Web3, los proyectos representativos correspondientes a estas dos "funciones" son ENS, IPFS y Arweave (este artículo se centra en el primero, que también es una solución utilizada por muchos proyectos).

ENS (Ethereum Name Service) es un sistema de nombres distribuido, escalable y abierto basado en Ethereum; en términos sencillos, es el sistema de nombres de dominio blockchain.

La idea de IPFS es distribuir y almacenar datos en nodos que pueda ejecutar cualquier persona en todo el mundo; es esencialmente un servicio de almacenamiento de datos de igual a igual, resistente a la censura. Además, dado que IPFS distribuye datos entre nodos y apunta a datos específicos, puede garantizar que los recursos provengan de fuentes actualizadas recientemente y la experiencia real será más rápida y confiable.

Para obtener más explicaciones sobre ENS e IPFS, los lectores interesados ​​pueden leer "Un artículo para conocer ENS, la aplicación no financiera de Ethereum más exitosa hasta la fecha" y "Análisis en profundidad de IPFS: el protocolo subyacente de la nueva generación de Internet". ".

Impulsada por ENS e IPFS, la infraestructura blockchain distribuida puede almacenar contenido directamente en contratos inteligentes (contenedores).

Sitio web representativo basado en ENS+IPFS

Aunque no es obvio a nivel de percepción, si los usuarios prestan atención a algunas aplicaciones Web3 convencionales, pueden encontrar en sus documentos oficiales que los protocolos Web3 líderes como Uniswap y 1inch han sincronizado sus sitios web con IPFS.

Las direcciones de enlace de ENS son 1inch.eth y uniswapexchange.eth respectivamente. Para los navegadores Web3 nativos, puede ingresar directamente las direcciones anteriores para acceder. Para los navegadores no nativos, puede usar direcciones compatibles para acceder.

1 pulgada: 1 pulgada. ética. enlace/" _src="https://1inch. ética. enlace/">https://1inch.eth.link/

uniswap:https://uniswapexchange.eth.link。

Para obtener más sitios web implementados con tecnología ENS + IPFS, Almonit ha organizado sitios web Dweb. El enlace es el siguiente: https://almonit.eth.link/#/discover/.

Cómo implementar

En este artículo, utilizamos principalmente la solución proporcionada por la herramienta Fleek. La ventaja de esta solución es que es fácil de implementar y admite múltiples marcos web. Además de admitir páginas HTML, también admite marcos web en múltiples idiomas. como Next.js, Hugo.js y Wordpress.

Este artículo se centra en la más simple de las muchas funciones admitidas por Fleek: la solución de implementación del marco de páginas HTML, y brinda una explicación paso a paso. Espero que los principiantes puedan comenzar rápidamente después de leerlo; desempeñar un papel en la atracción de nuevas ideas.

Acabo de mencionar que necesita preparar una página web HTML, por lo que usará Notion para generar este archivo de página web HTML. La razón principal es que Notion es fácil de operar y tiene su propia función de exportación HTML, por lo que puede usarlo como. un creador visual de páginas web HTML.

Dado que la herramienta que utilizó Fleek utiliza sincronización automática con Github, también es necesario preparar una cuenta de Github y el Repo (biblioteca) correspondiente.

La implementación en la red IPFS en sí no requiere un nombre de dominio. La carga en la red generará un hash, similar a la dirección IP en Web2, por lo que es necesario preparar un ENS para asignar este hash IPFS.

En resumen, prepare tres cosas con antelación:

Una cuenta de github; un nombre de dominio de ENS, la billetera correspondiente y una pequeña cantidad de ETH como cuenta de noción, y crear una página de perfil personal. 1. Exportar HTML desde Notion

1.1 Diseñe un perfil en concepto, la demostración se muestra a continuación.

1.2 Exportar la página que preparamos desde la función de exportación de nociones. Debido a la capacidad limitada de IPFS para admitir páginas web estáticas, solo podemos optar por exportar una sola página por el momento. (Los jugadores avanzados también pueden implementar páginas de varios niveles: subpáginas).

1.3 Después de obtener el archivo comprimido exportado, se descargará automáticamente de forma local. Después de descomprimir localmente, obtendrá una carpeta y un archivo HTML como se muestra a continuación. Cambie el nombre del archivo que termina en "xxx.html" a "index.html".

2. Subir a Github

2.1 Vaya a la página de inicio de GitHub, inicie sesión (si no tiene una cuenta, debe registrar una cuenta), ingrese a la siguiente página y haga clic en "Nuevo" para crear un nuevo repositorio.

2.2 Se recomienda utilizar la biblioteca privada (privacidad) para este repositorio recién creado. Esto evita que cualquier otra persona que no sea la herramienta Fleek y el creador acceda al archivo original.

2.3 A continuación, debe utilizar el cliente Github (si no hay un cliente Github en su computadora, debe descargar e instalar uno). Después de iniciar sesión en el cliente Github, regrese a la página web de Github que acaba de crear y haga clic en "Configurar en el escritorio" en el cuadro azul (abra el cliente en el escritorio).

2.4 Después de instalar el cliente de escritorio, aparecerá el siguiente mensaje.

2.5 Vaya al cliente de escritorio, siga las instrucciones para configurar un directorio local y registre la ruta del directorio local. Copie el archivo que descargamos en el primer paso "Exportar datos de Notion" al directorio local.

2.5 Una vez completada la copia, aparecerá el siguiente mensaje cuando regrese con el cliente. Complete alguna descripción y haga clic en confirmar.

2.6 Haga clic en enviar origen para enviar el documento a Github Repo.

3. Crea un nuevo proyecto usando Fleek

"Fleek es un conjunto de herramientas que incluye todo lo necesario para crear sin problemas sitios y aplicaciones modernos en la red abierta y sus protocolos".

En pocas palabras, Fleek es una herramienta que puede implementar fácilmente sitios web personales en redes descentralizadas.

3.1 Debe registrarse cuando ingresa a Fleek por primera vez. Se recomienda usar la billetera Etheretrum Little Fox para registrarse e iniciar sesión directamente con un clic, lo cual es más conveniente (también puede usar Github o correo electrónico para registrarse).

3.2 Después de registrarse e iniciar sesión, accederá a la página de inicio del proyecto. A continuación, deberá crear un proyecto de sitio web.

3.3 Seleccionamos el Github Repo recién creado en el segundo paso y pasamos al siguiente paso.

3.4 Seleccionamos IPFS en la opción Servicios de Hosting y seleccionamos Cointinue para pasar al siguiente paso.

3.5 Seleccione el sitio web que acaba de crear e ingrese a la página de configuración detallada.

3.6 Ahora que el sitio web se ha implementado en IPFS, la herramienta Fleek ha asociado cuidadosamente un nombre de dominio asignado, como se muestra en la figura.

3.7 A continuación, vincule el nombre de dominio de ENS, seleccione "Configuración" y busque "ENS".

3.8 Desplácese hacia abajo hasta "Agregar ENS".

3.9 Ingrese el nombre de dominio de ENS.

3.10 Ingrese a la siguiente interfaz y haga clic nuevamente en la dirección ENS que acaba de ingresar. Y seleccione "Establecer hash de contenido" y finalmente pague una tarifa de gas para completar el enlace.

3.11 En este momento, vemos que el nombre de dominio ENS que antes era gris se ha vuelto azul y la vinculación se realizó correctamente.

3.12 Para los navegadores que admiten nombres de dominio descentralizados, como la aplicación móvil Brave, Little Fox Wallet, etc., puede ingresar directamente a ENS como yyzfish.eth. Lo configuré aquí para acceder directamente al Dweb implementado. Para los navegadores Web2, ENS también es compatible. Soluciones, puede acceder directamente a https://yyzfish.eth.link/.

Algunas reflexiones durante el proceso de creación de un sitio web

Después de pasar por este proceso, me di cuenta de algunas de las ventajas y desventajas de los sitios web descentralizados en comparación con los sitios web tradicionales.

Ventaja

Bajo costo y estable

Las páginas web tradicionales de Web2 deben implementarse en el servidor, lo que no solo requiere mantenimiento, sino que también los costos aumentan con la cantidad de usuarios. Sin embargo, a través del proceso de implementación de Web3 en este artículo, no es difícil encontrar que el costo. La implementación en IFPS es extremadamente barata (actualmente gratuita) e independientemente del número de usuarios, el coste no cambiará.

Una narrativa Web3 más completa

En los primeros días, era difícil implementar un proyecto completo (front-end + contrato inteligente) en una red como Ethereum al mismo tiempo debido al alto nivel de gas en la cadena. Ahora, con la mejora del protocolo de red IPFS, la enorme página interactiva de front-end también tiene su propia red descentralizada exclusiva. Esto es narrativamente consistente con la idea de una verdadera “descentralización”. En la actualidad, los principales protocolos DeFi, como Uniswap y 1inch, se han implementado en redes descentralizadas. En el futuro, la implementación completa en redes descentralizadas puede convertirse en una característica estándar de los proyectos Web3.

genial personalmente

Los nombres de dominio de ENS son muy populares en las redes sociales (como Twitter). Muchos KOL tienen el apodo xxx.eth. Por esta razón, ampliaron sus blogs a la red IPFS y utilizaron el nombre de dominio de ENS como entrada. Será algo interesante para los entusiastas de las criptomonedas.

Anonimato y protección de la privacidad

Dado que Dweb consideró plenamente la combinación de "descentralización" y "privacidad" en la etapa inicial de diseño, en realidad es algo similar a la red Tor y tiene las características de imposibilidad de seguimiento y anonimato.

insuficiente

La compatibilidad con Web2 aún debe mejorarse

Aunque la herramienta ya es compatible con muchos marcos convencionales, no todos son compatibles con los marcos web dinámicos como PHP. Es necesario mejorar la compatibilidad general.

No amigable para los usuarios domésticos.

Dado que el número actual de nodos IPFS está lejos de alcanzar el número previsto en el documento técnico (hoja de ruta), existen ciertos obstáculos para el acceso nacional de Dweb.

Espero ver soluciones más completas e iteraciones tecnológicas en el futuro.