project screenshot 1
project screenshot 2
project screenshot 3
project screenshot 4
project screenshot 5

Fractal

Fractal is a decentralized broadcasting service that allows users to contact holders of their NFTs!

Fractal

Created At

ETHNewYork 2022

Winner of

trophy

🏊‍♂️ Pocket — Pool Prize

trophy

🥈 Covalent — Best Use

Project Description

Fractal is a decentralized broadcasting service that allows users to reach holders of any NFTs! Powered by EPNS, users can now send messages to all the holders of any NFT tokens in less than a minute.

A user would have to input the NFT contract address, its chain, and a text message to broadcast. This NFT data inputted is passed on to Covalent API to query the wallet addresses of all the NFT holders. The user-given message is then broadcasted to all these addresses using EPNS SDK.

Fractal allows broadcasting for large-scale events, like EthNyc, to reach out to their audiences within a second with just one universal NFT rather than making a server on Discord, Slack, etc, which requires a centralized authority to run communications!

This project can be scaled in 3 ways in future. First, it can be scaled to various other blockchains like Solana, Tezos, etc and to other token standards as well like ERC20, SBTs, IBTs, etc. Secondly, other media types like audio, and video can be broadcasted. Thirdly, our app can provide aggregated addresses of community based on their interests and past on-chain activities. For example, all users supporting the climate change can be reached.

How it's Made

Fractal is a simple yet powerful program. The front-end is built on basic HTML/CSS, but will be optimized in the future with React.js integration and MetaMask API to refrain from users having to type their contract addresses. Moreover, in terms of the backend, both JS and Python were used. Python was originally used to query the Ethereum blockchain to find smart contract holders given a smart contract address using Covalent. It was then integrated into JS, which allowed for the addresses quarried from Covalent for a given address to be able to receive messages via EPNS' notification system. Covalent played a huge role in helping us query the blockchain, otherwise, there was no way for us to fetch token or NFT holders given a contract address. The other main purpose of JS was to use EPNS and to handle notification sending across all users. EPNS allowed us to send messages in a more organized and quick way with their notification system making our project simple but powerful in telecommunications. Finally, we of course cannot forget Pocket Network that serves as the fundamental base for our security. To ensure that there are no bots, we have implemented a small protocol with web3.js, that checks if the smart contract address and holder addresses are real or not, which is powered by the Pocket Network. Most of our applications have a rpc node connected to Pocket Network to allow for a true-decentralized program. Although this is a small program for a 36 hour hackathon, we are extremely happy to submit a project given the deadline as it was two developers rather than 5. It was our first time being present at an EthGlobal Hackathon, and so we spent over a day trying to think of an idea. Nevertheless, it was a great fun and we learned a lot about web3 and what we can improve on for the next Ethglobal competition.

background image mobile

Join the mailing list

Get the latest news and updates