Welcome to Emerald OZ, the OpenZeppelin for the Flow blockchain created by Emerald City.

This resource is heavily inspired by OpenZeppelin itself, so much credit is due. Emerald OZ intentionally mimics the structure & wording of OpenZeppelin to make it easier for devs to understand the differences between Cadence and Solidity.

If you're new to smart contract development, or new to Cadence in general, head to the Beginner Cadence Course created by us.


Please report any security issues or mistakes you find via the Shield channel in the Emerald City Discord.

Learn More

The guides in the sidebar will teach about different concepts, and how to use the related contracts that Emerald OZ discusses:

  • Account Model: learn how accounts store data, and the differences between Cadence & Solidity.
  • Access Control: decide who can perform each of the actions on your system.
  • Admin Access: how to have special access to user data.
  • Tokens: create tradable assets or collectibles, like the well known FungibleToken (ERC20) and NonFungibleToken (ERC721) standards.