Skip to main content

Automatic NFT Generator

Chainlink Automation enables conditional execution of your smart contracts functions through a hyper-reliable and decentralized automation platform that uses the same external network of node operators that secures billions in value.

Visit website
  • React
  • Solidity
  • OpenZeppelin
  • ChainLink
  • UniSwap
The VjkNFT web application showing a selected user annotation.

GOALS

- Group of smart contracts, which will be automated by one contract: VjkNFT.sol.

- Web application to interact (mint button, and steps to follow the automation) and display this contract collection.

The layers sidebar design, now with user profiles.
Multiple user annotations on a shared layer.

SPECIFICATIONS

Swaper.sol: Contract responsible for swapping Wrapped native token for ChainLink token. All automation of our software is done using tools supported by ChainLink. Before starting any process, we need ChainLink Tokens.

APIConsumer.sol: Contract responsible for interviewing Kenny West, and returning us an epic quote, hehe.

VRF.sol: Contract responsible for requesting random numbers using ChainLink VRF, with those numbers, the same contract creates an unique SVG.

VjkNFT.sol: Main contract responsible for automating the process and storing the entire collection of NFTs and remaining ChainLink tokens.

An annotation preview popover with statistics for shape perimeter and area.

MILESTONES

- Create and test each contract individually.

- Make them work as one. After each deployment, ownership of each contract is transferred to the main contract, so only VjkNFT.sol can call the others contracts.

- The application will be divided into two parts:

The first basically consists of a mint button, and steps to follow the automation, which is linked to the wallet browser provider.

And another session, here we use QuickNode, to expose all the pieces in the collection, making it possible for anyone to see it, even if you don`t have a wallet installed.

CONSIDERATIONS

This project was made with a focus on Contracts, Token interactions and events, as how we can do it automatically, however the SVG creation still needs optimization, just creating a simple SVG and storing on chain takes a lot of gas.

Our next milestone would be to integrate with some storage tool. I`m doing some testing with FileCoin, and it looks very promising.