-
Notifications
You must be signed in to change notification settings - Fork 466
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!: use a giant multiselect instead of individual toggles for features #695
Conversation
…ures As we are adding more features, the number of toggles is getting out of hand. A multiselect could save a few keystrokes for most users. I also take this opportunity to change the prompts library to `@clack/prompts`. The color library is changed to `picocolors`. IMO `kleur` is still the smaller library because of treeshaking. But `@clack/prompts` already comes with `picocolors` as a dependency, so by not adding `kleur`, we save a few bytes. This is a proof-of-concept change. I haven't put much consideration into the code style yet. Nor have I updated the i18n messages. I will do that if this change is accepted. See the result in a screen recording: [](https://asciinema.org/a/lPaZSGz9LTd7mcWZeJAZxerhx)
… ci] Still much work to do. But it's acdceptable for now.
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.
Looks good, I like the idea 👍
I think this PR is ready for review. I can confirm the flags parsing behavior is exactly same, but I can only manually test the prompt parsing, so far it seems good. @cexbrayat @btea Do the new prompt messages look good to you? |
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.
LGTM
Merging this PR now as I'm going to do another round of dependency maintenance and release a new version tomorrow. |
As we are adding more features, the number of toggles is getting out of hand. A multiselect could save a few keystrokes for most users.
I also take this opportunity to change the prompts library to
@clack/prompts
.(For context:
create-astro
,sv
,create-preact
,create-solid
,create-qwik
all use@clack/prompts
,create-vite
recently switched to@clack/prompts
too, whilecreate-next-app
usesprompts
)The color library is changed to
picocolors
. IMOkleur
is still the smaller library because of treeshaking. But@clack/prompts
already comes withpicocolors
as a dependency, so by not addingkleur
, we save a few bytes.This is a proof-of-concept PR. I haven't put much consideration into the code style yet. Nor have I updated the i18n messages. I will do that if this change is accepted.
See the result in a screen recording:

TODOs:
isCancel
condition; update theneedsEslint
type, etc.)packageName
related logic but it can be postponed into another PR