feat(create): let you type to filter starter templates - #87
Open
nerdchanii wants to merge 1 commit into
Open
Conversation
Replace the plain select prompt with autocomplete backed by an in-order fuzzy matcher, so typing "wath" finds "with-auth" instead of requiring exact substrings. Reworked against the manifest-based template list (ManifestTemplate[]) now used on main.
This file contains hidden or 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
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.
The problem
Picking a template meant arrow-keying through a long list. As we've added more starters (
with-tailwindcss,with-tanstack-router-file-based,with-authjs,with-strict-csp, ...), finding the one you want takes a fair amount of scrolling, with no way to just type what you're after.What changed
The template picker is now an autocomplete prompt, so you can type to narrow the list down.
authand you getwith-auth— normal substring matches work and show up first.wathfindswith-auth, since the letters appear in that order.The matching is a small helper in
packages/create/src/utils/fuzzy.ts— no new dependencies. Added tests for the matching/ranking and for how the CLI wires up the prompt.Note
This wasn't filed as an issue first — it's a small quality-of-life change I put together while using the CLI locally. Happy to adjust the wording or behavior if you'd rather it work differently.