-
Notifications
You must be signed in to change notification settings - Fork 27.2k
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
Confirm if user wants example when creating app #10543
Conversation
Stats from current PRDefault Server ModeGeneral
Client Bundles (main, webpack, commons)
Client Bundles (main, webpack, commons) Modern
Legacy Client Bundles (polyfills)
Client Pages
Client Pages Modern
Client Build Manifests
Rendered Page Sizes
Serverless Mode (Increase detected
|
zeit/next.js canary | merelinguist/next.js cli-create-from-example | Change | |
---|---|---|---|
buildDuration | 12.2s | 13s | |
nodeModulesSize | 52.7 MB | 52.7 MB | ✓ |
Client Bundles (main, webpack, commons)
zeit/next.js canary | merelinguist/next.js cli-create-from-example | Change | |
---|---|---|---|
main-HASH.js gzip | 5.13 kB | 5.13 kB | ✓ |
webpack-HASH.js gzip | 746 B | 746 B | ✓ |
4952ddcd88e7..54d3.js gzip | 4.68 kB | 4.68 kB | ✓ |
commons.HASH.js gzip | 4.06 kB | 4.06 kB | ✓ |
de003c3a9d30..d239.js gzip | 16.2 kB | 16.2 kB | ✓ |
framework.HASH.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 70 kB | 70 kB | ✓ |
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary | merelinguist/next.js cli-create-from-example | Change | |
---|---|---|---|
main-HASH.module.js gzip | 4.13 kB | 4.13 kB | ✓ |
webpack-HASH..dule.js gzip | 746 B | 746 B | ✓ |
4952ddcd88e7..dule.js gzip | 5.56 kB | 5.56 kB | ✓ |
de003c3a9d30..dule.js gzip | 15.1 kB | 15.1 kB | ✓ |
framework.HA..dule.js gzip | 39.1 kB | 39.1 kB | ✓ |
Overall change | 64.6 kB | 64.6 kB | ✓ |
Legacy Client Bundles (polyfills)
zeit/next.js canary | merelinguist/next.js cli-create-from-example | Change | |
---|---|---|---|
polyfills-HASH.js gzip | 4.76 kB | 4.76 kB | ✓ |
Overall change | 4.76 kB | 4.76 kB | ✓ |
Client Pages
zeit/next.js canary | merelinguist/next.js cli-create-from-example | Change | |
---|---|---|---|
_app.js gzip | 1.15 kB | 1.15 kB | ✓ |
_error.js gzip | 4.07 kB | 4.07 kB | ✓ |
hooks.js gzip | 779 B | 779 B | ✓ |
index.js gzip | 222 B | 222 B | ✓ |
link.js gzip | 2.89 kB | 2.89 kB | ✓ |
routerDirect.js gzip | 283 B | 283 B | ✓ |
withRouter.js gzip | 282 B | 282 B | ✓ |
Overall change | 9.68 kB | 9.68 kB | ✓ |
Client Pages Modern
zeit/next.js canary | merelinguist/next.js cli-create-from-example | Change | |
---|---|---|---|
_app.module.js gzip | 576 B | 576 B | ✓ |
_error.module.js gzip | 3.06 kB | 3.06 kB | ✓ |
hooks.module.js gzip | 371 B | 371 B | ✓ |
index.module.js gzip | 212 B | 212 B | ✓ |
link.module.js gzip | 2.46 kB | 2.46 kB | ✓ |
routerDirect..dule.js gzip | 273 B | 273 B | ✓ |
withRouter.m..dule.js gzip | 272 B | 272 B | ✓ |
Overall change | 7.22 kB | 7.22 kB | ✓ |
Client Build Manifests
zeit/next.js canary | merelinguist/next.js cli-create-from-example | Change | |
---|---|---|---|
_buildManifest.js gzip | 61 B | 61 B | ✓ |
_buildManife..dule.js gzip | 61 B | 61 B | ✓ |
Overall change | 122 B | 122 B | ✓ |
Serverless bundles Overall increase ⚠️
zeit/next.js canary | merelinguist/next.js cli-create-from-example | Change | |
---|---|---|---|
_error.js gzip | 290 kB | 290 kB | -269 B |
404.html gzip | 1.44 kB | 1.44 kB | ✓ |
hooks.html gzip | 1.08 kB | 1.08 kB | ✓ |
index.js gzip | 289 kB | 289 kB | -58 B |
link.js gzip | 319 kB | 319 kB | -229 B |
routerDirect.js gzip | 316 kB | 316 kB | |
withRouter.js gzip | 315 kB | 316 kB | |
Overall change | 1.53 MB | 1.53 MB |
Commit: 8f192de
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.
Some things I don't like about this change:
- Even though this may be helpful, it introduces a new question, meaning more time required to start the app
- We have over 200 examples, and every example includes a download link with
create-next-app
, afaik when we add a reference tocreate-next-app
it either already includes the name of the example or it doesn't because we want the user to download the default example (and that example is a good introduction to Next.js).
Alternative: Ask for the name of the example if the user wants an example, but doesn't know which one, e.g: yarn next-app --example
@lfades Just FYI this is what the Gatsby CLI does, but I 100% see where you’re coming from as far as simplicity/speed goes :). I’ve amended as instructed, let me know what you think. |
Stats from current PRDefault Server ModeGeneral
Client Bundles (main, webpack, commons)
Client Bundles (main, webpack, commons) Modern
Legacy Client Bundles (polyfills)
Client Pages
Client Pages Modern
Client Build Manifests
Rendered Page Sizes
Serverless Mode (Decrease detected ✓)General
Client Bundles (main, webpack, commons)
Client Bundles (main, webpack, commons) Modern
Legacy Client Bundles (polyfills)
Client Pages
Client Pages Modern
Client Build Manifests
Serverless bundles Overall decrease ✓
Commit: 5952dfa |
Stats from current PRDefault Server ModeGeneral
Client Bundles (main, webpack, commons)
Client Bundles (main, webpack, commons) Modern
Legacy Client Bundles (polyfills)
Client Pages
Client Pages Modern
Client Build Manifests
Rendered Page Sizes
Serverless Mode (Decrease detected ✓)General
Client Bundles (main, webpack, commons)
Client Bundles (main, webpack, commons) Modern
Legacy Client Bundles (polyfills)
Client Pages
Client Pages Modern
Client Build Manifests
Serverless bundles Overall decrease ✓
Commit: 83d19e9 |
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, I've updated the PR so I'll wait for the review of someone else from the team
If it's asked under |
@timneutkens "I'm not opposed to asking it as part of the normal flow": Should we keep it as an additional step as introduced initially in this PR? |
Yeah there's basically 2 options:
Hiding it under |
@timneutkens I've updated the PR to ask for a template, it can be the default starter app or an example. |
@lfades could you add a gif/video of what it will look like |
Nice! Looks great! |
Did some UX changes, the PR is now ready for merge |
Currently, when a user runs
create-next-app
, it automatically generates a Next project from a blank template. This pull adds an extra question to the creation process, which confirms whether they want to use an example:This was suggested by @leerob in #8090.