# StakeERC721

O [StakeERC721](https://dexappbuilder.dexkit.com/forms/deploy/thirdweb/NFTStake) o contrato inaugura um paradigma onde os usuários podem confiar seus NFTs ERC-721 e, em troca, adquirir tokens ERC-20 como manifestação das recompensas de staking. Durante a implantação deste contrato, o administrador designado do contrato é encarregado de configurar os endereços do NFT e do token de Recompensa — uma ação que possui consequências irrevogáveis, pois essas alocações permanecem imutáveis posteriormente.

Sob este sistema, os NFTs que são apostados encontram um abrigo seguro dentro do contrato, e as recompensas são meticulosamente calculadas em correlação com a duração pela qual esses NFTs permaneceram em estase. O administrador assume a responsabilidade de sustentar uma oferta correspondente de tokens de recompensa dentro do contrato de staking. Subsequentemente, essas recompensas acumuladas são transacionadas sem interrupção aos stakers mediante a invocação do mecanismo de reivindicação.

## Fórmula

`rewardsPerTokenStaked = (stakingDuration * rewardsPerUnitTime) / timeUnit`

## Aspectos Cruciais a Notar

* Os stakers são obrigados a conceder autorização para a transferência de seus NFTs ao endereço do contrato de staking antes de iniciar o processo de staking.
* O administrador está encarregado de manter uma reserva adequada de Tokens de Recompensa dentro do contrato de staking. Isso pode ser efetuado por meio da função de depósito, que serve como o mecanismo para depositar tokens de recompensa.

## Espectro de Aplicações Práticas & Exemplos Ilustrativos

* **Ecossistema de Staking de NFT**: Crie um ecossistema intricado onde usuários que fazem staking de seus NFTs contribuem para a vitalidade de uma rede dinâmica.
* **Staking Baseado em Jogos**: Aproveite NFTs como garantia para staking em plataformas de jogos, oferecendo aos jogadores um meio de ganhar tokens fungíveis enquanto participam de seus títulos favoritos.
* **Colaborações de NFTs de Artistas**: Promova a colaboração entre artistas permitindo que eles façam stake de seus NFTs e ganhem recompensas com base em sua participação coletiva.
* **Mecanismo de Recompensa de DApp**: Estabeleça uma aplicação descentralizada onde usuários que fazem staking de NFTs específicos contribuem para uma experiência enriquecida e são devidamente recompensados por seu envolvimento.
* **Mineração de Liquidez de NFT**: Una os domínios de NFTs e finanças descentralizadas permitindo que usuários façam stake de seus NFTs e ganhem tokens ERC-20 como recompensas, aprimorando assim a liquidez.
* **Engajamento da Comunidade**: Estimule o engajamento da comunidade proporcionando aos usuários a oportunidade de fazer stake de seus NFTs estimados e colher recompensas tangíveis, criando assim uma base de usuários ativa e engajada.

## Implantando este contrato

{% embed url="<https://dexappbuilder.dexkit.com/forms/deploy/thirdweb/NFTStake>" %}
Link direto
{% endembed %}

<figure><img src="https://1903426557-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FWrjgYUyO4ch1fBehrMEq%2Fuploads%2FjMuRBtU5YdR5kqvnyFE9%2Fbrave_screenshot_dexappbuilder.dexkit.com%20(7).png?alt=media&#x26;token=9cf80c97-7665-4f3e-860a-2f828a29f92c" alt=""><figcaption></figcaption></figure>

* **Nome:** O nome para este contrato StakeERC721 de acordo com sua ideia.
* **Descrição:** Defina aqui tudo o que você precisa para garantir a melhor descrição para este contrato específico.
* **Imagem:** Faça o upload da sua imagem para este contrato. Sua imagem será armazenada em [IPFS](https://ipfs.tech/) garantindo persistência ao longo do tempo.
* **Token de recompensa:** O endereço do token ERC20 designado para uso como recompensa de staking deve ser mantido, com o saldo dos tokens a ser supervisionado dentro do contrato de staking pelo administrador.
* **Token de staking: T**O endereço dos NFTs ERC721 que serão apostados pelos usuários.
* **Unidade de tempo (em segundos):** por exemplo, se você pretende distribuir recompensas em base horária, você deve inserir 3600 como a duração do tempo, pois a unidade de tempo nesse cenário é uma hora.
* **Recompensas por unidade de tempo:** Número de tokens de recompensa ERC20 a serem distribuídos por hora/dia/etc., com base na unidade de tempo que você definiu acima. Isso estará em `wei` (ou outra denominação base com base nas casas decimais do seu token).
