-
Notifications
You must be signed in to change notification settings - Fork 16
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: on-chain permissioned launchpad #1024
Draft
hthieu1110
wants to merge
337
commits into
main
Choose a base branch
from
feat/cosmwasm-launchpad
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
✅ Deploy Preview for testitori ready!
To edit notification comments on pull requests, go to your Netlify site configuration. |
✅ Deploy Preview for teritori-dapp ready!
To edit notification comments on pull requests, go to your Netlify site configuration. |
n0izn0iz
changed the title
wi: init cosmwasm contract
feat: on-chain permissioned launchpad
Mar 4, 2024
n0izn0iz
reviewed
Mar 19, 2024
api/launchpad/v1/launchpad.proto
Outdated
Comment on lines
114
to
118
uint64 whitelist_unit_price = 36; | ||
string whitelist_limit_per_address = 37; | ||
uint32 whitelist_member_limit = 38; | ||
uint64 whitelist_start_time = 39; | ||
uint64 whitelist_end_time = 40; |
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 should be an array of whitelist periods, we already have this in some collections
WaDadidou
force-pushed
the
feat/cosmwasm-launchpad
branch
from
March 27, 2024 13:48
c396913
to
8c933dd
Compare
…/teritori-dapp into feat/cosmwasm-launchpad
…/teritori-dapp into feat/cosmwasm-launchpad
…unchpad Admin screen and deploy_collection
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
1. Contract
2. Service
2.a. Collections/Projects Status
2.a.1. INCOMPLETE
(DB) The
collection_data
fromlaunchpad_project
doesn't have ametadatas_merkle_root
.The user has to Complete the collection (See
UploadMetadatas
endpoint) that he can found on my-collections page (SeeCollectionsByCreator
endpoint)2.a.2. COMPLETE
(DB) The
collection_data
fromlaunchpad_project
has ametadatas_merkle_root
and doesn't have adeployed_address
.The admin has to review and approve/confirm the collection (See ???)
2.a.3. CONFIRMED
(DB) ???
The admin has to deploy the collection (See
deploy_collection
from the contract)2.a.4. DEPLOYED
(DB) The
collection_data
fromlaunchpad_project
has adeployed_address
Listed on the Marketplace
2.b. Endpoints
2.b.1. UploadMetadatas
2.b.2. CalculateCollectionMerkleRoot
2.b.3. TokenMetadata
2.b.4. CollectionsByCreator
Control the user's ownership with
creatorId
, returns a list ofcollectionData
, can filter by status, can sort2.b.5. LaunchpadProjects
2.b.6. LaunchpadProjectById
2.b.7. LaunchpadProjectsCount
3. Front-end
Access from here :
3.a. Collection creation form
I tried a way to make good forms : https://hackmd.io/TXt0Gz5_Q-OJIo6-OH674w?both
3.a.1. Datetime inputs
I made this :
The user has to type a valid datetime
The hours/minutes/seconds can be empty
3.a.2. Fields control at form submission
The button is at the step 6
If fields are invalid or required fields are not filled, an error is shown, and all the invalid/required fields are highlighted. The user has to navigate in the form to find the highlighted fields.
We could show a red pill or something near the steps to tell the user which step is concerned.
3.a.3. Collection minting periods
The user can add a whitelist (list of wallet addresses) that will be concerned by the period parameters. If there is no whitelist provided, the parameters will be effective for all users.
The CSV must be something like this :
3.a.4. Collection assets
3.a.4.1. The user must add a CSV file before images
==> If he add a new CSV file, all the images are removed (It was easier to implement)
The CSV must be something like this :
TODO: Handle attributes
3.a.4.2. The user can see the valid assets
==> He can see manually all assets metadata
3.a.4.3. Error if the added CSV has not the right headings
==> The first row must contains the columns names :
fileName
,name
,description
,externalURL
,youtubeURL
,attributes
3.a.4.4. Warning if the user miss adding images that are expected in the CSV
Not blocking, the expected assets are added, the wrongs are ignored
3.a.4.5. Warning if the user adds images that are not expected in the CSV
Not blocking, the unepected assets are not added
3.a.4.6. Warning if the user adds images that are missing "name" or "attributes" values in the CSV
Not blocking, the incomplete assets are not added
3.b. User's My Collections
3.c. Admin