Skip to content

camohe90/nft-mix

 
 

Repository files navigation

nft-mix Basado en el repo de Patrick Collins

En este repositorio vamos a desplegar un contrato inteligente de NFT para crear una colección de mascotas

Prerequisitos

Por favor instale o tenga instalado lo siguiente:

Instalación

  1. Instalar brownie, sino lo haz hecho, esta es una forma sencilla de hacerlo.
pip install eth-brownie

Sino funciona podrias hacerlo via pipx

pip install --user pipx
pipx ensurepath
# reinicia tu terminal
pipx install eth-brownie
  1. Clone este repo
https://github.com/camohe90/nft-mix
cd nft-mix
  1. Instala ganache ganache-cli
npm install -g ganache-cli
  1. Instala los contratos de openzeppelin
npm install @openzeppelin/contracts

Si quieres desplagar el NFT en una red de pruebas debes hacer lo siguiente

  1. Configura las variables de entorno

Configura tus variables de entorno WEB3_INFURA_PROJECT_ID, y PRIVATE_KEY .

Puedes obtener un WEB3_INFURA_PROJECT_ID creando una cuenta en Infura. Creas un nuevo proyecto y seleccionas la red de pruebas rinkeby.

En cuanto a tu PRIVATE_KEY las puedes obtener de una wallet como metamask.

Tambien vas a necesitar ETH rinkeby de prueba. Puedes obtener ETH usando el siguiente faucet de rinkeby en el siguiente enlace. Si eres nuevo por favor, mira este video.

Puedes agregar tus variables de entorno en el archivo .env:

export WEB3_INFURA_PROJECT_ID=<PROJECT_ID>
export PRIVATE_KEY=<PRIVATE_KEY>

Luego, debes estar seguro que tu archivo brownie-config.yaml tenga:

dotenv: .env

Uso

Se puede hacer el despliegue en la red de pruebas rinkeby para mostar los NFTS, pero se recomienda que se hagan pruebas y despliegue en la red local, así no es necesario esperar a que las transacciones se procesem

Ejecute los siguientes comandos.

brownie run scripts/simple_collectible/deploy_simple.py --network rinkeby
brownie run scripts/simple_collectible/create_collectible.py --network rinkeby

Modificar la metadata

Por defecto el script usa la metadata del archivo JSON que se cargo en Pinata y se pasa como parametro en create_collectible en la linea 5.

Pero si quisieras subir tus propias imagenes debes subirlas a Pinata y modificar la plantilla que se encuentra en la carpeta metadata/rinkeby/demo.json, ahi solo debes reemplazar la URL de image por la de la imagen que hayas subido a Pinata.

Ese archivo JSON los debes subir a Pinata y por cada collecionable que desees crear debes crear manualmente (por ahora) un archivo JSON

Por ultimo debes reemplazar la URL de nuevo JSON en el script create_collectible en la linea 5.

Recursos

Para empezar con brownie:

Licencia

This project is licensed under the MIT license. Fork del repositorio de https://github.com/PatrickAlphaC

Contribuidores

@camohe90 @djmendez-coding

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Solidity 50.8%
  • Python 46.9%
  • Shell 2.3%