Highlight Smart Contracts: An Introduction

At Highlight, our purpose is to empower creative people and their fan communities to thrive together. We believe that by creating membership communities on the blockchain that are accessible to people new to web3, we enable creators to connect directly with their closest fans, better align incentives on all sides, and unlock new revenue streams that empower creativity.

Problems We Solve

To do this, we built a smart contract architecture that solves the following problems:

  • Cost
    • Smart contract deployment, upgrades, minting, and transferring must be priced low enough that it makes economic sense for mainstream Creators and Fans.
  • Extensibility
    • Smart contracts must be upgradeable over time while maintaining the same contract address on the blockchain.
  • Provenance
    • Creators must own their contracts yet allow Highlight to manage the technical complexities of these contracts on the Creators’ behalf.
  • Interoperability
    • Smart contracts must be interoperable with the rest of the web3 ecosystem, in particular, existing NFT marketplaces.

Cost

To keep costs low, we made two architectural choices.

First, we chose to build on the Polygon blockchain. As a layer 2 Ethereum blockchain, Polygon processes transactions an order of magnitude cheaper than Ethereum (cents vs dollars). Polygon is supported by most parts of the web3 ecosystem, including OpenSea and Alchemy, and has a robust ecosystem including block explorers like Polygonscan, which greatly increases the speed at which we can develop.

Next, to minimize the cost of every new contract deployment, we chose to deploy Creator community contracts using a Beacon proxy design pattern. A Beacon proxy is a contract that proxies calls to a single implementation contract. Deploying a new contract for a community only involves deploying a lightweight, inexpensive proxy contract instead of copying a large implementation contract, which is almost 10 times cheaper than deploying a new implementation.

Extensibility

In addition to lowering costs, the beacon proxy design pattern enables Highlight to update the functionality of smart contracts over time.

We do this by deploying a new implementation contract and updating the beacon proxy of those who wish to upgrade to point at the new implementation. This also allows us to safely test changes to functionality in an incremental manner, as well as to quickly respond to bug reports and add new features. The upgrade process is controlled by a smart wallet which requires multiple signatures for changes to take effect. This ensures that no single bad actor has the ability to change the system in unexpected ways.

Finally, each community supports modules we call “TokenManagers” which are additional smart contracts that can be deployed, swapped, and more. They let creators attach any conceivable on-chain mechanism to their tokens, and more broadly, their communities, after the initial deployment. Each community can be thought of as its own protocol - more on this in the future.

Provenance

Smart contracts are notoriously complex. We believe Creators want to spend their time mastering their craft, not managing the technical complexities of a smart contract (that’s our craft!). Therefore, we created smart contracts with a set of roles and permissions that allow Creators to own their contract while letting Highlight or other third-parties manage it.

On Highlight, Creators fully own the private key that controls their community contract. They do this by logging in with MetaMask or by creating a non-custodial Magic.link wallet. At no point does Highlight have access to a Creators’ or Fans’ private keys.

However, Highlight does maintain permissions to upgrade the contract, mint tokens, send tokens, and swap out some of the lower level business logic within the contract.

We believe this strikes the right balance between Creator provenance and ease of use.

Interoperability

We architected our smart contracts to have best-in-class interoperability with OpenSea, Rarible, and other leading NFT marketplaces from day 1.

To do this, we enabled gas-free listings in our smart contracts. This solves the chicken and egg problem where Fans new to web3 don’t have enough currency to list their NFTs for sale on the open market.

For Creators, collecting royalties from secondary sales is particularly important, since royalty payments can create a revenue stream that can be larger than the initial sale of the NFT. Our smart contracts support multiple royalty standards, including ERC-2981, and contract level metadata, which informs marketplaces where to send royalty payments. This means a Creator will receive income from sales in perpetuity every time an NFT is sold.

Royalties are sent to a custom “royalty splitter” contract we created by forking 0xSplits and modifying it to suit the Highlight protocol. This allows Creators to automatically split royalties between many parties which enables exciting use cases where Creators can collaborate on NFTs with anybody they choose, including Fans, and split the profits indefinitely.

Closing

Smart contracts offer a world of possibilities to both Creators and their Fans. At Highlight, we’re proud to make these innovations more accessible while pushing the boundaries of what’s possible.

There are many more technical details to each of these solutions. In the coming weeks, we will post more detailed technical breakdowns of each. Please subscribe to be notified!

Interested in working on cutting edge smart contract architecture and web3 infrastructure? We’re hiring.

Subscribe to Highlight
Receive the latest updates directly to your inbox.
Verification
This entry has been permanently stored onchain and signed by its creator.