Sobre o projeto

OpenZeppelin Contracts é uma biblioteca amplamente utilizada para o desenvolvimento seguro de contratos inteligentes na Ethereum e em outras blockchains compatíveis com EVM. Ela oferece implementações validadas pela comunidade de padrões populares de tokens, como ERC20, ERC721, ERC1155 e ERC6909, juntamente com permissões flexíveis baseadas em funções (controle de acesso) e utilitários Solidity reutilizáveis para construir contratos personalizados e sistemas descentralizados complexos. A biblioteca é versionada usando versionamento semântico, e o layout de armazenamento é considerado incompatível entre versões principais, portanto, atualizações entre versões principais (por exemplo, de 4.9.3 para 5.0.0) são inseguras sem migração. As tags do NPM distinguem versões auditadas (`latest`), versões finais, mas não auditadas (`dev`), e candidatas a lançamento (`next`). A instalação é suportada via npm para projetos Hardhat e via git para Foundry, com avisos claros contra o uso da branch `master` para produção. O uso envolve importar contratos diretamente no código Solidity, e a biblioteca é projetada para implantar apenas os contratos e funções que você realmente usa, minimizando os custos de gás. O projeto inclui documentação extensa, guias sobre controle de acesso, tokens e utilitários, e uma referência completa da API. A segurança é um foco principal, com uma política de segurança detalhada, um programa de recompensas por bugs na Immunefi e auditorias passadas disponíveis no repositório. A biblioteca é lançada sob a Licença MIT e é mantida pela OpenZeppelin.