6 releases

new 0.2.0-alpha.1 Nov 15, 2024
0.1.1 Oct 28, 2024
0.1.0-rc Aug 29, 2024
0.0.1 Jun 3, 2024

#12 in #arbitrum

Download history 74/week @ 2024-07-29 9/week @ 2024-08-05 95/week @ 2024-08-26 44/week @ 2024-09-16 21/week @ 2024-09-23 16/week @ 2024-09-30 2/week @ 2024-10-07 148/week @ 2024-10-14 16/week @ 2024-10-21 138/week @ 2024-10-28 16/week @ 2024-11-04

318 downloads per month

MIT license

415KB
7K SLoC

OpenZeppelin Contracts for Arbitrum Stylus

Robust, reliable, and secure smart contracts for the Arbitrum Stylus upgrade.

[!WARNING] Note that contracts is still 0.*.*, so breaking changes may occur at any time. If you must depend on contracts, we recommend pinning to a specific version, i.e., =0.y.z.

Security

Refer to our Security Policy for more details.


lib.rs:

OpenZeppelin Contracts for Stylus

A library for secure smart contract development written in Rust for Arbitrum Stylus. This library offers common smart contract primitives and affordances that take advantage of the nature of Stylus.

Usage

To start using it, add openzeppelin-stylus to your Cargo.toml, or simply run cargo add openzeppelin-stylus.

[dependencies]
openzeppelin-stylus = "x.x.x"

We recommend pinning to a specific version -- expect rapid iteration.

Once defined as a dependency, use one of our pre-defined implementations by importing them:

use stylus_sdk::prelude::*;
use openzeppelin_stylus::token::erc20::Erc20;

sol_storage! {
#[entrypoint]
struct MyContract {
#[borrow]
Erc20 erc20;
}
}

#[public]
#[inherit(Erc20)]
impl MyContract { }

Dependencies

~12MB
~202K SLoC