StreamHive is a decentralized video e-commerce platform that allows creators to post their content with brand integrations and build a community of followers/viewers around their content. Creators can upload marketing videos for their products, such as reaction or unboxing videos. StreamHive provides the option to either create a live stream and go live with viewers at a given time or post pre-recorded videos.
StreamHive also offers buyers the option to like a stream and follow a creator, creating a social graph with various buyers and creators.
Creators can also create their own social ERC-20 tokens that they can distribute to their viewers/followers/buyers of their products. This enables a variety of use cases for creators. For example, they could routinely airdrop these tokens to users meeting a particular criterion, creating not only brand but also creator affinity.
When a creator launches their token, StreamHive mints 0.1% of the total supply to its own smart contract. This forms the revenue model for StreamHive. Instead of receiving a commission for each sale starting from the first one, StreamHive bids on and becomes a part of the creator’s success. The aim is for creators to be highly successful in their e-commerce ventures, rather than having their earnings clipped starting from the first sale. In the future, these creator tokens could be sent to a Treasury contract wallet, which could be governed by a DAO that would make key executive decisions regarding liquidating these tokens.
StreamHive aims to provide a complete one-stop solution for digital creators looking to launch their own e-commerce ventures.
I mainly faced a challenge designing how the backend of the application would work (Smart Contract + APIs). I decided to put some features like “Following” a user on-chain, while keeping “Like” functionality off-chain.
In addition to this some of the Huddle01 hooks provide flags which didn't update as per the current state of the stream. Also, the documentation doesn't go in depth on these flags returned by the hooks. But what really helped was to be able to check whether a particular function is
isCallable
or not.Also, I am using Livepeer.js for pre-recorded video playback but currently there is no way to customize the
Player
components styles. Had to resort to some CSS hacks to navigate around this.Tracks Applied (4)
Cheering for a project means supporting a project you like with as little as 0.0025 ETH. Right now, you can Cheer using ETH on Arbitrum, Optimism and Base.