You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/content/docs/en/developers/guides/canvas-badge-integration.mdx
+7-7Lines changed: 7 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -26,15 +26,15 @@ Canvas is an open onchain profile database of user identities and achievements (
26
26
27
27
### Badge
28
28
29
-
**Badges** are attestations of identities, achievements and traits verified through the [Ethereum Attestation Service](https://scroll.easscan.org/learn/scroll), issued**permissionlessly by different ecosystem projects**. Badges are wallet-bound and non-transferable. **Badges facilitate interactions between ecosystem projects and users**.
29
+
**Badges** are attestations of identities, achievements and traits issued through the [Ethereum Attestation Service](https://scroll.easscan.org/learn/scroll)**permissionlessly by different ecosystem projects**. Badges are wallet-bound and non-transferable. **Badges facilitate interactions between ecosystem projects and users**.
30
30
31
31
Developers can issue badges in three methods:
32
32
33
33
| Issuance Method |**Description**|**Example**|
34
34
| --- | --- | --- |
35
35
|`Permissionless`| Badge checks eligibility based on smart contract. | Badges attest to the completion of an on-chain transaction or holding of an NFT. |
36
36
|`Backend-authorized`| Badge checks eligibility based on the issuer’s API. | Badges attest to the completion of off-chain actions or a certain allow list. |
37
-
|`Gifted`|Badges checks eligibility based on the issuer’s API and **automatically** sends the badges to users’ canvas. There is no minting required for users to display the badge. | Badges attest to the ownership or paid membership on other platforms / chains. |
37
+
|`Gifted`|Badge checks eligibility based on the issuer’s API and **automatically** sends the badges to users’ canvas. There is no minting required for users to display the badge. | Badges attest to the ownership or paid membership on other platforms / chains. |
38
38
39
39
Developers can design badges in two ways:
40
40
@@ -47,8 +47,8 @@ Developers can design badges in two ways:
47
47
48
48
Badge issuance and deployment of the contract is fully permissionless. Please follow the steps below to issue a Badge for your project.
49
49
50
-
<Asidetype="note"title="Join Developer Support Channel">
51
-
For Canvas and badge questions, please join [Scroll dev support channel](https://discord.com/invite/scroll)
50
+
<Asidetype="note"title="Join the Developer Support Channel">
51
+
For Canvas and badge questions, please join the [Scroll dev support channel](https://discord.com/invite/scroll)
52
52
</Aside>
53
53
54
54
## Step 1 `Design`: Badge Design Guidelines
@@ -71,7 +71,7 @@ For Canvas and badge questions, please join [Scroll dev support channel](https:/
71
71
| Name | Name your badge to be *descriptive and creative*|
72
72
| Description | Brief description of the *purpose* of this badge and *who is eligible*|
73
73
| Structure |*One single attribute*<br/> *Multiple Badges with levels* trigged by different actions and traits |
74
-
| Category |*Achievement*: tasks you have done. e.g. Scroll Origin NFTs, tasks completion badge <br/> *Identities*: who you are. e.g. Ethereum year, GItcoin passport, NFT community badge |
74
+
| Category |*Achievement*: tasks you have done. e.g. Scroll Origin NFTs, tasks completion badge <br/> *Identities*: who you are. e.g. Ethereum year, Gitcoin passport, NFT community badge |
75
75
| Issuance method |*Fully permissionless*: meaning your badge can be automatically issued by checking smart contract conditions <br/> *Gifted*: Badges can also be issues with no user interaction, requires APIs <br/> *Backend-authorized*: requires APIs to enable eligibility criteria |
76
76
| Support link |*Support channel link* to your Discord/Telegram group |
77
77
@@ -147,12 +147,12 @@ Since **badges are permissionless**, Scroll Foundation may not troubleshoot indi
147
147
```
148
148
</ToggleElement>
149
149
150
-
4.**Access Readiness**: Ensure badge contract address implements `defaultTokenURI`, allowing retrieval of default display data (`name, image, description`) via `bytes32(0)` with informative name and description.
150
+
4.**Access Readiness**: Ensure your badge contract implements `ScrollBadgeDefaultURI`, allowing retrieval of default display data (`name, image, description, issuerName `) via `bytes32(0)` with informative name and description.
151
151
5.**Set up support**: Prepare a channel for your badge holders can find you for support, get the url to join that channel ready.
152
152
153
153
## Step 3 `Test`: Sanity Check
154
154
155
-
1. Once your badge has been deployed on Scroll, you can auto-check some of these requirements by running `yarn check-badge`.([link to check badge script](https://github.com/scroll-tech/canvas-contracts/blob/master/script/CheckBadge.s.sol))
155
+
1. Once your badge has been deployed on Scroll, you can auto-check some (but not all) of these requirements by running `yarn check-badge`([link to check badge script](https://github.com/scroll-tech/canvas-contracts/blob/master/script/CheckBadge.s.sol)).
156
156
- If your badge minting transaction reverts, we recommend debugging using `cast`:
0 commit comments