Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remix plugin link rename #78

Merged
merged 1 commit into from
Sep 19, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions src/ch00-01-variables.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ Here's a simple example of a contract with only local variables:
```rust
{{#include ../listings/ch00-introduction/variables/src/local_variables.cairo}}
```
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x015B3a10F9689BeD741Ca3C210017BC097122CeF76f3cAA191A20ff8b9b56b96) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet-cairo1-compiler&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/variables/src/local_variables.cairo).
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x015B3a10F9689BeD741Ca3C210017BC097122CeF76f3cAA191A20ff8b9b56b96) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/variables/src/local_variables.cairo).

## Storage Variables

Expand All @@ -38,7 +38,7 @@ Here's a simple example of a contract with one storage variable:
```rust
{{#include ../listings/ch00-introduction/variables/src/storage_variables.cairo}}
```
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x06eA827B32875483709b785A7F9e846a52776Cd8D42C3fE696218c2624b0DCCa) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet-cairo1-compiler&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/variables/src/storage_variables.cairo).
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x06eA827B32875483709b785A7F9e846a52776Cd8D42C3fE696218c2624b0DCCa) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/variables/src/storage_variables.cairo).

## Global Variables

Expand All @@ -51,4 +51,4 @@ For example, the `get_caller_address` function returns the address of the caller
```rust
{{#include ../listings/ch00-introduction/variables/src/global_variables.cairo}}
```
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x05bD2F3943bd4e030f85678b55b2EC2C1be939e32388530FB20ED967B3Be433F) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet-cairo1-compiler&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/variables/src/global_variables.cairo).
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x05bD2F3943bd4e030f85678b55b2EC2C1be939e32388530FB20ED967B3Be433F) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/variables/src/global_variables.cairo).
6 changes: 3 additions & 3 deletions src/ch00-02-errors.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ Here's a simple example that demonstrates the use of these functions:
```rust
{{#include ../listings/ch00-introduction/errors/src/simple_errors.cairo}}
```
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x0022664463FF0b711CC9B549a9E87d65A0882bB1D29338C4108696B8F2216a40) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet-cairo1-compiler&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/errors/src/simple_errors.cairo).
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x0022664463FF0b711CC9B549a9E87d65A0882bB1D29338C4108696B8F2216a40) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/errors/src/simple_errors.cairo).

## Custom errors

Expand All @@ -27,7 +27,7 @@ You can make error handling easier by defining your error codes in a specific mo
```rust
{{#include ../listings/ch00-introduction/errors/src/custom_errors.cairo}}
```
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x0501CD5da5B453a18515B5A20b8029bd7583DFE7a399ad9f79c284F7829e4A57) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet-cairo1-compiler&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/errors/src/custom_errors.cairo).
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x0501CD5da5B453a18515B5A20b8029bd7583DFE7a399ad9f79c284F7829e4A57) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/errors/src/custom_errors.cairo).

## Vault example

Expand All @@ -36,4 +36,4 @@ Here's another example that demonstrates the use of errors in a more complex con
```rust
{{#include ../listings/ch00-introduction/errors/src/vault_errors.cairo}}
```
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x020C2da26F42A28Ef54ED428eF1810FE433784b055f9bF315C5d992b1579C268) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet-cairo1-compiler&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/errors/src/vault_errors.cairo).
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x020C2da26F42A28Ef54ED428eF1810FE433784b055f9bF315C5d992b1579C268) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/errors/src/vault_errors.cairo).
4 changes: 2 additions & 2 deletions src/ch00-03-calling_other_contracts.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,9 @@ In order to call other contracts using dispatchers, you will need to define the
```rust
{{#include ../listings/ch00-introduction/calling_other_contracts/src/callee.cairo}}
```
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x015c3Bb6D0DE26b64FEAF9A8f4655CfADb5c128bF4510398972704ee12775DB1) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet-cairo1-compiler&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/calling_other_contracts/src/callee.cairo).
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x015c3Bb6D0DE26b64FEAF9A8f4655CfADb5c128bF4510398972704ee12775DB1) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/calling_other_contracts/src/callee.cairo).

```rust
{{#include ../listings/ch00-introduction/calling_other_contracts/src/caller.cairo}}
```
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x05fa8aF796343d2f22c53C17149386b67B7AC4aB52D9e308Aa507C185aA44778) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet-cairo1-compiler&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/calling_other_contracts/src/caller.cairo).
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x05fa8aF796343d2f22c53C17149386b67B7AC4aB52D9e308Aa507C185aA44778) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/calling_other_contracts/src/caller.cairo).
2 changes: 1 addition & 1 deletion src/ch00-06-mappings.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,4 @@ Some additional notes:
```rust
{{#include ../listings/ch00-introduction/mappings/src/mappings.cairo}}
```
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x06214AB4c23Cc545bf2221D465eB83aFb7412779AD498BD48a724B3F645E3505) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet-cairo1-compiler&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/mappings/src/mappings.cairo).
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x06214AB4c23Cc545bf2221D465eB83aFb7412779AD498BD48a724B3F645E3505) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/mappings/src/mappings.cairo).
2 changes: 1 addition & 1 deletion src/ch00-07-constructor.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,4 @@ Here's a simple example that demonstrates how to initialize the state of a contr
```rust
{{#include ../listings/ch00-introduction/constructor/src/lib.cairo}}
```
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x017fd6558e67451dA583d123D77F4e2651E91502D08F8F8432355293b11e1f8F) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet-cairo1-compiler&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/constructor/src/lib.cairo).
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x017fd6558e67451dA583d123D77F4e2651E91502D08F8F8432355293b11e1f8F) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/constructor/src/lib.cairo).
2 changes: 1 addition & 1 deletion src/ch00-08-visibility-mutability.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,4 +27,4 @@ Let's take a look at a simple example contract to see these in action:
```rust
{{#include ../listings/ch00-introduction/visibility/src/visibility.cairo}}
```
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x0071dE3093AB58053b0292C225aa0eED40293e7694A0042685FF6D813d39889F) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet-cairo1-compiler&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/visibility/src/visibility.cairo).
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x0071dE3093AB58053b0292C225aa0eED40293e7694A0042685FF6D813d39889F) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/visibility/src/visibility.cairo).
2 changes: 1 addition & 1 deletion src/ch00-10-events.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,4 @@ Here's a simple example of a contract using events that emit an event each time
```rust
{{#include ../listings/ch00-introduction/events/src/counter.cairo}}
```
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x022e3B59518EA04aBb5da671ea04ecC3a154400f226d2Df38eFE146741b9E2F6) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet-cairo1-compiler&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/events/src/counter.cairo).
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x022e3B59518EA04aBb5da671ea04ecC3a154400f226d2Df38eFE146741b9E2F6) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/events/src/counter.cairo).
2 changes: 1 addition & 1 deletion src/ch00-11-counter.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,4 @@ Here's how it works:
```rust
{{#include ../listings/ch00-introduction/counter/src/counter.cairo}}
```
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x01664a69Fe701a1df7Bb0ae4A353792d0cf4E27146ee860075cbf6108b1D5718) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet-cairo1-compiler&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/counter/src/counter.cairo).
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x01664a69Fe701a1df7Bb0ae4A353792d0cf4E27146ee860075cbf6108b1D5718) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/counter/src/counter.cairo).
2 changes: 1 addition & 1 deletion src/ch00-12-storing-custom-types.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,4 @@ While native types can be stored in a contract's storage without any additional
{{#include ../listings/ch00-introduction/storing_custom_types/src/lib.cairo}}
```

Play with this contract in [Remix](https://remix.ethereum.org/?#activate=Starknet-cairo1-compiler&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/storing_custom_types/src/lib.cairo).
Play with this contract in [Remix](https://remix.ethereum.org/?#activate=Starknet&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/storing_custom_types/src/lib.cairo).
2 changes: 1 addition & 1 deletion src/ch00-13-custom-types-in-entrypoints.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,4 @@ Thankfully, we can just derive the `Serde` trait for our custom type.
{{#include ../listings/ch00-introduction/custom_type_serde/src/lib.cairo}}
```

Play with this contract in [Remix](https://remix.ethereum.org/?#activate=Starknet-cairo1-compiler&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/custom_type_serde/src/lib.cairo).
Play with this contract in [Remix](https://remix.ethereum.org/?#activate=Starknet&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/custom_type_serde/src/lib.cairo).
6 changes: 3 additions & 3 deletions src/ch00-14-interfaces-traits.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,15 +19,15 @@ In summary, there's two ways to handle interfaces:
{{#include ../listings/ch00-introduction/interfaces_traits/src/explicit.cairo:code}}
```

Play with this contract in [Remix](https://remix.ethereum.org/?#activate=Starknet-cairo1-compiler&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/interfaces_traits/src/explicit.cairo).
Play with this contract in [Remix](https://remix.ethereum.org/?#activate=Starknet&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/interfaces_traits/src/explicit.cairo).

## Implicit interface

```rust
{{#include ../listings/ch00-introduction/interfaces_traits/src/implicit.cairo:code}}
```

Play with this contract in [Remix](https://remix.ethereum.org/?#activate=Starknet-cairo1-compiler&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/interfaces_traits/src/implicit.cairo).
Play with this contract in [Remix](https://remix.ethereum.org/?#activate=Starknet&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/interfaces_traits/src/implicit.cairo).

> Note: You can import an implicitly generated contract interface with `use contract::{GeneratedContractInterface}`. However, the `Dispatcher` will not be generated automatically.

Expand All @@ -40,4 +40,4 @@ Since this trait is generated in the context of the contract, you can define pur
{{#include ../listings/ch00-introduction/interfaces_traits/src/implicit_internal.cairo:code}}
```

Play with this contract in [Remix](https://remix.ethereum.org/?#activate=Starknet-cairo1-compiler&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/interfaces_traits/src/implicit_internal.cairo).
Play with this contract in [Remix](https://remix.ethereum.org/?#activate=Starknet&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/interfaces_traits/src/implicit_internal.cairo).
2 changes: 1 addition & 1 deletion src/ch00-15-contract-testing.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ Now, take a look at the tests for this contract:
{{#include ../listings/ch00-introduction/testing/src/lib.cairo:test}}
```

Play with this contract in [Remix](https://remix.ethereum.org/?#activate=Starknet-cairo1-compiler&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/testing/src/lib.cairo).
Play with this contract in [Remix](https://remix.ethereum.org/?#activate=Starknet&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch00-introduction/testing/src/lib.cairo).

To define our test, we use scarb, which allows us to create a separate module guarded with `#[cfg(test)]`. This ensures that the test module is only compiled when running tests using `scarb test`.

Expand Down
2 changes: 1 addition & 1 deletion src/ch01-01-write_to_any_slot.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,4 @@ In the following example, we use the Poseidon hash function to compute the addre
```rust
{{#include ../listings/ch01-advanced-concepts/write_to_any_slot/src/write_any_slot.cairo}}
```
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x033943CB781A4E63C9dcE0A1A09eAa3b617AA43CC61637C08c043a67f3fe0087) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet-cairo1-compiler&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch01-advanced-concepts/write_to_any_slot/src/write_any_slot.cairo).
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x033943CB781A4E63C9dcE0A1A09eAa3b617AA43CC61637C08c043a67f3fe0087) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch01-advanced-concepts/write_to_any_slot/src/write_any_slot.cairo).
2 changes: 1 addition & 1 deletion src/ch01-02-storing_arrays.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,5 +15,5 @@ You can then import this implementation in your contract and use it to store arr
```rust
{{#include ../listings/ch01-advanced-concepts/storing_arrays/src/storing_arrays.cairo:StoreArrayContract}}
```
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x008F8069a3Fcd7691Db46Dc3b6F9D2C0436f9200E861330957Fd780A3595da86) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet-cairo1-compiler&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch01-advanced-concepts/storing_arrays/src/storing_arrays.cairo).
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x008F8069a3Fcd7691Db46Dc3b6F9D2C0436f9200E861330957Fd780A3595da86) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch01-advanced-concepts/storing_arrays/src/storing_arrays.cairo).

2 changes: 1 addition & 1 deletion src/ch01-03-struct-mapping-key.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,4 @@ type `Pet` as a key in a `LegacyMap`. The `Pet` struct has three fields: `name`,
{{#include ../listings/ch01-advanced-concepts/struct_as_mapping_key/src/contract.cairo}}
```

Play with this contract in [Remix](https://remix.ethereum.org/?#activate=Starknet-cairo1-compiler&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch01-advanced-concepts/struct_as_mapping_key/src/contract.cairo).
Play with this contract in [Remix](https://remix.ethereum.org/?#activate=Starknet&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch01-advanced-concepts/struct_as_mapping_key/src/contract.cairo).
4 changes: 2 additions & 2 deletions src/ch02-01-upgradeable_contract.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,11 +25,11 @@ Start by deploying `UpgradeableContract_V0` as the initial version. Next, send a
```rust
{{#include ../listings/ch02-applications/upgradeable_contract/src/upgradeable_contract_v0.cairo}}
```
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x005300003ade5d10447d941a42d48b7141074cd8bade2b16520684896a5090ea) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet-cairo1-compiler&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch02-applications/upgradeable_contract/src/upgradeable_contract_v0.cairo).
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x005300003ade5d10447d941a42d48b7141074cd8bade2b16520684896a5090ea) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch02-applications/upgradeable_contract/src/upgradeable_contract_v0.cairo).


```rust
{{#include ../listings/ch02-applications/upgradeable_contract/src/upgradeable_contract_v1.cairo}}
```
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x017c86152badd1d665b9836571bd6b0a484f028748aa13d9b2d5d9c9192fafc6) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet-cairo1-compiler&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch02-applications/upgradeable_contract/src/upgradeable_contract_v1.cairo).
Visit contract on [Voyager](https://goerli.voyager.online/contract/0x017c86152badd1d665b9836571bd6b0a484f028748aa13d9b2d5d9c9192fafc6) or play with it in [Remix](https://remix.ethereum.org/?#activate=Starknet&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch02-applications/upgradeable_contract/src/upgradeable_contract_v1.cairo).

2 changes: 1 addition & 1 deletion src/ch02-02-simple_vault.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,4 @@ Here's how it works:
{{#include ../listings/ch02-applications/simple_vault/src/simple_vault.cairo}}
```

Play with this contract in [Remix](https://remix.ethereum.org/?#activate=Starknet-cairo1-compiler&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch02-applications/simple_vault/src/simple_vault.cairo).
Play with this contract in [Remix](https://remix.ethereum.org/?#activate=Starknet&url=https://github.com/NethermindEth/StarknetByExample/blob/main/listings/ch02-applications/simple_vault/src/simple_vault.cairo).