booster
booster copied to clipboard
Remove most of the parameters from new:project command and other developer experience improvements
Feature Request
Description
After these months of creating a bunch of projects using Booster, our team feels that the project creation project could be shorter and faster
The only parameter that makes sense to request is the provider, the rest feel completely unnecessary for any greenfield project. Our team usually skips most of the parameters when we're creating an application in Booster. I don't believe they are providing value to the user right away, so I think we should remove them and make the process faster.
The process of creating a Booster project would be reduced from eight steps to just two:
- Submitting the
new:project
command - Selecting the provider
Also, I would also suggest moving the tags from the providers to the beginning of the line and also using coloured text to make it easier to read for users, since the name of the package is not crucial for their knowledge.
We could even remove the name of the package. I don't believe it is providing much value.
I've been discussing with @Fecony via PM, and I'm not sure (like really I have no idea, not favoring one approach or another) if having an interactive wizard improves DX or not.
One thing that I've seen is for example the Haskell build tool, Cabal, has a --non-interactive
flag to skip these steps. But at the same time I think that could be an extra step that reduces DX.
Thoughts?
Maybe the opposite? We could provide an --interactive
flag and by default require the project name and the provider package as parameters. It could fail if the provider package is not present:
$ boost new:project my-project-name --runtime @boostercloud/framework-provider-aws
// No prompts, the project is generated and initialized for AWS
Or
$ boost new:project my-project-name --interactive
// Current behavior
What do you think?
Also, would it make sense to skip package installation by default and provide an --autoinstall-packages
flag or require the package manager name now that we support many?
$ boost new:project my-project-name --runtime @boostercloud/framework-provider-aws --package-manager pnpm --autoinstall-packages
Oh, just saw that we already have a --skipinstall
flag 🤡
so we might not need this feature anymore?
Hi @hannahbrooks do you know if this issue was completely covered by your PR #1263 ?