-
Notifications
You must be signed in to change notification settings - Fork 27
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
UX: pop up parachain
#129
Comments
I wouldn’t recommend changing
However I like the idea of |
We will not be touching
So:
will remain intact. However, if one wants to spin up a network they should be able to:
within the directory of their network.toml file. Therefore no need for the command:
If they are outside the project directory then:
Preconfigured Relay chain + ParachainsIf one wants to simply spin up a Polkadot network then:
spins up a Polkadot network in dev mode (Rococo/Paseo) Similar to chopsticks, parachain teams can add their parachain config to pop-cli so:
And let's not forget those solo chains:
should detect that the working directory is a Substrate solo chain and run it. Outside the directory:
ProposalThree deliverables
|
What do you have in mind for |
Personally I prefer the user to specify what he wants to do:
And then the new commands:
However, my opinion might be biased after using this tool so many times, so happy to change if the rest think is a better UX . My only concern then on using 'pop up' instead of 'pop up parachain' is if this could lead to confusion when the same logic isn't applied to contracts, where the user has to type 'pop up contract'. |
The only reason we need the
is to differentiate between a parachain and a contract. If we only had one thing that we could create, build, and deploy then the commands would simply be
The UX should be done from a development workflow perspective. For the For
Running a network is not equivalent to deploying a contract, therefore the commands should be different.
Will be the "gold standard" for running a network.
Will be the command to deploy a contract to a running network.
Then
For ease of development (and testing) there should also be pre-configured dev networks (and make this the default):
This would supersede the network.toml file. Ideally, we should also have certain networks preconfigured so that when the user runs the following command:
Pop CLI will check the network.toml file for thos pre-configured networks e.g. pop-node and grab the binary automatically.
|
Closing this discussion to open specific issues addressing all the enhancements mentioned here:
|
There has been discussion around the
pop up parachain
command.What if the user simply wants to spin up a Relay chain?
e.g.
pop up parachain -f network.toml
- where the network.toml file only has the Relay chainPerhaps the command should be:
pop up polkadot
Anyways, I have never seen a parachain run without a Relay chain so better UX would be to rename the
pop up parachain
command topop up polkadot
. This would equate to spinning up a Polkadot network. Whether it is a Polkadot network with 10 parachains or simply just the Relay chain, this command suffices.Ser, what about Substrate solo chains? We can accommodate for this by having an additional command:
What we really want is to be in the directory of the project and for the command to be:
which would result in automatically either a) detect the network.toml file and spin up the network, or b) recognize that it is a Substrate solo chain and run it
Deliverables
Rename
pop up parachain
topop up polkadot
Make it so
pop up polkadot
by itself, with no network.toml file, will spin up a Relay chain in dev modeAdd an additional command to support Substrate solo chains:
pop up chain
Make it so the user only has to run
pop up
and pop-cli will look in the directory for the network.toml file as well as detect whether it is a Substrate solo chain and deploy the network accordingly.Nice-to-haves
Configuration files within Pop CLI for networks e.g. Acala, Moonbeam, etc.
User can then say:
pop up acala
orpop up acala, asset_hub, moonbeam
The text was updated successfully, but these errors were encountered: