Skip to content
Open
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
41 changes: 36 additions & 5 deletions docs/build/smart-contracts/example-contracts/TEMPLATE.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -147,15 +147,45 @@ target/wasm32v1-none/release/soroban_hello_world_contract.wasm

## Run the Contract

If you have [`stellar-cli`] installed, you can invoke contract functions using it.
If you have [`stellar-cli`] installed, you can deploy the contract and invoke its functions.

### Deploy

<Tabs groupId="platform" defaultValue={getPlatform()}>
<TabItem value="unix" label="macOS/Linux">

```sh
stellar contract invoke \
stellar contract deploy \
--wasm target/wasm32v1-none/release/soroban_hello_world_contract.wasm \
--id 1 \
--alias hello \
--source-account alice \
--network testnet
```

</TabItem>
<TabItem value="windows" label="Windows (PowerShell)">

```powershell
stellar contract deploy `
--wasm target/wasm32v1-none/release/soroban_hello_world_contract.wasm `
--alias hello `
--source-account alice `
--network testnet
```

</TabItem>
</Tabs>

### Invoke

<Tabs groupId="platform" defaultValue={getPlatform()}>
<TabItem value="unix" label="macOS/Linux">

```sh
stellar contract invoke \
--id hello \
--source-account alice \
--network testnet \
-- \
hello \
--to Soroban
Expand All @@ -166,8 +196,9 @@ stellar contract invoke \

```powershell
stellar contract invoke `
--wasm target/wasm32v1-none/release/soroban_hello_world_contract.wasm `
--id 1 `
--id hello `
--source-account alice `
--network testnet `
-- `
hello `
--to Soroban
Expand Down
107 changes: 68 additions & 39 deletions docs/build/smart-contracts/example-contracts/auth.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -303,13 +303,13 @@ target/wasm32v1-none/release/soroban_auth_contract.wasm

## Run the Contract

If you have [`stellar-cli`] installed, you can invoke functions on the contract.
If you have [`stellar-cli`] installed, you can deploy the contract and invoke its functions.

But since we are dealing with authorization and signatures, we need to set up some identities to use for testing and get their public keys:

```sh
stellar keys generate acc1
stellar keys generate acc2
stellar keys generate acc1 --network testnet
stellar keys generate acc2 --network testnet
stellar keys address acc1
stellar keys address acc2
```
Expand All @@ -321,16 +321,45 @@ GA6S566FD3EQDUNQ4IGSLXKW3TGVSTQW3TPHPGS7NWMCEIPBOKTNCSRU
GAJGHZ44IJXYFNOVRZGBCVKC2V62DB2KHZB7BEMYOWOLFQH4XP2TAM6B
```

### Deploy

<Tabs groupId="platform" defaultValue={getPlatform()}>
<TabItem value="unix" label="macOS/Linux">

```sh
stellar contract deploy \
--wasm target/wasm32v1-none/release/soroban_auth_contract.wasm \
--alias auth \
--source-account acc1 \
--network testnet
```

</TabItem>
<TabItem value="windows" label="Windows (PowerShell)">

```powershell
stellar contract deploy `
--wasm target/wasm32v1-none/release/soroban_auth_contract.wasm `
--alias auth `
--source-account acc1 `
--network testnet
```

</TabItem>
</Tabs>

### Invoke

Now the contract itself can be invoked. Notice the `--source-account` must be the identity name matching the address passed to the `--user` argument. This allows `Stellar CLI` to automatically sign the necessary payload for the invocation.

<Tabs groupId="platform" defaultValue={getPlatform()}>
<TabItem value="unix" label="macOS/Linux">

```sh
stellar contract invoke \
--id auth \
--source-account acc1 \
--wasm target/wasm32v1-none/release/soroban_auth_contract.wasm \
--id 1 \
--network testnet \
-- \
increment \
--user GA6S566FD3EQDUNQ4IGSLXKW3TGVSTQW3TPHPGS7NWMCEIPBOKTNCSRU \
Expand All @@ -342,9 +371,9 @@ stellar contract invoke \

```powershell
stellar contract invoke `
--id auth `
--source-account acc1 `
--wasm target/wasm32v1-none/release/soroban_auth_contract.wasm `
--id 1 `
--network testnet `
-- `
increment `
--user GA6S566FD3EQDUNQ4IGSLXKW3TGVSTQW3TPHPGS7NWMCEIPBOKTNCSRU `
Expand All @@ -361,9 +390,9 @@ Run a few more increments for both accounts.

```sh
stellar contract invoke \
--id auth \
--source-account acc2 \
--wasm target/wasm32v1-none/release/soroban_auth_contract.wasm \
--id 1 \
--network testnet \
-- \
increment \
--user GAJGHZ44IJXYFNOVRZGBCVKC2V62DB2KHZB7BEMYOWOLFQH4XP2TAM6B \
Expand All @@ -372,9 +401,9 @@ stellar contract invoke \

```sh
stellar contract invoke \
--id auth \
--source-account acc1 \
--wasm target/wasm32v1-none/release/soroban_auth_contract.wasm \
--id 1 \
--network testnet \
-- \
increment \
--user GA6S566FD3EQDUNQ4IGSLXKW3TGVSTQW3TPHPGS7NWMCEIPBOKTNCSRU \
Expand All @@ -383,9 +412,9 @@ stellar contract invoke \

```sh
stellar contract invoke \
--id auth \
--source-account acc2 \
--wasm target/wasm32v1-none/release/soroban_auth_contract.wasm \
--id 1 \
--network testnet \
-- \
increment \
--user GAJGHZ44IJXYFNOVRZGBCVKC2V62DB2KHZB7BEMYOWOLFQH4XP2TAM6B \
Expand All @@ -396,35 +425,35 @@ stellar contract invoke \
<TabItem value="windows" label="Windows (PowerShell)">

```powershell
stellar contract invoke \
--source-account acc2 \
--wasm target/wasm32v1-none/release/soroban_auth_contract.wasm \
--id 1 \
-- \
increment \
--user GAJGHZ44IJXYFNOVRZGBCVKC2V62DB2KHZB7BEMYOWOLFQH4XP2TAM6B \
stellar contract invoke `
--id auth `
--source-account acc2 `
--network testnet `
-- `
increment `
--user GAJGHZ44IJXYFNOVRZGBCVKC2V62DB2KHZB7BEMYOWOLFQH4XP2TAM6B `
--value 5
```

```powershell
stellar contract invoke \
--source-account acc1 \
--wasm target/wasm32v1-none/release/soroban_auth_contract.wasm \
--id 1 \
-- \
increment \
--user GA6S566FD3EQDUNQ4IGSLXKW3TGVSTQW3TPHPGS7NWMCEIPBOKTNCSRU \
stellar contract invoke `
--id auth `
--source-account acc1 `
--network testnet `
-- `
increment `
--user GA6S566FD3EQDUNQ4IGSLXKW3TGVSTQW3TPHPGS7NWMCEIPBOKTNCSRU `
--value 3
```

```powershell
stellar contract invoke \
--source-account acc2 \
--wasm target/wasm32v1-none/release/soroban_auth_contract.wasm \
--id 1 \
-- \
increment \
--user GAJGHZ44IJXYFNOVRZGBCVKC2V62DB2KHZB7BEMYOWOLFQH4XP2TAM6B \
stellar contract invoke `
--id auth `
--source-account acc2 `
--network testnet `
-- `
increment `
--user GAJGHZ44IJXYFNOVRZGBCVKC2V62DB2KHZB7BEMYOWOLFQH4XP2TAM6B `
--value 10
```

Expand All @@ -434,7 +463,7 @@ stellar contract invoke \
View the data that has been stored against each user with `stellar contract read`.

```sh
stellar contract read --id 1
stellar contract read --id auth --network testnet
```

```
Expand All @@ -449,10 +478,10 @@ It is also possible to preview the authorization payload that is being signed by

```sh
stellar contract invoke \
--id auth \
--source-account acc2 \
--network testnet \
--auth \
--wasm target/wasm32v1-none/release/soroban_auth_contract.wasm \
--id 1 \
-- \
increment \
--user GAJGHZ44IJXYFNOVRZGBCVKC2V62DB2KHZB7BEMYOWOLFQH4XP2TAM6B \
Expand All @@ -464,10 +493,10 @@ stellar contract invoke \

```powershell
stellar contract invoke `
--id auth `
--source-account acc2 `
--network testnet `
--auth `
--wasm target/wasm32v1-none/release/soroban_auth_contract.wasm `
--id 1 `
-- `
increment `
--user GAJGHZ44IJXYFNOVRZGBCVKC2V62DB2KHZB7BEMYOWOLFQH4XP2TAM6B `
Expand Down
41 changes: 36 additions & 5 deletions docs/build/smart-contracts/example-contracts/events.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -280,15 +280,45 @@ target/wasm32v1-none/release/soroban_events_contract.wasm

## Run the Contract

If you have [`stellar-cli`] installed, you can invoke contract functions in the using it.
If you have [`stellar-cli`] installed, you can deploy the contract and invoke its functions.

### Deploy

<Tabs groupId="platform" defaultValue={getPlatform()}>
<TabItem value="unix" label="macOS/Linux">

```sh
stellar contract invoke \
stellar contract deploy \
--wasm target/wasm32v1-none/release/soroban_events_contract.wasm \
--id 1 \
--alias events \
--source-account alice \
--network testnet
```

</TabItem>
<TabItem value="windows" label="Windows (PowerShell)">

```powershell
stellar contract deploy `
--wasm target/wasm32v1-none/release/soroban_events_contract.wasm `
--alias events `
--source-account alice `
--network testnet
```

</TabItem>
</Tabs>

### Invoke

<Tabs groupId="platform" defaultValue={getPlatform()}>
<TabItem value="unix" label="macOS/Linux">

```sh
stellar contract invoke \
--id events \
--source-account alice \
--network testnet \
-- \
increment
```
Expand All @@ -298,8 +328,9 @@ stellar contract invoke \

```powershell
stellar contract invoke `
--wasm target/wasm32v1-none/release/soroban_events_contract.wasm `
--id 1 `
--id events `
--source-account alice `
--network testnet `
-- `
increment
```
Expand Down
41 changes: 36 additions & 5 deletions docs/build/smart-contracts/example-contracts/liquidity-pool.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -842,15 +842,45 @@ target/wasm32v1-none/release/soroban_liquidity_pool_contract.wasm

## Run the Contract

If you have [`stellar-cli`] installed, you can invoke contract functions using it.
If you have [`stellar-cli`] installed, you can deploy the contract and invoke its functions.

### Deploy

<Tabs groupId="platform" defaultValue={getPlatform()}>
<TabItem value="unix" label="macOS/Linux">

```sh
stellar contract invoke \
stellar contract deploy \
--wasm target/wasm32v1-none/release/soroban_liquidity_pool_contract.wasm \
--id 1 \
--alias liquidity-pool \
--source-account alice \
--network testnet
```

</TabItem>
<TabItem value="windows" label="Windows (PowerShell)">

```powershell
stellar contract deploy `
--wasm target/wasm32v1-none/release/soroban_liquidity_pool_contract.wasm `
--alias liquidity-pool `
--source-account alice `
--network testnet
```

</TabItem>
</Tabs>

### Invoke

<Tabs groupId="platform" defaultValue={getPlatform()}>
<TabItem value="unix" label="macOS/Linux">

```sh
stellar contract invoke \
--id liquidity-pool \
--source-account alice \
--network testnet \
-- \
deposit \
--to GBZV3NONYSUDVTEHATQO4BCJVFXJO3XQU5K32X3XREVZKSMMOZFO4ZXR \
Expand All @@ -865,8 +895,9 @@ stellar contract invoke \

```powershell
stellar contract invoke `
--wasm target/wasm32v1-none/release/soroban_liquidity_pool_contract.wasm `
--id 1 `
--id liquidity-pool `
--source-account alice `
--network testnet `
-- `
deposit `
--to GBZV3NONYSUDVTEHATQO4BCJVFXJO3XQU5K32X3XREVZKSMMOZFO4ZXR `
Expand Down
Loading