Hi @rex,
Welcome to the community
The ERC777 example shows three types of contracts, each with their own purpose, a token that can be sent and received by other contracts, a sender contract (to send ERC777 token) and a receiver contract (that can receive ERC777 tokens).
OpenZeppelin Contracts can be used on EVM compatible blockchains. See: https://docs.openzeppelin.com/contracts/4.x/
This can include sidechains and Layer 2 networks. You can research which are appropriate blockchains for your use case, based on the tradeoffs of the blockchain, security considerations, development tool support and number and types of users.