-
Notifications
You must be signed in to change notification settings - Fork 382
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
feat(examples): openocean #2678
base: master
Are you sure you want to change the base?
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #2678 +/- ##
==========================================
+ Coverage 60.13% 60.15% +0.02%
==========================================
Files 560 561 +1
Lines 74911 74999 +88
==========================================
+ Hits 45046 45117 +71
- Misses 26490 26504 +14
- Partials 3375 3378 +3
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
@moul @zivkovicmilos how do you think we should proceed with this? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This architecture is not a good nft marketplace example IMO:
- The marketplace (openocean realm) should operate on the grc721 interface and not a specific collection/nft implemementation
- It should only expose marketplace related calls (Sell/Buy/Offer/etc..) and not the underlying grc721 methods
- The marketplace should use some kind of grc721 registry to access collections (see grc20reg for a registry example)
- The marketplace should keep the nfts on sale in escrow
logo string, | ||
avaiableTokens uint64, | ||
) { | ||
caller := std.GetOrigCaller() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is insecure, use std.PrevRealm().Addr()
instead of std.GetOrigCaller()
see https://docs.gno.land/concepts/effective-gno#contract-level-access-control
This PR integrates the Openocean gno files into the main gnoland repository.
I created this project alongside Alex to learn more about nfts for our program student.
You can find a link for the dapp here: https://gnopenocean.netlify.app/ , we still have a few fix to do when a user needs to switch network but overall it works pretty fine.
Packages added:
Realms added:
Relevant packages used: