-
Notifications
You must be signed in to change notification settings - Fork 26.9k
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
Add Apollo Server and Client Example App #8195
Conversation
Stats from current PRClick to expand stats
Click to expand serverless stats
|
Stats from current PRClick to expand stats
Click to expand serverless stats
|
examples/api-routes-apollo-server-and-client/apollo/resolvers.js
Outdated
Show resolved
Hide resolved
examples/api-routes-apollo-server-and-client/apollo/type-defs.js
Outdated
Show resolved
Hide resolved
examples/api-routes-apollo-server-and-client/lib/with-apollo-client.js
Outdated
Show resolved
Hide resolved
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.
@lifeiscontent Thank you for the PR, can you check my comments with the requested changes 🙏
@lfades I realize that there were some bugs initially in the example project a few findings maybe you could shed some light on.
|
I think I've solved the problems I mentioned, however there's still a bug with the static.js page, if you want I can open an issue since it's unrelated to this PR. |
ping @lfades |
@lifeiscontent That's okay, |
examples/api-routes-apollo-server-and-client/lib/init-apollo.js
Outdated
Show resolved
Hide resolved
@lfades also, side note, in an app I'm doing this exact same thing, the call to |
Stats from current PRClick to expand stats
Click to expand serverless stats
|
Stats from current PRClick to expand stats
Click to expand serverless stats
|
Stats from current PRClick to expand stats
Click to expand serverless stats
|
examples/api-routes-apollo-server-and-client/lib/with-apollo-client.js
Outdated
Show resolved
Hide resolved
@lifeiscontent I know that issue, it happens in next-with-apollo, probably the new |
Stats from current PRClick to expand stats
Click to expand serverless stats
|
@lifeiscontent You should be able to use |
@lfades would I need to wrap _app.js? or how does AppTree work? If I need to wrap _app.js how can I take advantage of page prerendering? |
@lifeiscontent Here: https://github.com/zeit/next.js/pull/8180/files, if you want to use apollo-hooks instead it should also work, the with-apollo example is already doing it. |
@lfades ok, makes sense. One more question before I update the example, I'm realizing if someone has a custom domain and isn't running on localhost:3000 the API host won't match .e.g |
ping @lfades |
@lifeiscontent, Add a environment variable for the absolute URL, e.g: const ROOT_URL =
process.env.NODE_ENV === 'production'
? process.env.ROOT_URL
: 'http://localhost:3000' |
@lfades while this works (and is how i currently work around that problem) I'm wondering if there's a more elegant solution as the pr deployments via github integration will have unique urls so manually setting the env is not possible. Seems like apollo-boost will be removed in 3: apollographql/apollo-client#5217 might make sense to use direct imports from |
@lifeiscontent I wanted to check the history but you did a force push so I'll ask, wasn't the example using the page to create the apollo client instead of |
@lfades yeah, I decided to follow the way with-apollo works |
@lifeiscontent Can you change it back? I really liked the way it worked, you were the first one in adding it that way, and the current examples will switch (some already) to do the same. |
@lfades yeah, okay, I'll see if I can make a commit later tonight 😄 |
@sakulstra I fixed the issue you brought up :) |
Stats from current PRDefault Server ModeGeneral
Client Bundles (main, webpack, commons)
Client Bundles (main, webpack, commons) Modern
Client Pages
Client Pages Modern
Client Build Manifests
Rendered Page Sizes
Serverless Mode (Increase detected
|
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
buildDuration | 25.8s | 24.8s | -1s |
nodeModulesSize | 41.3 MB | 41.3 MB | ✓ |
Client Bundles (main, webpack, commons) Overall decrease ✓
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
main-HASH.js | 18.1 kB | 18.1 kB | -1 B |
main-HASH.js gzip | 6.64 kB | 6.64 kB | -1 B |
webpack-HASH.js | 1.53 kB | 1.53 kB | ✓ |
webpack-HASH.js gzip | 746 B | 746 B | ✓ |
Overall change | -1 B |
Client Bundles (main, webpack, commons) Modern Overall decrease ✓
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
main-HASH.module.js | 16.5 kB | 16.5 kB | -1 B |
main-HASH.module.js gzip | 6.37 kB | 6.37 kB | -1 B |
webpack-HASH.module.js | 1.53 kB | 1.53 kB | ✓ |
webpack-HASH.module.js gzip | 746 B | 746 B | ✓ |
Overall change | -1 B |
Client Pages Overall increase ⚠️
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_app.js | 1.83 kB | 1.83 kB | ✓ |
_app.js gzip | 884 B | 884 B | ✓ |
_error.js | 12.1 kB | 12.1 kB | ✓ |
_error.js gzip | 4.76 kB | 4.76 kB | |
hooks.js | 12.7 kB | 12.7 kB | ✓ |
hooks.js gzip | 4.81 kB | 4.81 kB | ✓ |
index.js | 343 B | 343 B | ✓ |
index.js gzip | 237 B | 237 B | ✓ |
link.js | 8.14 kB | 8.14 kB | ✓ |
link.js gzip | 3.49 kB | 3.49 kB | |
routerDirect.js | 433 B | 434 B | |
routerDirect.js gzip | 296 B | 296 B | ✓ |
withRouter.js | 444 B | 444 B | ✓ |
withRouter.js gzip | 294 B | 294 B | ✓ |
Overall change |
Client Pages Modern Overall increase ⚠️
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_app.module.js | 1.73 kB | 1.73 kB | ✓ |
_app.module.js gzip | 840 B | 840 B | ✓ |
_error.module.js | 23.3 kB | 23.3 kB | ✓ |
_error.module.js gzip | 8.62 kB | 8.62 kB | ✓ |
hooks.module.js | 1.55 kB | 1.55 kB | ✓ |
hooks.module.js gzip | 804 B | 805 B | |
index.module.js | 319 B | 319 B | ✓ |
index.module.js gzip | 238 B | 238 B | ✓ |
link.module.js | 8.52 kB | 8.52 kB | ✓ |
link.module.js gzip | 3.68 kB | 3.68 kB | ✓ |
routerDirect.module.js | 419 B | 419 B | ✓ |
routerDirect.module.js gzip | 294 B | 294 B | ✓ |
withRouter.module.js | 429 B | 430 B | |
withRouter.module.js gzip | 293 B | 293 B | ✓ |
Overall change |
Client Build Manifests
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_buildManifest.js | 81 B | 81 B | ✓ |
_buildManifest.js gzip | 61 B | 61 B | ✓ |
_buildManifest.module.js | 81 B | 81 B | ✓ |
_buildManifest.module.js gzip | 61 B | 61 B | ✓ |
Overall change | ✓ |
Serverless bundles Overall increase ⚠️
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_error.js | 247 kB | 247 kB | |
_error.js gzip | 66.3 kB | 66.4 kB | |
hooks.html | 3.81 kB | 3.81 kB | |
hooks.html gzip | 976 B | 977 B | |
index.js | 248 kB | 248 kB | |
index.js gzip | 66.5 kB | 66.6 kB | |
link.js | 255 kB | 255 kB | |
link.js gzip | 68.8 kB | 68.8 kB | -25 B |
routerDirect.js | 249 kB | 249 kB | |
routerDirect.js gzip | 66.8 kB | 66.8 kB | |
withRouter.js | 248 kB | 248 kB | |
withRouter.js gzip | 66.8 kB | 66.7 kB | -187 B |
Overall change |
@lfades updated! :) |
Stats from current PRDefault Server Mode (Decrease detected ✓)General Overall decrease ✓
Client Bundles (main, webpack, commons)
Client Bundles (main, webpack, commons) Modern
Client Pages
Client Pages Modern
Client Build Manifests
Rendered Page Sizes Overall decrease ✓
DiffsDiff for index.html@@ -6,9 +6,9 @@
<meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1"
/>
<meta name="next-head-count" content="2" />
- <link rel="preload" href="/_next/static/q1-YqnY_3OSHrkoMHniDk/pages/index.module.js"
+ <link rel="preload" href="/_next/static/UwWGSF5kSjyyfIE7Jv3N3/pages/index.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/q1-YqnY_3OSHrkoMHniDk/pages/_app.module.js"
+ <link rel="preload" href="/_next/static/UwWGSF5kSjyyfIE7Jv3N3/pages/_app.module.js"
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/runtime/webpack-7928590be3ef2e55b835.module.js"
as="script" crossorigin="anonymous" />
@@ -16,9 +16,9 @@
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/chunks/framework.cdb73e402d876d4ac87f.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/chunks/i54VifbRTkqTR0kKud93KJzmIBw=.72ab6ea1ebeafbd8c735.module.js"
+ <link rel="preload" href="/_next/static/chunks/jhGGXjvD4JUtf+dn5omxi1djIE=.72ab6ea1ebeafbd8c735.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/q1-YqnY_3OSHrkoMHniDk/_buildManifest.module.js"
+ <link rel="preload" href="/_next/static/UwWGSF5kSjyyfIE7Jv3N3/_buildManifest.module.js"
as="script" crossorigin="anonymous" />
</head>
@@ -26,18 +26,18 @@
<div id="__next">Hello world 👋</div>
<script id="__NEXT_DATA__" type="application/json"
crossorigin="anonymous">
- {"dataManager":"[]","props":{"pageProps":{}},"page":"/","query":{},"buildId":"q1-YqnY_3OSHrkoMHniDk"}
+ {"dataManager":"[]","props":{"pageProps":{}},"page":"/","query":{},"buildId":"UwWGSF5kSjyyfIE7Jv3N3"}
</script>
<script crossorigin="anonymous" nomodule="">
!function(){var e=document,t=e.createElement("script");if(!("noModule"in t)&&"onbeforeload"in t){var n=!1;e.addEventListener("beforeload",function(e){if(e.target===t)n=!0;else if(!e.target.hasAttribute("nomodule")||!n)return;e.preventDefault()},!0),t.type="module",t.src=".",e.head.appendChild(t),t.remove()}}();
</script>
- <script async="" data-next-page="/" src="/_next/static/q1-YqnY_3OSHrkoMHniDk/pages/index.js"
+ <script async="" data-next-page="/" src="/_next/static/UwWGSF5kSjyyfIE7Jv3N3/pages/index.js"
crossorigin="anonymous" nomodule=""></script>
- <script async="" data-next-page="/" src="/_next/static/q1-YqnY_3OSHrkoMHniDk/pages/index.module.js"
+ <script async="" data-next-page="/" src="/_next/static/UwWGSF5kSjyyfIE7Jv3N3/pages/index.module.js"
crossorigin="anonymous" type="module"></script>
- <script async="" data-next-page="/_app" src="/_next/static/q1-YqnY_3OSHrkoMHniDk/pages/_app.js"
+ <script async="" data-next-page="/_app" src="/_next/static/UwWGSF5kSjyyfIE7Jv3N3/pages/_app.js"
crossorigin="anonymous" nomodule=""></script>
- <script async="" data-next-page="/_app" src="/_next/static/q1-YqnY_3OSHrkoMHniDk/pages/_app.module.js"
+ <script async="" data-next-page="/_app" src="/_next/static/UwWGSF5kSjyyfIE7Jv3N3/pages/_app.module.js"
crossorigin="anonymous" type="module"></script>
<script src="/_next/static/runtime/webpack-a470c2a25bcb4d5a8ec0.js"
async="" crossorigin="anonymous" nomodule=""></script>
@@ -51,15 +51,15 @@
async="" crossorigin="anonymous" nomodule=""></script>
<script src="/_next/static/chunks/framework.cdb73e402d876d4ac87f.module.js"
async="" crossorigin="anonymous" type="module"></script>
- <script src="/_next/static/chunks/ht+8eaDfAvr6bzAWfOInVkOo37I=.155621535702fe040780.js"
+ <script src="/_next/static/chunks/MrxyJ0dZ2TWhKdK+yryfK4F02o=.155621535702fe040780.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/chunks/i54VifbRTkqTR0kKud93KJzmIBw=.c99adde05e467047c83e.js"
+ <script src="/_next/static/chunks/jhGGXjvD4JUtf+dn5omxi1djIE=.c99adde05e467047c83e.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/chunks/i54VifbRTkqTR0kKud93KJzmIBw=.72ab6ea1ebeafbd8c735.module.js"
+ <script src="/_next/static/chunks/jhGGXjvD4JUtf+dn5omxi1djIE=.72ab6ea1ebeafbd8c735.module.js"
async="" crossorigin="anonymous" type="module"></script>
- <script src="/_next/static/q1-YqnY_3OSHrkoMHniDk/_buildManifest.js"
+ <script src="/_next/static/UwWGSF5kSjyyfIE7Jv3N3/_buildManifest.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/q1-YqnY_3OSHrkoMHniDk/_buildManifest.module.js"
+ <script src="/_next/static/UwWGSF5kSjyyfIE7Jv3N3/_buildManifest.module.js"
async="" crossorigin="anonymous" type="module"></script>
</body> Diff for link.html@@ -6,19 +6,19 @@
<meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1"
/>
<meta name="next-head-count" content="2" />
- <link rel="preload" href="/_next/static/q1-YqnY_3OSHrkoMHniDk/pages/link.module.js"
+ <link rel="preload" href="/_next/static/UwWGSF5kSjyyfIE7Jv3N3/pages/link.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/q1-YqnY_3OSHrkoMHniDk/pages/_app.module.js"
+ <link rel="preload" href="/_next/static/UwWGSF5kSjyyfIE7Jv3N3/pages/_app.module.js"
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/runtime/webpack-7928590be3ef2e55b835.module.js"
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/chunks/framework.cdb73e402d876d4ac87f.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/chunks/i54VifbRTkqTR0kKud93KJzmIBw=.72ab6ea1ebeafbd8c735.module.js"
+ <link rel="preload" href="/_next/static/chunks/jhGGXjvD4JUtf+dn5omxi1djIE=.72ab6ea1ebeafbd8c735.module.js"
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/runtime/main-9c0b8b62a2fb27af35b2.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/q1-YqnY_3OSHrkoMHniDk/_buildManifest.module.js"
+ <link rel="preload" href="/_next/static/UwWGSF5kSjyyfIE7Jv3N3/_buildManifest.module.js"
as="script" crossorigin="anonymous" />
</head>
@@ -29,18 +29,18 @@
</div>
</div>
<script id="__NEXT_DATA__" type="application/json" crossorigin="anonymous">
- {"dataManager":"[]","props":{"pageProps":{}},"page":"/link","query":{},"buildId":"q1-YqnY_3OSHrkoMHniDk"}
+ {"dataManager":"[]","props":{"pageProps":{}},"page":"/link","query":{},"buildId":"UwWGSF5kSjyyfIE7Jv3N3"}
</script>
<script crossorigin="anonymous" nomodule="">
!function(){var e=document,t=e.createElement("script");if(!("noModule"in t)&&"onbeforeload"in t){var n=!1;e.addEventListener("beforeload",function(e){if(e.target===t)n=!0;else if(!e.target.hasAttribute("nomodule")||!n)return;e.preventDefault()},!0),t.type="module",t.src=".",e.head.appendChild(t),t.remove()}}();
</script>
- <script async="" data-next-page="/link" src="/_next/static/q1-YqnY_3OSHrkoMHniDk/pages/link.js"
+ <script async="" data-next-page="/link" src="/_next/static/UwWGSF5kSjyyfIE7Jv3N3/pages/link.js"
crossorigin="anonymous" nomodule=""></script>
- <script async="" data-next-page="/link" src="/_next/static/q1-YqnY_3OSHrkoMHniDk/pages/link.module.js"
+ <script async="" data-next-page="/link" src="/_next/static/UwWGSF5kSjyyfIE7Jv3N3/pages/link.module.js"
crossorigin="anonymous" type="module"></script>
- <script async="" data-next-page="/_app" src="/_next/static/q1-YqnY_3OSHrkoMHniDk/pages/_app.js"
+ <script async="" data-next-page="/_app" src="/_next/static/UwWGSF5kSjyyfIE7Jv3N3/pages/_app.js"
crossorigin="anonymous" nomodule=""></script>
- <script async="" data-next-page="/_app" src="/_next/static/q1-YqnY_3OSHrkoMHniDk/pages/_app.module.js"
+ <script async="" data-next-page="/_app" src="/_next/static/UwWGSF5kSjyyfIE7Jv3N3/pages/_app.module.js"
crossorigin="anonymous" type="module"></script>
<script src="/_next/static/runtime/webpack-a470c2a25bcb4d5a8ec0.js"
async="" crossorigin="anonymous" nomodule=""></script>
@@ -50,19 +50,19 @@
async="" crossorigin="anonymous" nomodule=""></script>
<script src="/_next/static/chunks/framework.cdb73e402d876d4ac87f.module.js"
async="" crossorigin="anonymous" type="module"></script>
- <script src="/_next/static/chunks/ht+8eaDfAvr6bzAWfOInVkOo37I=.155621535702fe040780.js"
+ <script src="/_next/static/chunks/MrxyJ0dZ2TWhKdK+yryfK4F02o=.155621535702fe040780.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/chunks/i54VifbRTkqTR0kKud93KJzmIBw=.c99adde05e467047c83e.js"
+ <script src="/_next/static/chunks/jhGGXjvD4JUtf+dn5omxi1djIE=.c99adde05e467047c83e.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/chunks/i54VifbRTkqTR0kKud93KJzmIBw=.72ab6ea1ebeafbd8c735.module.js"
+ <script src="/_next/static/chunks/jhGGXjvD4JUtf+dn5omxi1djIE=.72ab6ea1ebeafbd8c735.module.js"
async="" crossorigin="anonymous" type="module"></script>
<script src="/_next/static/runtime/main-97617d800ec2b207a20a.js"
async="" crossorigin="anonymous" nomodule=""></script>
<script src="/_next/static/runtime/main-9c0b8b62a2fb27af35b2.module.js"
async="" crossorigin="anonymous" type="module"></script>
- <script src="/_next/static/q1-YqnY_3OSHrkoMHniDk/_buildManifest.js"
+ <script src="/_next/static/UwWGSF5kSjyyfIE7Jv3N3/_buildManifest.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/q1-YqnY_3OSHrkoMHniDk/_buildManifest.module.js"
+ <script src="/_next/static/UwWGSF5kSjyyfIE7Jv3N3/_buildManifest.module.js"
async="" crossorigin="anonymous" type="module"></script>
</body> Diff for withRouter.html@@ -6,19 +6,19 @@
<meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1"
/>
<meta name="next-head-count" content="2" />
- <link rel="preload" href="/_next/static/q1-YqnY_3OSHrkoMHniDk/pages/withRouter.module.js"
+ <link rel="preload" href="/_next/static/UwWGSF5kSjyyfIE7Jv3N3/pages/withRouter.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/q1-YqnY_3OSHrkoMHniDk/pages/_app.module.js"
+ <link rel="preload" href="/_next/static/UwWGSF5kSjyyfIE7Jv3N3/pages/_app.module.js"
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/runtime/webpack-7928590be3ef2e55b835.module.js"
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/chunks/framework.cdb73e402d876d4ac87f.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/chunks/i54VifbRTkqTR0kKud93KJzmIBw=.72ab6ea1ebeafbd8c735.module.js"
+ <link rel="preload" href="/_next/static/chunks/jhGGXjvD4JUtf+dn5omxi1djIE=.72ab6ea1ebeafbd8c735.module.js"
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/runtime/main-9c0b8b62a2fb27af35b2.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/q1-YqnY_3OSHrkoMHniDk/_buildManifest.module.js"
+ <link rel="preload" href="/_next/static/UwWGSF5kSjyyfIE7Jv3N3/_buildManifest.module.js"
as="script" crossorigin="anonymous" />
</head>
@@ -27,18 +27,18 @@
<div>I use withRouter</div>
</div>
<script id="__NEXT_DATA__" type="application/json" crossorigin="anonymous">
- {"dataManager":"[]","props":{"pageProps":{}},"page":"/withRouter","query":{},"buildId":"q1-YqnY_3OSHrkoMHniDk"}
+ {"dataManager":"[]","props":{"pageProps":{}},"page":"/withRouter","query":{},"buildId":"UwWGSF5kSjyyfIE7Jv3N3"}
</script>
<script crossorigin="anonymous" nomodule="">
!function(){var e=document,t=e.createElement("script");if(!("noModule"in t)&&"onbeforeload"in t){var n=!1;e.addEventListener("beforeload",function(e){if(e.target===t)n=!0;else if(!e.target.hasAttribute("nomodule")||!n)return;e.preventDefault()},!0),t.type="module",t.src=".",e.head.appendChild(t),t.remove()}}();
</script>
- <script async="" data-next-page="/withRouter" src="/_next/static/q1-YqnY_3OSHrkoMHniDk/pages/withRouter.js"
+ <script async="" data-next-page="/withRouter" src="/_next/static/UwWGSF5kSjyyfIE7Jv3N3/pages/withRouter.js"
crossorigin="anonymous" nomodule=""></script>
- <script async="" data-next-page="/withRouter" src="/_next/static/q1-YqnY_3OSHrkoMHniDk/pages/withRouter.module.js"
+ <script async="" data-next-page="/withRouter" src="/_next/static/UwWGSF5kSjyyfIE7Jv3N3/pages/withRouter.module.js"
crossorigin="anonymous" type="module"></script>
- <script async="" data-next-page="/_app" src="/_next/static/q1-YqnY_3OSHrkoMHniDk/pages/_app.js"
+ <script async="" data-next-page="/_app" src="/_next/static/UwWGSF5kSjyyfIE7Jv3N3/pages/_app.js"
crossorigin="anonymous" nomodule=""></script>
- <script async="" data-next-page="/_app" src="/_next/static/q1-YqnY_3OSHrkoMHniDk/pages/_app.module.js"
+ <script async="" data-next-page="/_app" src="/_next/static/UwWGSF5kSjyyfIE7Jv3N3/pages/_app.module.js"
crossorigin="anonymous" type="module"></script>
<script src="/_next/static/runtime/webpack-a470c2a25bcb4d5a8ec0.js"
async="" crossorigin="anonymous" nomodule=""></script>
@@ -48,19 +48,19 @@
async="" crossorigin="anonymous" nomodule=""></script>
<script src="/_next/static/chunks/framework.cdb73e402d876d4ac87f.module.js"
async="" crossorigin="anonymous" type="module"></script>
- <script src="/_next/static/chunks/ht+8eaDfAvr6bzAWfOInVkOo37I=.155621535702fe040780.js"
+ <script src="/_next/static/chunks/MrxyJ0dZ2TWhKdK+yryfK4F02o=.155621535702fe040780.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/chunks/i54VifbRTkqTR0kKud93KJzmIBw=.c99adde05e467047c83e.js"
+ <script src="/_next/static/chunks/jhGGXjvD4JUtf+dn5omxi1djIE=.c99adde05e467047c83e.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/chunks/i54VifbRTkqTR0kKud93KJzmIBw=.72ab6ea1ebeafbd8c735.module.js"
+ <script src="/_next/static/chunks/jhGGXjvD4JUtf+dn5omxi1djIE=.72ab6ea1ebeafbd8c735.module.js"
async="" crossorigin="anonymous" type="module"></script>
<script src="/_next/static/runtime/main-97617d800ec2b207a20a.js"
async="" crossorigin="anonymous" nomodule=""></script>
<script src="/_next/static/runtime/main-9c0b8b62a2fb27af35b2.module.js"
async="" crossorigin="anonymous" type="module"></script>
- <script src="/_next/static/q1-YqnY_3OSHrkoMHniDk/_buildManifest.js"
+ <script src="/_next/static/UwWGSF5kSjyyfIE7Jv3N3/_buildManifest.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/q1-YqnY_3OSHrkoMHniDk/_buildManifest.module.js"
+ <script src="/_next/static/UwWGSF5kSjyyfIE7Jv3N3/_buildManifest.module.js"
async="" crossorigin="anonymous" type="module"></script>
</body> Serverless Mode (Increase detected
|
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
buildDuration | 21.6s | 22s | |
nodeModulesSize | 41.3 MB | 41.3 MB | -1.45 kB |
Client Bundles (main, webpack, commons) Overall increase ⚠️
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
main-HASH.js | 18.1 kB | 18.1 kB | |
main-HASH.js gzip | 6.64 kB | 6.64 kB | |
webpack-HASH.js | 1.53 kB | 1.53 kB | ✓ |
webpack-HASH.js gzip | 746 B | 746 B | ✓ |
Overall change |
Client Bundles (main, webpack, commons) Modern Overall increase ⚠️
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
main-HASH.module.js | 16.5 kB | 16.5 kB | |
main-HASH.module.js gzip | 6.37 kB | 6.37 kB | |
webpack-HASH.module.js | 1.53 kB | 1.53 kB | ✓ |
webpack-HASH.module.js gzip | 746 B | 746 B | ✓ |
Overall change |
Client Pages Overall decrease ✓
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_app.js | 1.83 kB | 1.83 kB | ✓ |
_app.js gzip | 884 B | 884 B | ✓ |
_error.js | 12.1 kB | 12.1 kB | ✓ |
_error.js gzip | 4.76 kB | 4.76 kB | -1 B |
hooks.js | 12.7 kB | 12.7 kB | ✓ |
hooks.js gzip | 4.81 kB | 4.81 kB | ✓ |
index.js | 343 B | 343 B | ✓ |
index.js gzip | 237 B | 237 B | ✓ |
link.js | 8.14 kB | 8.14 kB | ✓ |
link.js gzip | 3.49 kB | 3.49 kB | -1 B |
routerDirect.js | 434 B | 433 B | -1 B |
routerDirect.js gzip | 296 B | 296 B | ✓ |
withRouter.js | 444 B | 444 B | ✓ |
withRouter.js gzip | 294 B | 294 B | ✓ |
Overall change | -1 B |
Client Pages Modern Overall decrease ✓
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_app.module.js | 1.73 kB | 1.73 kB | ✓ |
_app.module.js gzip | 840 B | 840 B | ✓ |
_error.module.js | 23.3 kB | 23.3 kB | ✓ |
_error.module.js gzip | 8.62 kB | 8.62 kB | ✓ |
hooks.module.js | 1.55 kB | 1.55 kB | ✓ |
hooks.module.js gzip | 805 B | 804 B | -1 B |
index.module.js | 319 B | 319 B | ✓ |
index.module.js gzip | 238 B | 238 B | ✓ |
link.module.js | 8.52 kB | 8.52 kB | ✓ |
link.module.js gzip | 3.68 kB | 3.68 kB | ✓ |
routerDirect.module.js | 419 B | 419 B | ✓ |
routerDirect.module.js gzip | 294 B | 294 B | ✓ |
withRouter.module.js | 430 B | 429 B | -1 B |
withRouter.module.js gzip | 293 B | 293 B | ✓ |
Overall change | -1 B |
Client Build Manifests
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_buildManifest.js | 81 B | 81 B | ✓ |
_buildManifest.js gzip | 61 B | 61 B | ✓ |
_buildManifest.module.js | 81 B | 81 B | ✓ |
_buildManifest.module.js gzip | 61 B | 61 B | ✓ |
Overall change | ✓ |
Serverless bundles Overall decrease ✓
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_error.js | 247 kB | 247 kB | -8 B |
_error.js gzip | 66.4 kB | 66.2 kB | -183 B |
hooks.html | 3.81 kB | 3.81 kB | -3 B |
hooks.html gzip | 978 B | 979 B | |
index.js | 248 kB | 248 kB | -8 B |
index.js gzip | 66.8 kB | 66.7 kB | -118 B |
link.js | 255 kB | 255 kB | -8 B |
link.js gzip | 68.9 kB | 68.8 kB | -47 B |
routerDirect.js | 249 kB | 249 kB | -8 B |
routerDirect.js gzip | 66.6 kB | 66.6 kB | -10 B |
withRouter.js | 248 kB | 248 kB | -8 B |
withRouter.js gzip | 66.7 kB | 66.7 kB | -88 B |
Overall change | -43 B |
Stats from current PRDefault Server Mode (Increase detected
|
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
buildDuration | 23.8s | 23.9s | |
nodeModulesSize | 41.3 MB | 41.3 MB | ✓ |
Client Bundles (main, webpack, commons) Overall decrease ✓
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
main-HASH.js | 18.1 kB | 18.1 kB | -1 B |
main-HASH.js gzip | 6.64 kB | 6.64 kB | -1 B |
webpack-HASH.js | 1.53 kB | 1.53 kB | ✓ |
webpack-HASH.js gzip | 746 B | 746 B | ✓ |
Overall change | -1 B |
Client Bundles (main, webpack, commons) Modern Overall decrease ✓
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
main-HASH.module.js | 16.5 kB | 16.5 kB | -1 B |
main-HASH.module.js gzip | 6.37 kB | 6.37 kB | -1 B |
webpack-HASH.module.js | 1.53 kB | 1.53 kB | ✓ |
webpack-HASH.module.js gzip | 746 B | 746 B | ✓ |
Overall change | -1 B |
Client Pages Overall increase ⚠️
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_app.js | 1.83 kB | 1.83 kB | ✓ |
_app.js gzip | 884 B | 884 B | ✓ |
_error.js | 12.1 kB | 12.1 kB | ✓ |
_error.js gzip | 4.76 kB | 4.76 kB | |
hooks.js | 12.7 kB | 12.7 kB | ✓ |
hooks.js gzip | 4.81 kB | 4.81 kB | ✓ |
index.js | 343 B | 343 B | ✓ |
index.js gzip | 237 B | 237 B | ✓ |
link.js | 8.14 kB | 8.14 kB | ✓ |
link.js gzip | 3.49 kB | 3.49 kB | |
routerDirect.js | 433 B | 434 B | |
routerDirect.js gzip | 296 B | 296 B | ✓ |
withRouter.js | 444 B | 444 B | ✓ |
withRouter.js gzip | 294 B | 294 B | ✓ |
Overall change |
Client Pages Modern Overall increase ⚠️
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_app.module.js | 1.73 kB | 1.73 kB | ✓ |
_app.module.js gzip | 840 B | 840 B | ✓ |
_error.module.js | 23.3 kB | 23.3 kB | ✓ |
_error.module.js gzip | 8.62 kB | 8.62 kB | ✓ |
hooks.module.js | 1.55 kB | 1.55 kB | ✓ |
hooks.module.js gzip | 804 B | 805 B | |
index.module.js | 319 B | 319 B | ✓ |
index.module.js gzip | 238 B | 238 B | ✓ |
link.module.js | 8.52 kB | 8.52 kB | ✓ |
link.module.js gzip | 3.68 kB | 3.68 kB | ✓ |
routerDirect.module.js | 419 B | 419 B | ✓ |
routerDirect.module.js gzip | 294 B | 294 B | ✓ |
withRouter.module.js | 429 B | 430 B | |
withRouter.module.js gzip | 293 B | 293 B | ✓ |
Overall change |
Client Build Manifests
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_buildManifest.js | 81 B | 81 B | ✓ |
_buildManifest.js gzip | 61 B | 61 B | ✓ |
_buildManifest.module.js | 81 B | 81 B | ✓ |
_buildManifest.module.js gzip | 61 B | 61 B | ✓ |
Overall change | ✓ |
Rendered Page Sizes
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
index.html | 3.7 kB | 3.7 kB | ✓ |
index.html gzip | 957 B | 956 B | -1 B |
link.html | 3.75 kB | 3.75 kB | ✓ |
link.html gzip | 965 B | 964 B | -1 B |
withRouter.html | 3.75 kB | 3.75 kB | ✓ |
withRouter.html gzip | 953 B | 951 B | -2 B |
Overall change | ✓ |
Diffs
Diff for index.html
@@ -6,9 +6,9 @@
<meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1"
/>
<meta name="next-head-count" content="2" />
- <link rel="preload" href="/_next/static/4tiQ0rgBeBS-fwRL6t3QY/pages/index.module.js"
+ <link rel="preload" href="/_next/static/7PuvfR5klqVaK7p-kuaT4/pages/index.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/4tiQ0rgBeBS-fwRL6t3QY/pages/_app.module.js"
+ <link rel="preload" href="/_next/static/7PuvfR5klqVaK7p-kuaT4/pages/_app.module.js"
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/runtime/webpack-7928590be3ef2e55b835.module.js"
as="script" crossorigin="anonymous" />
@@ -16,9 +16,9 @@
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/chunks/framework.cdb73e402d876d4ac87f.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/chunks/yygjfzSMtGkv25wBcBA26ZO1OU=.72ab6ea1ebeafbd8c735.module.js"
+ <link rel="preload" href="/_next/static/chunks/2Wx1GbY2JZnJvXfvmwoe+Xjrox0=.72ab6ea1ebeafbd8c735.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/4tiQ0rgBeBS-fwRL6t3QY/_buildManifest.module.js"
+ <link rel="preload" href="/_next/static/7PuvfR5klqVaK7p-kuaT4/_buildManifest.module.js"
as="script" crossorigin="anonymous" />
</head>
@@ -26,18 +26,18 @@
<div id="__next">Hello world 👋</div>
<script id="__NEXT_DATA__" type="application/json"
crossorigin="anonymous">
- {"dataManager":"[]","props":{"pageProps":{}},"page":"/","query":{},"buildId":"4tiQ0rgBeBS-fwRL6t3QY"}
+ {"dataManager":"[]","props":{"pageProps":{}},"page":"/","query":{},"buildId":"7PuvfR5klqVaK7p-kuaT4"}
</script>
<script crossorigin="anonymous" nomodule="">
!function(){var e=document,t=e.createElement("script");if(!("noModule"in t)&&"onbeforeload"in t){var n=!1;e.addEventListener("beforeload",function(e){if(e.target===t)n=!0;else if(!e.target.hasAttribute("nomodule")||!n)return;e.preventDefault()},!0),t.type="module",t.src=".",e.head.appendChild(t),t.remove()}}();
</script>
- <script async="" data-next-page="/" src="/_next/static/4tiQ0rgBeBS-fwRL6t3QY/pages/index.js"
+ <script async="" data-next-page="/" src="/_next/static/7PuvfR5klqVaK7p-kuaT4/pages/index.js"
crossorigin="anonymous" nomodule=""></script>
- <script async="" data-next-page="/" src="/_next/static/4tiQ0rgBeBS-fwRL6t3QY/pages/index.module.js"
+ <script async="" data-next-page="/" src="/_next/static/7PuvfR5klqVaK7p-kuaT4/pages/index.module.js"
crossorigin="anonymous" type="module"></script>
- <script async="" data-next-page="/_app" src="/_next/static/4tiQ0rgBeBS-fwRL6t3QY/pages/_app.js"
+ <script async="" data-next-page="/_app" src="/_next/static/7PuvfR5klqVaK7p-kuaT4/pages/_app.js"
crossorigin="anonymous" nomodule=""></script>
- <script async="" data-next-page="/_app" src="/_next/static/4tiQ0rgBeBS-fwRL6t3QY/pages/_app.module.js"
+ <script async="" data-next-page="/_app" src="/_next/static/7PuvfR5klqVaK7p-kuaT4/pages/_app.module.js"
crossorigin="anonymous" type="module"></script>
<script src="/_next/static/runtime/webpack-a470c2a25bcb4d5a8ec0.js"
async="" crossorigin="anonymous" nomodule=""></script>
@@ -51,15 +51,15 @@
async="" crossorigin="anonymous" nomodule=""></script>
<script src="/_next/static/chunks/framework.cdb73e402d876d4ac87f.module.js"
async="" crossorigin="anonymous" type="module"></script>
- <script src="/_next/static/chunks/Xb44Xz0GS0jXeXwlsO2tilR8UQc=.155621535702fe040780.js"
+ <script src="/_next/static/chunks/wj5mlU0ft7IG9eUajiEoPGMJVLU=.155621535702fe040780.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/chunks/yygjfzSMtGkv25wBcBA26ZO1OU=.c99adde05e467047c83e.js"
+ <script src="/_next/static/chunks/2Wx1GbY2JZnJvXfvmwoe+Xjrox0=.c99adde05e467047c83e.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/chunks/yygjfzSMtGkv25wBcBA26ZO1OU=.72ab6ea1ebeafbd8c735.module.js"
+ <script src="/_next/static/chunks/2Wx1GbY2JZnJvXfvmwoe+Xjrox0=.72ab6ea1ebeafbd8c735.module.js"
async="" crossorigin="anonymous" type="module"></script>
- <script src="/_next/static/4tiQ0rgBeBS-fwRL6t3QY/_buildManifest.js"
+ <script src="/_next/static/7PuvfR5klqVaK7p-kuaT4/_buildManifest.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/4tiQ0rgBeBS-fwRL6t3QY/_buildManifest.module.js"
+ <script src="/_next/static/7PuvfR5klqVaK7p-kuaT4/_buildManifest.module.js"
async="" crossorigin="anonymous" type="module"></script>
</body>
Diff for link.html
@@ -6,19 +6,19 @@
<meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1"
/>
<meta name="next-head-count" content="2" />
- <link rel="preload" href="/_next/static/4tiQ0rgBeBS-fwRL6t3QY/pages/link.module.js"
+ <link rel="preload" href="/_next/static/7PuvfR5klqVaK7p-kuaT4/pages/link.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/4tiQ0rgBeBS-fwRL6t3QY/pages/_app.module.js"
+ <link rel="preload" href="/_next/static/7PuvfR5klqVaK7p-kuaT4/pages/_app.module.js"
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/runtime/webpack-7928590be3ef2e55b835.module.js"
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/chunks/framework.cdb73e402d876d4ac87f.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/chunks/yygjfzSMtGkv25wBcBA26ZO1OU=.72ab6ea1ebeafbd8c735.module.js"
+ <link rel="preload" href="/_next/static/chunks/2Wx1GbY2JZnJvXfvmwoe+Xjrox0=.72ab6ea1ebeafbd8c735.module.js"
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/runtime/main-9c0b8b62a2fb27af35b2.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/4tiQ0rgBeBS-fwRL6t3QY/_buildManifest.module.js"
+ <link rel="preload" href="/_next/static/7PuvfR5klqVaK7p-kuaT4/_buildManifest.module.js"
as="script" crossorigin="anonymous" />
</head>
@@ -29,18 +29,18 @@
</div>
</div>
<script id="__NEXT_DATA__" type="application/json" crossorigin="anonymous">
- {"dataManager":"[]","props":{"pageProps":{}},"page":"/link","query":{},"buildId":"4tiQ0rgBeBS-fwRL6t3QY"}
+ {"dataManager":"[]","props":{"pageProps":{}},"page":"/link","query":{},"buildId":"7PuvfR5klqVaK7p-kuaT4"}
</script>
<script crossorigin="anonymous" nomodule="">
!function(){var e=document,t=e.createElement("script");if(!("noModule"in t)&&"onbeforeload"in t){var n=!1;e.addEventListener("beforeload",function(e){if(e.target===t)n=!0;else if(!e.target.hasAttribute("nomodule")||!n)return;e.preventDefault()},!0),t.type="module",t.src=".",e.head.appendChild(t),t.remove()}}();
</script>
- <script async="" data-next-page="/link" src="/_next/static/4tiQ0rgBeBS-fwRL6t3QY/pages/link.js"
+ <script async="" data-next-page="/link" src="/_next/static/7PuvfR5klqVaK7p-kuaT4/pages/link.js"
crossorigin="anonymous" nomodule=""></script>
- <script async="" data-next-page="/link" src="/_next/static/4tiQ0rgBeBS-fwRL6t3QY/pages/link.module.js"
+ <script async="" data-next-page="/link" src="/_next/static/7PuvfR5klqVaK7p-kuaT4/pages/link.module.js"
crossorigin="anonymous" type="module"></script>
- <script async="" data-next-page="/_app" src="/_next/static/4tiQ0rgBeBS-fwRL6t3QY/pages/_app.js"
+ <script async="" data-next-page="/_app" src="/_next/static/7PuvfR5klqVaK7p-kuaT4/pages/_app.js"
crossorigin="anonymous" nomodule=""></script>
- <script async="" data-next-page="/_app" src="/_next/static/4tiQ0rgBeBS-fwRL6t3QY/pages/_app.module.js"
+ <script async="" data-next-page="/_app" src="/_next/static/7PuvfR5klqVaK7p-kuaT4/pages/_app.module.js"
crossorigin="anonymous" type="module"></script>
<script src="/_next/static/runtime/webpack-a470c2a25bcb4d5a8ec0.js"
async="" crossorigin="anonymous" nomodule=""></script>
@@ -50,19 +50,19 @@
async="" crossorigin="anonymous" nomodule=""></script>
<script src="/_next/static/chunks/framework.cdb73e402d876d4ac87f.module.js"
async="" crossorigin="anonymous" type="module"></script>
- <script src="/_next/static/chunks/Xb44Xz0GS0jXeXwlsO2tilR8UQc=.155621535702fe040780.js"
+ <script src="/_next/static/chunks/wj5mlU0ft7IG9eUajiEoPGMJVLU=.155621535702fe040780.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/chunks/yygjfzSMtGkv25wBcBA26ZO1OU=.c99adde05e467047c83e.js"
+ <script src="/_next/static/chunks/2Wx1GbY2JZnJvXfvmwoe+Xjrox0=.c99adde05e467047c83e.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/chunks/yygjfzSMtGkv25wBcBA26ZO1OU=.72ab6ea1ebeafbd8c735.module.js"
+ <script src="/_next/static/chunks/2Wx1GbY2JZnJvXfvmwoe+Xjrox0=.72ab6ea1ebeafbd8c735.module.js"
async="" crossorigin="anonymous" type="module"></script>
<script src="/_next/static/runtime/main-97617d800ec2b207a20a.js"
async="" crossorigin="anonymous" nomodule=""></script>
<script src="/_next/static/runtime/main-9c0b8b62a2fb27af35b2.module.js"
async="" crossorigin="anonymous" type="module"></script>
- <script src="/_next/static/4tiQ0rgBeBS-fwRL6t3QY/_buildManifest.js"
+ <script src="/_next/static/7PuvfR5klqVaK7p-kuaT4/_buildManifest.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/4tiQ0rgBeBS-fwRL6t3QY/_buildManifest.module.js"
+ <script src="/_next/static/7PuvfR5klqVaK7p-kuaT4/_buildManifest.module.js"
async="" crossorigin="anonymous" type="module"></script>
</body>
Diff for withRouter.html
@@ -6,19 +6,19 @@
<meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1"
/>
<meta name="next-head-count" content="2" />
- <link rel="preload" href="/_next/static/4tiQ0rgBeBS-fwRL6t3QY/pages/withRouter.module.js"
+ <link rel="preload" href="/_next/static/7PuvfR5klqVaK7p-kuaT4/pages/withRouter.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/4tiQ0rgBeBS-fwRL6t3QY/pages/_app.module.js"
+ <link rel="preload" href="/_next/static/7PuvfR5klqVaK7p-kuaT4/pages/_app.module.js"
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/runtime/webpack-7928590be3ef2e55b835.module.js"
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/chunks/framework.cdb73e402d876d4ac87f.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/chunks/yygjfzSMtGkv25wBcBA26ZO1OU=.72ab6ea1ebeafbd8c735.module.js"
+ <link rel="preload" href="/_next/static/chunks/2Wx1GbY2JZnJvXfvmwoe+Xjrox0=.72ab6ea1ebeafbd8c735.module.js"
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/runtime/main-9c0b8b62a2fb27af35b2.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/4tiQ0rgBeBS-fwRL6t3QY/_buildManifest.module.js"
+ <link rel="preload" href="/_next/static/7PuvfR5klqVaK7p-kuaT4/_buildManifest.module.js"
as="script" crossorigin="anonymous" />
</head>
@@ -27,18 +27,18 @@
<div>I use withRouter</div>
</div>
<script id="__NEXT_DATA__" type="application/json" crossorigin="anonymous">
- {"dataManager":"[]","props":{"pageProps":{}},"page":"/withRouter","query":{},"buildId":"4tiQ0rgBeBS-fwRL6t3QY"}
+ {"dataManager":"[]","props":{"pageProps":{}},"page":"/withRouter","query":{},"buildId":"7PuvfR5klqVaK7p-kuaT4"}
</script>
<script crossorigin="anonymous" nomodule="">
!function(){var e=document,t=e.createElement("script");if(!("noModule"in t)&&"onbeforeload"in t){var n=!1;e.addEventListener("beforeload",function(e){if(e.target===t)n=!0;else if(!e.target.hasAttribute("nomodule")||!n)return;e.preventDefault()},!0),t.type="module",t.src=".",e.head.appendChild(t),t.remove()}}();
</script>
- <script async="" data-next-page="/withRouter" src="/_next/static/4tiQ0rgBeBS-fwRL6t3QY/pages/withRouter.js"
+ <script async="" data-next-page="/withRouter" src="/_next/static/7PuvfR5klqVaK7p-kuaT4/pages/withRouter.js"
crossorigin="anonymous" nomodule=""></script>
- <script async="" data-next-page="/withRouter" src="/_next/static/4tiQ0rgBeBS-fwRL6t3QY/pages/withRouter.module.js"
+ <script async="" data-next-page="/withRouter" src="/_next/static/7PuvfR5klqVaK7p-kuaT4/pages/withRouter.module.js"
crossorigin="anonymous" type="module"></script>
- <script async="" data-next-page="/_app" src="/_next/static/4tiQ0rgBeBS-fwRL6t3QY/pages/_app.js"
+ <script async="" data-next-page="/_app" src="/_next/static/7PuvfR5klqVaK7p-kuaT4/pages/_app.js"
crossorigin="anonymous" nomodule=""></script>
- <script async="" data-next-page="/_app" src="/_next/static/4tiQ0rgBeBS-fwRL6t3QY/pages/_app.module.js"
+ <script async="" data-next-page="/_app" src="/_next/static/7PuvfR5klqVaK7p-kuaT4/pages/_app.module.js"
crossorigin="anonymous" type="module"></script>
<script src="/_next/static/runtime/webpack-a470c2a25bcb4d5a8ec0.js"
async="" crossorigin="anonymous" nomodule=""></script>
@@ -48,19 +48,19 @@
async="" crossorigin="anonymous" nomodule=""></script>
<script src="/_next/static/chunks/framework.cdb73e402d876d4ac87f.module.js"
async="" crossorigin="anonymous" type="module"></script>
- <script src="/_next/static/chunks/Xb44Xz0GS0jXeXwlsO2tilR8UQc=.155621535702fe040780.js"
+ <script src="/_next/static/chunks/wj5mlU0ft7IG9eUajiEoPGMJVLU=.155621535702fe040780.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/chunks/yygjfzSMtGkv25wBcBA26ZO1OU=.c99adde05e467047c83e.js"
+ <script src="/_next/static/chunks/2Wx1GbY2JZnJvXfvmwoe+Xjrox0=.c99adde05e467047c83e.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/chunks/yygjfzSMtGkv25wBcBA26ZO1OU=.72ab6ea1ebeafbd8c735.module.js"
+ <script src="/_next/static/chunks/2Wx1GbY2JZnJvXfvmwoe+Xjrox0=.72ab6ea1ebeafbd8c735.module.js"
async="" crossorigin="anonymous" type="module"></script>
<script src="/_next/static/runtime/main-97617d800ec2b207a20a.js"
async="" crossorigin="anonymous" nomodule=""></script>
<script src="/_next/static/runtime/main-9c0b8b62a2fb27af35b2.module.js"
async="" crossorigin="anonymous" type="module"></script>
- <script src="/_next/static/4tiQ0rgBeBS-fwRL6t3QY/_buildManifest.js"
+ <script src="/_next/static/7PuvfR5klqVaK7p-kuaT4/_buildManifest.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/4tiQ0rgBeBS-fwRL6t3QY/_buildManifest.module.js"
+ <script src="/_next/static/7PuvfR5klqVaK7p-kuaT4/_buildManifest.module.js"
async="" crossorigin="anonymous" type="module"></script>
</body>
Serverless Mode
General
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
buildDuration | 25s | 24.9s | -106ms |
nodeModulesSize | 41.3 MB | 41.3 MB | ✓ |
Client Bundles (main, webpack, commons)
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
main-HASH.js | 18.1 kB | 18.1 kB | ✓ |
main-HASH.js gzip | 6.64 kB | 6.64 kB | ✓ |
webpack-HASH.js | 1.53 kB | 1.53 kB | ✓ |
webpack-HASH.js gzip | 746 B | 746 B | ✓ |
Overall change | ✓ |
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
main-HASH.module.js | 16.5 kB | 16.5 kB | ✓ |
main-HASH.module.js gzip | 6.37 kB | 6.37 kB | ✓ |
webpack-HASH.module.js | 1.53 kB | 1.53 kB | ✓ |
webpack-HASH.module.js gzip | 746 B | 746 B | ✓ |
Overall change | ✓ |
Client Pages
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_app.js | 1.83 kB | 1.83 kB | ✓ |
_app.js gzip | 884 B | 884 B | ✓ |
_error.js | 12.1 kB | 12.1 kB | ✓ |
_error.js gzip | 4.76 kB | 4.76 kB | ✓ |
hooks.js | 12.7 kB | 12.7 kB | ✓ |
hooks.js gzip | 4.81 kB | 4.81 kB | ✓ |
index.js | 343 B | 343 B | ✓ |
index.js gzip | 237 B | 237 B | ✓ |
link.js | 8.14 kB | 8.14 kB | ✓ |
link.js gzip | 3.49 kB | 3.49 kB | ✓ |
routerDirect.js | 433 B | 433 B | ✓ |
routerDirect.js gzip | 296 B | 296 B | ✓ |
withRouter.js | 444 B | 444 B | ✓ |
withRouter.js gzip | 294 B | 294 B | ✓ |
Overall change | ✓ |
Client Pages Modern
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_app.module.js | 1.73 kB | 1.73 kB | ✓ |
_app.module.js gzip | 840 B | 840 B | ✓ |
_error.module.js | 23.3 kB | 23.3 kB | ✓ |
_error.module.js gzip | 8.62 kB | 8.62 kB | ✓ |
hooks.module.js | 1.55 kB | 1.55 kB | ✓ |
hooks.module.js gzip | 804 B | 804 B | ✓ |
index.module.js | 319 B | 319 B | ✓ |
index.module.js gzip | 238 B | 238 B | ✓ |
link.module.js | 8.52 kB | 8.52 kB | ✓ |
link.module.js gzip | 3.68 kB | 3.68 kB | ✓ |
routerDirect.module.js | 419 B | 419 B | ✓ |
routerDirect.module.js gzip | 294 B | 294 B | ✓ |
withRouter.module.js | 429 B | 429 B | ✓ |
withRouter.module.js gzip | 293 B | 293 B | ✓ |
Overall change | ✓ |
Client Build Manifests
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_buildManifest.js | 81 B | 81 B | ✓ |
_buildManifest.js gzip | 61 B | 61 B | ✓ |
_buildManifest.module.js | 81 B | 81 B | ✓ |
_buildManifest.module.js gzip | 61 B | 61 B | ✓ |
Overall change | ✓ |
Serverless bundles
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_error.js | 247 kB | 247 kB | ✓ |
_error.js gzip | 66.2 kB | 66.3 kB | |
hooks.html | 3.81 kB | 3.81 kB | ✓ |
hooks.html gzip | 982 B | 978 B | -4 B |
index.js | 248 kB | 248 kB | ✓ |
index.js gzip | 66.8 kB | 66.6 kB | -163 B |
link.js | 255 kB | 255 kB | ✓ |
link.js gzip | 68.9 kB | 68.9 kB | -20 B |
routerDirect.js | 249 kB | 249 kB | ✓ |
routerDirect.js gzip | 66.8 kB | 66.7 kB | -90 B |
withRouter.js | 248 kB | 248 kB | ✓ |
withRouter.js gzip | 66.7 kB | 66.6 kB | -88 B |
Overall change | ✓ |
Stats from current PRDefault Server Mode (Increase detected
|
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
buildDuration | 23s | 23.4s | |
nodeModulesSize | 41.8 MB | 41.8 MB | ✓ |
Client Bundles (main, webpack, commons) Overall decrease ✓
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
main-HASH.js | 18.2 kB | 18.2 kB | -1 B |
main-HASH.js gzip | 6.64 kB | 6.64 kB | -1 B |
webpack-HASH.js | 1.53 kB | 1.53 kB | ✓ |
webpack-HASH.js gzip | 746 B | 746 B | ✓ |
Overall change | -1 B |
Client Bundles (main, webpack, commons) Modern Overall decrease ✓
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
main-HASH.module.js | 16.5 kB | 16.5 kB | -1 B |
main-HASH.module.js gzip | 6.38 kB | 6.37 kB | -1 B |
webpack-HASH.module.js | 1.53 kB | 1.53 kB | ✓ |
webpack-HASH.module.js gzip | 746 B | 746 B | ✓ |
Overall change | -1 B |
Client Pages Overall increase ⚠️
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_app.js | 1.83 kB | 1.83 kB | ✓ |
_app.js gzip | 884 B | 884 B | ✓ |
_error.js | 12.1 kB | 12.1 kB | ✓ |
_error.js gzip | 4.76 kB | 4.76 kB | |
hooks.js | 12.7 kB | 12.7 kB | ✓ |
hooks.js gzip | 4.81 kB | 4.81 kB | ✓ |
index.js | 343 B | 343 B | ✓ |
index.js gzip | 237 B | 237 B | ✓ |
link.js | 8.14 kB | 8.14 kB | ✓ |
link.js gzip | 3.49 kB | 3.49 kB | |
routerDirect.js | 433 B | 434 B | |
routerDirect.js gzip | 296 B | 296 B | ✓ |
withRouter.js | 444 B | 444 B | ✓ |
withRouter.js gzip | 294 B | 294 B | ✓ |
Overall change |
Client Pages Modern Overall increase ⚠️
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_app.module.js | 1.73 kB | 1.73 kB | ✓ |
_app.module.js gzip | 840 B | 840 B | ✓ |
_error.module.js | 23.3 kB | 23.3 kB | ✓ |
_error.module.js gzip | 8.62 kB | 8.62 kB | ✓ |
hooks.module.js | 1.55 kB | 1.55 kB | ✓ |
hooks.module.js gzip | 804 B | 805 B | |
index.module.js | 319 B | 319 B | ✓ |
index.module.js gzip | 238 B | 238 B | ✓ |
link.module.js | 8.52 kB | 8.52 kB | ✓ |
link.module.js gzip | 3.68 kB | 3.68 kB | ✓ |
routerDirect.module.js | 419 B | 419 B | ✓ |
routerDirect.module.js gzip | 294 B | 294 B | ✓ |
withRouter.module.js | 429 B | 430 B | |
withRouter.module.js gzip | 293 B | 293 B | ✓ |
Overall change |
Client Build Manifests
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_buildManifest.js | 81 B | 81 B | ✓ |
_buildManifest.js gzip | 61 B | 61 B | ✓ |
_buildManifest.module.js | 81 B | 81 B | ✓ |
_buildManifest.module.js gzip | 61 B | 61 B | ✓ |
Overall change | ✓ |
Rendered Page Sizes Overall increase ⚠️
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
index.html | 3.69 kB | 3.7 kB | |
index.html gzip | 953 B | 956 B | |
link.html | 3.74 kB | 3.75 kB | |
link.html gzip | 962 B | 964 B | |
withRouter.html | 3.75 kB | 3.75 kB | |
withRouter.html gzip | 949 B | 951 B | |
Overall change |
Diffs
Diff for index.html
@@ -6,9 +6,9 @@
<meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1"
/>
<meta name="next-head-count" content="2" />
- <link rel="preload" href="/_next/static/QhirKCoFz_G1hp1JKxZ2H/pages/index.module.js"
+ <link rel="preload" href="/_next/static/EjqRKUC34Gkl3IaHJAo8a/pages/index.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/QhirKCoFz_G1hp1JKxZ2H/pages/_app.module.js"
+ <link rel="preload" href="/_next/static/EjqRKUC34Gkl3IaHJAo8a/pages/_app.module.js"
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/runtime/webpack-7928590be3ef2e55b835.module.js"
as="script" crossorigin="anonymous" />
@@ -16,9 +16,9 @@
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/chunks/framework.cdb73e402d876d4ac87f.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/chunks/f70H6Fs96KsCxo6pO1NdTP28iLI=.c659a74b6088e6ac1abe.module.js"
+ <link rel="preload" href="/_next/static/chunks/1Jf8FktiUOvgoVH7yKQIJEBOP8=.c659a74b6088e6ac1abe.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/QhirKCoFz_G1hp1JKxZ2H/_buildManifest.module.js"
+ <link rel="preload" href="/_next/static/EjqRKUC34Gkl3IaHJAo8a/_buildManifest.module.js"
as="script" crossorigin="anonymous" />
</head>
@@ -26,18 +26,18 @@
<div id="__next">Hello world 👋</div>
<script id="__NEXT_DATA__" type="application/json"
crossorigin="anonymous">
- {"dataManager":"[]","props":{"pageProps":{}},"page":"/","query":{},"buildId":"QhirKCoFz_G1hp1JKxZ2H"}
+ {"dataManager":"[]","props":{"pageProps":{}},"page":"/","query":{},"buildId":"EjqRKUC34Gkl3IaHJAo8a"}
</script>
<script crossorigin="anonymous" nomodule="">
!function(){var e=document,t=e.createElement("script");if(!("noModule"in t)&&"onbeforeload"in t){var n=!1;e.addEventListener("beforeload",function(e){if(e.target===t)n=!0;else if(!e.target.hasAttribute("nomodule")||!n)return;e.preventDefault()},!0),t.type="module",t.src=".",e.head.appendChild(t),t.remove()}}();
</script>
- <script async="" data-next-page="/" src="/_next/static/QhirKCoFz_G1hp1JKxZ2H/pages/index.js"
+ <script async="" data-next-page="/" src="/_next/static/EjqRKUC34Gkl3IaHJAo8a/pages/index.js"
crossorigin="anonymous" nomodule=""></script>
- <script async="" data-next-page="/" src="/_next/static/QhirKCoFz_G1hp1JKxZ2H/pages/index.module.js"
+ <script async="" data-next-page="/" src="/_next/static/EjqRKUC34Gkl3IaHJAo8a/pages/index.module.js"
crossorigin="anonymous" type="module"></script>
- <script async="" data-next-page="/_app" src="/_next/static/QhirKCoFz_G1hp1JKxZ2H/pages/_app.js"
+ <script async="" data-next-page="/_app" src="/_next/static/EjqRKUC34Gkl3IaHJAo8a/pages/_app.js"
crossorigin="anonymous" nomodule=""></script>
- <script async="" data-next-page="/_app" src="/_next/static/QhirKCoFz_G1hp1JKxZ2H/pages/_app.module.js"
+ <script async="" data-next-page="/_app" src="/_next/static/EjqRKUC34Gkl3IaHJAo8a/pages/_app.module.js"
crossorigin="anonymous" type="module"></script>
<script src="/_next/static/runtime/webpack-a470c2a25bcb4d5a8ec0.js"
async="" crossorigin="anonymous" nomodule=""></script>
@@ -51,15 +51,15 @@
async="" crossorigin="anonymous" nomodule=""></script>
<script src="/_next/static/chunks/framework.cdb73e402d876d4ac87f.module.js"
async="" crossorigin="anonymous" type="module"></script>
- <script src="/_next/static/chunks/tk0GBEtIMuXHFHkm2CEoFnuHk=.155621535702fe040780.js"
+ <script src="/_next/static/chunks/2X83M4JLP2z7feC8LHGCi+qJFIc=.155621535702fe040780.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/chunks/f70H6Fs96KsCxo6pO1NdTP28iLI=.f6f7599a2edf91d8366a.js"
+ <script src="/_next/static/chunks/1Jf8FktiUOvgoVH7yKQIJEBOP8=.f6f7599a2edf91d8366a.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/chunks/f70H6Fs96KsCxo6pO1NdTP28iLI=.c659a74b6088e6ac1abe.module.js"
+ <script src="/_next/static/chunks/1Jf8FktiUOvgoVH7yKQIJEBOP8=.c659a74b6088e6ac1abe.module.js"
async="" crossorigin="anonymous" type="module"></script>
- <script src="/_next/static/QhirKCoFz_G1hp1JKxZ2H/_buildManifest.js"
+ <script src="/_next/static/EjqRKUC34Gkl3IaHJAo8a/_buildManifest.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/QhirKCoFz_G1hp1JKxZ2H/_buildManifest.module.js"
+ <script src="/_next/static/EjqRKUC34Gkl3IaHJAo8a/_buildManifest.module.js"
async="" crossorigin="anonymous" type="module"></script>
</body>
Diff for link.html
@@ -6,19 +6,19 @@
<meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1"
/>
<meta name="next-head-count" content="2" />
- <link rel="preload" href="/_next/static/QhirKCoFz_G1hp1JKxZ2H/pages/link.module.js"
+ <link rel="preload" href="/_next/static/EjqRKUC34Gkl3IaHJAo8a/pages/link.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/QhirKCoFz_G1hp1JKxZ2H/pages/_app.module.js"
+ <link rel="preload" href="/_next/static/EjqRKUC34Gkl3IaHJAo8a/pages/_app.module.js"
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/runtime/webpack-7928590be3ef2e55b835.module.js"
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/chunks/framework.cdb73e402d876d4ac87f.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/chunks/f70H6Fs96KsCxo6pO1NdTP28iLI=.c659a74b6088e6ac1abe.module.js"
+ <link rel="preload" href="/_next/static/chunks/1Jf8FktiUOvgoVH7yKQIJEBOP8=.c659a74b6088e6ac1abe.module.js"
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/runtime/main-b34dfc4fd33bc7bccca0.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/QhirKCoFz_G1hp1JKxZ2H/_buildManifest.module.js"
+ <link rel="preload" href="/_next/static/EjqRKUC34Gkl3IaHJAo8a/_buildManifest.module.js"
as="script" crossorigin="anonymous" />
</head>
@@ -29,18 +29,18 @@
</div>
</div>
<script id="__NEXT_DATA__" type="application/json" crossorigin="anonymous">
- {"dataManager":"[]","props":{"pageProps":{}},"page":"/link","query":{},"buildId":"QhirKCoFz_G1hp1JKxZ2H"}
+ {"dataManager":"[]","props":{"pageProps":{}},"page":"/link","query":{},"buildId":"EjqRKUC34Gkl3IaHJAo8a"}
</script>
<script crossorigin="anonymous" nomodule="">
!function(){var e=document,t=e.createElement("script");if(!("noModule"in t)&&"onbeforeload"in t){var n=!1;e.addEventListener("beforeload",function(e){if(e.target===t)n=!0;else if(!e.target.hasAttribute("nomodule")||!n)return;e.preventDefault()},!0),t.type="module",t.src=".",e.head.appendChild(t),t.remove()}}();
</script>
- <script async="" data-next-page="/link" src="/_next/static/QhirKCoFz_G1hp1JKxZ2H/pages/link.js"
+ <script async="" data-next-page="/link" src="/_next/static/EjqRKUC34Gkl3IaHJAo8a/pages/link.js"
crossorigin="anonymous" nomodule=""></script>
- <script async="" data-next-page="/link" src="/_next/static/QhirKCoFz_G1hp1JKxZ2H/pages/link.module.js"
+ <script async="" data-next-page="/link" src="/_next/static/EjqRKUC34Gkl3IaHJAo8a/pages/link.module.js"
crossorigin="anonymous" type="module"></script>
- <script async="" data-next-page="/_app" src="/_next/static/QhirKCoFz_G1hp1JKxZ2H/pages/_app.js"
+ <script async="" data-next-page="/_app" src="/_next/static/EjqRKUC34Gkl3IaHJAo8a/pages/_app.js"
crossorigin="anonymous" nomodule=""></script>
- <script async="" data-next-page="/_app" src="/_next/static/QhirKCoFz_G1hp1JKxZ2H/pages/_app.module.js"
+ <script async="" data-next-page="/_app" src="/_next/static/EjqRKUC34Gkl3IaHJAo8a/pages/_app.module.js"
crossorigin="anonymous" type="module"></script>
<script src="/_next/static/runtime/webpack-a470c2a25bcb4d5a8ec0.js"
async="" crossorigin="anonymous" nomodule=""></script>
@@ -50,19 +50,19 @@
async="" crossorigin="anonymous" nomodule=""></script>
<script src="/_next/static/chunks/framework.cdb73e402d876d4ac87f.module.js"
async="" crossorigin="anonymous" type="module"></script>
- <script src="/_next/static/chunks/tk0GBEtIMuXHFHkm2CEoFnuHk=.155621535702fe040780.js"
+ <script src="/_next/static/chunks/2X83M4JLP2z7feC8LHGCi+qJFIc=.155621535702fe040780.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/chunks/f70H6Fs96KsCxo6pO1NdTP28iLI=.f6f7599a2edf91d8366a.js"
+ <script src="/_next/static/chunks/1Jf8FktiUOvgoVH7yKQIJEBOP8=.f6f7599a2edf91d8366a.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/chunks/f70H6Fs96KsCxo6pO1NdTP28iLI=.c659a74b6088e6ac1abe.module.js"
+ <script src="/_next/static/chunks/1Jf8FktiUOvgoVH7yKQIJEBOP8=.c659a74b6088e6ac1abe.module.js"
async="" crossorigin="anonymous" type="module"></script>
<script src="/_next/static/runtime/main-2cd30e118423b74fdb03.js"
async="" crossorigin="anonymous" nomodule=""></script>
<script src="/_next/static/runtime/main-b34dfc4fd33bc7bccca0.module.js"
async="" crossorigin="anonymous" type="module"></script>
- <script src="/_next/static/QhirKCoFz_G1hp1JKxZ2H/_buildManifest.js"
+ <script src="/_next/static/EjqRKUC34Gkl3IaHJAo8a/_buildManifest.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/QhirKCoFz_G1hp1JKxZ2H/_buildManifest.module.js"
+ <script src="/_next/static/EjqRKUC34Gkl3IaHJAo8a/_buildManifest.module.js"
async="" crossorigin="anonymous" type="module"></script>
</body>
Diff for withRouter.html
@@ -6,19 +6,19 @@
<meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1"
/>
<meta name="next-head-count" content="2" />
- <link rel="preload" href="/_next/static/QhirKCoFz_G1hp1JKxZ2H/pages/withRouter.module.js"
+ <link rel="preload" href="/_next/static/EjqRKUC34Gkl3IaHJAo8a/pages/withRouter.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/QhirKCoFz_G1hp1JKxZ2H/pages/_app.module.js"
+ <link rel="preload" href="/_next/static/EjqRKUC34Gkl3IaHJAo8a/pages/_app.module.js"
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/runtime/webpack-7928590be3ef2e55b835.module.js"
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/chunks/framework.cdb73e402d876d4ac87f.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/chunks/f70H6Fs96KsCxo6pO1NdTP28iLI=.c659a74b6088e6ac1abe.module.js"
+ <link rel="preload" href="/_next/static/chunks/1Jf8FktiUOvgoVH7yKQIJEBOP8=.c659a74b6088e6ac1abe.module.js"
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/runtime/main-b34dfc4fd33bc7bccca0.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/QhirKCoFz_G1hp1JKxZ2H/_buildManifest.module.js"
+ <link rel="preload" href="/_next/static/EjqRKUC34Gkl3IaHJAo8a/_buildManifest.module.js"
as="script" crossorigin="anonymous" />
</head>
@@ -27,18 +27,18 @@
<div>I use withRouter</div>
</div>
<script id="__NEXT_DATA__" type="application/json" crossorigin="anonymous">
- {"dataManager":"[]","props":{"pageProps":{}},"page":"/withRouter","query":{},"buildId":"QhirKCoFz_G1hp1JKxZ2H"}
+ {"dataManager":"[]","props":{"pageProps":{}},"page":"/withRouter","query":{},"buildId":"EjqRKUC34Gkl3IaHJAo8a"}
</script>
<script crossorigin="anonymous" nomodule="">
!function(){var e=document,t=e.createElement("script");if(!("noModule"in t)&&"onbeforeload"in t){var n=!1;e.addEventListener("beforeload",function(e){if(e.target===t)n=!0;else if(!e.target.hasAttribute("nomodule")||!n)return;e.preventDefault()},!0),t.type="module",t.src=".",e.head.appendChild(t),t.remove()}}();
</script>
- <script async="" data-next-page="/withRouter" src="/_next/static/QhirKCoFz_G1hp1JKxZ2H/pages/withRouter.js"
+ <script async="" data-next-page="/withRouter" src="/_next/static/EjqRKUC34Gkl3IaHJAo8a/pages/withRouter.js"
crossorigin="anonymous" nomodule=""></script>
- <script async="" data-next-page="/withRouter" src="/_next/static/QhirKCoFz_G1hp1JKxZ2H/pages/withRouter.module.js"
+ <script async="" data-next-page="/withRouter" src="/_next/static/EjqRKUC34Gkl3IaHJAo8a/pages/withRouter.module.js"
crossorigin="anonymous" type="module"></script>
- <script async="" data-next-page="/_app" src="/_next/static/QhirKCoFz_G1hp1JKxZ2H/pages/_app.js"
+ <script async="" data-next-page="/_app" src="/_next/static/EjqRKUC34Gkl3IaHJAo8a/pages/_app.js"
crossorigin="anonymous" nomodule=""></script>
- <script async="" data-next-page="/_app" src="/_next/static/QhirKCoFz_G1hp1JKxZ2H/pages/_app.module.js"
+ <script async="" data-next-page="/_app" src="/_next/static/EjqRKUC34Gkl3IaHJAo8a/pages/_app.module.js"
crossorigin="anonymous" type="module"></script>
<script src="/_next/static/runtime/webpack-a470c2a25bcb4d5a8ec0.js"
async="" crossorigin="anonymous" nomodule=""></script>
@@ -48,19 +48,19 @@
async="" crossorigin="anonymous" nomodule=""></script>
<script src="/_next/static/chunks/framework.cdb73e402d876d4ac87f.module.js"
async="" crossorigin="anonymous" type="module"></script>
- <script src="/_next/static/chunks/tk0GBEtIMuXHFHkm2CEoFnuHk=.155621535702fe040780.js"
+ <script src="/_next/static/chunks/2X83M4JLP2z7feC8LHGCi+qJFIc=.155621535702fe040780.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/chunks/f70H6Fs96KsCxo6pO1NdTP28iLI=.f6f7599a2edf91d8366a.js"
+ <script src="/_next/static/chunks/1Jf8FktiUOvgoVH7yKQIJEBOP8=.f6f7599a2edf91d8366a.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/chunks/f70H6Fs96KsCxo6pO1NdTP28iLI=.c659a74b6088e6ac1abe.module.js"
+ <script src="/_next/static/chunks/1Jf8FktiUOvgoVH7yKQIJEBOP8=.c659a74b6088e6ac1abe.module.js"
async="" crossorigin="anonymous" type="module"></script>
<script src="/_next/static/runtime/main-2cd30e118423b74fdb03.js"
async="" crossorigin="anonymous" nomodule=""></script>
<script src="/_next/static/runtime/main-b34dfc4fd33bc7bccca0.module.js"
async="" crossorigin="anonymous" type="module"></script>
- <script src="/_next/static/QhirKCoFz_G1hp1JKxZ2H/_buildManifest.js"
+ <script src="/_next/static/EjqRKUC34Gkl3IaHJAo8a/_buildManifest.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/QhirKCoFz_G1hp1JKxZ2H/_buildManifest.module.js"
+ <script src="/_next/static/EjqRKUC34Gkl3IaHJAo8a/_buildManifest.module.js"
async="" crossorigin="anonymous" type="module"></script>
</body>
Serverless Mode (Increase detected ⚠️ )
General
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
buildDuration | 24.9s | 25.2s | |
nodeModulesSize | 41.8 MB | 41.8 MB | ✓ |
Client Bundles (main, webpack, commons)
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
main-HASH.js | 18.2 kB | 18.2 kB | ✓ |
main-HASH.js gzip | 6.64 kB | 6.64 kB | ✓ |
webpack-HASH.js | 1.53 kB | 1.53 kB | ✓ |
webpack-HASH.js gzip | 746 B | 746 B | ✓ |
Overall change | ✓ |
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
main-HASH.module.js | 16.5 kB | 16.5 kB | ✓ |
main-HASH.module.js gzip | 6.38 kB | 6.38 kB | ✓ |
webpack-HASH.module.js | 1.53 kB | 1.53 kB | ✓ |
webpack-HASH.module.js gzip | 746 B | 746 B | ✓ |
Overall change | ✓ |
Client Pages
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_app.js | 1.83 kB | 1.83 kB | ✓ |
_app.js gzip | 884 B | 884 B | ✓ |
_error.js | 12.1 kB | 12.1 kB | ✓ |
_error.js gzip | 4.76 kB | 4.76 kB | ✓ |
hooks.js | 12.7 kB | 12.7 kB | ✓ |
hooks.js gzip | 4.81 kB | 4.81 kB | ✓ |
index.js | 343 B | 343 B | ✓ |
index.js gzip | 237 B | 237 B | ✓ |
link.js | 8.14 kB | 8.14 kB | ✓ |
link.js gzip | 3.49 kB | 3.49 kB | ✓ |
routerDirect.js | 433 B | 433 B | ✓ |
routerDirect.js gzip | 296 B | 296 B | ✓ |
withRouter.js | 444 B | 444 B | ✓ |
withRouter.js gzip | 294 B | 294 B | ✓ |
Overall change | ✓ |
Client Pages Modern
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_app.module.js | 1.73 kB | 1.73 kB | ✓ |
_app.module.js gzip | 840 B | 840 B | ✓ |
_error.module.js | 23.3 kB | 23.3 kB | ✓ |
_error.module.js gzip | 8.62 kB | 8.62 kB | ✓ |
hooks.module.js | 1.55 kB | 1.55 kB | ✓ |
hooks.module.js gzip | 804 B | 804 B | ✓ |
index.module.js | 319 B | 319 B | ✓ |
index.module.js gzip | 238 B | 238 B | ✓ |
link.module.js | 8.52 kB | 8.52 kB | ✓ |
link.module.js gzip | 3.68 kB | 3.68 kB | ✓ |
routerDirect.module.js | 419 B | 419 B | ✓ |
routerDirect.module.js gzip | 294 B | 294 B | ✓ |
withRouter.module.js | 429 B | 429 B | ✓ |
withRouter.module.js gzip | 293 B | 293 B | ✓ |
Overall change | ✓ |
Client Build Manifests
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_buildManifest.js | 81 B | 81 B | ✓ |
_buildManifest.js gzip | 61 B | 61 B | ✓ |
_buildManifest.module.js | 81 B | 81 B | ✓ |
_buildManifest.module.js gzip | 61 B | 61 B | ✓ |
Overall change | ✓ |
Serverless bundles Overall increase ⚠️
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_error.js | 247 kB | 247 kB | |
_error.js gzip | 66.5 kB | 66.3 kB | -171 B |
hooks.html | 3.81 kB | 3.81 kB | |
hooks.html gzip | 979 B | 982 B | |
index.js | 248 kB | 248 kB | |
index.js gzip | 66.7 kB | 66.7 kB | ✓ |
link.js | 256 kB | 256 kB | |
link.js gzip | 68.8 kB | 68.9 kB | |
routerDirect.js | 249 kB | 249 kB | |
routerDirect.js gzip | 66.9 kB | 66.7 kB | -183 B |
withRouter.js | 249 kB | 249 kB | |
withRouter.js gzip | 66.6 kB | 66.9 kB | |
Overall change |
@lfades ping |
Stats from current PRDefault Server Mode (Increase detected
|
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
buildDuration | 25.9s | 24.2s | -1.7s |
nodeModulesSize | 42 MB | 42 MB | ✓ |
Client Bundles (main, webpack, commons) Overall decrease ✓
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
main-HASH.js | 18.2 kB | 18.2 kB | -1 B |
main-HASH.js gzip | 6.64 kB | 6.64 kB | -1 B |
webpack-HASH.js | 1.53 kB | 1.53 kB | ✓ |
webpack-HASH.js gzip | 746 B | 746 B | ✓ |
Overall change | -1 B |
Client Bundles (main, webpack, commons) Modern Overall decrease ✓
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
main-HASH.module.js | 16.5 kB | 16.5 kB | -1 B |
main-HASH.module.js gzip | 6.38 kB | 6.37 kB | -1 B |
webpack-HASH.module.js | 1.53 kB | 1.53 kB | ✓ |
webpack-HASH.module.js gzip | 746 B | 746 B | ✓ |
Overall change | -1 B |
Client Pages Overall increase ⚠️
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_app.js | 1.83 kB | 1.83 kB | ✓ |
_app.js gzip | 884 B | 884 B | ✓ |
_error.js | 12.1 kB | 12.1 kB | ✓ |
_error.js gzip | 4.76 kB | 4.76 kB | |
hooks.js | 12.7 kB | 12.7 kB | ✓ |
hooks.js gzip | 4.81 kB | 4.81 kB | ✓ |
index.js | 343 B | 343 B | ✓ |
index.js gzip | 237 B | 237 B | ✓ |
link.js | 8.14 kB | 8.14 kB | ✓ |
link.js gzip | 3.49 kB | 3.49 kB | |
routerDirect.js | 433 B | 434 B | |
routerDirect.js gzip | 296 B | 296 B | ✓ |
withRouter.js | 444 B | 444 B | ✓ |
withRouter.js gzip | 294 B | 294 B | ✓ |
Overall change |
Client Pages Modern Overall increase ⚠️
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_app.module.js | 1.73 kB | 1.73 kB | ✓ |
_app.module.js gzip | 840 B | 840 B | ✓ |
_error.module.js | 23.3 kB | 23.3 kB | ✓ |
_error.module.js gzip | 8.62 kB | 8.62 kB | ✓ |
hooks.module.js | 1.55 kB | 1.55 kB | ✓ |
hooks.module.js gzip | 804 B | 805 B | |
index.module.js | 319 B | 319 B | ✓ |
index.module.js gzip | 238 B | 238 B | ✓ |
link.module.js | 8.52 kB | 8.52 kB | ✓ |
link.module.js gzip | 3.68 kB | 3.68 kB | ✓ |
routerDirect.module.js | 419 B | 419 B | ✓ |
routerDirect.module.js gzip | 294 B | 294 B | ✓ |
withRouter.module.js | 429 B | 430 B | |
withRouter.module.js gzip | 293 B | 293 B | ✓ |
Overall change |
Client Build Manifests
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_buildManifest.js | 81 B | 81 B | ✓ |
_buildManifest.js gzip | 61 B | 61 B | ✓ |
_buildManifest.module.js | 81 B | 81 B | ✓ |
_buildManifest.module.js gzip | 61 B | 61 B | ✓ |
Overall change | ✓ |
Rendered Page Sizes Overall increase ⚠️
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
index.html | 3.69 kB | 3.7 kB | |
index.html gzip | 955 B | 957 B | |
link.html | 3.74 kB | 3.74 kB | |
link.html gzip | 964 B | 964 B | ✓ |
withRouter.html | 3.75 kB | 3.75 kB | |
withRouter.html gzip | 951 B | 951 B | ✓ |
Overall change |
Diffs
Diff for index.html
@@ -6,9 +6,9 @@
<meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1"
/>
<meta name="next-head-count" content="2" />
- <link rel="preload" href="/_next/static/3XFolVBctQ1pzpCKpfThe/pages/index.module.js"
+ <link rel="preload" href="/_next/static/8JnoaBONjVytNwUme4fyv/pages/index.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/3XFolVBctQ1pzpCKpfThe/pages/_app.module.js"
+ <link rel="preload" href="/_next/static/8JnoaBONjVytNwUme4fyv/pages/_app.module.js"
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/runtime/webpack-7928590be3ef2e55b835.module.js"
as="script" crossorigin="anonymous" />
@@ -16,9 +16,9 @@
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/chunks/framework.cdb73e402d876d4ac87f.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/chunks/APKZw2xbGiJrtXjv8QVU3iATeP0=.c659a74b6088e6ac1abe.module.js"
+ <link rel="preload" href="/_next/static/chunks/DQGYDZqGcCT8ARF7s7OfOpmz9Q=.c659a74b6088e6ac1abe.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/3XFolVBctQ1pzpCKpfThe/_buildManifest.module.js"
+ <link rel="preload" href="/_next/static/8JnoaBONjVytNwUme4fyv/_buildManifest.module.js"
as="script" crossorigin="anonymous" />
</head>
@@ -26,18 +26,18 @@
<div id="__next">Hello world 👋</div>
<script id="__NEXT_DATA__" type="application/json"
crossorigin="anonymous">
- {"dataManager":"[]","props":{"pageProps":{}},"page":"/","query":{},"buildId":"3XFolVBctQ1pzpCKpfThe"}
+ {"dataManager":"[]","props":{"pageProps":{}},"page":"/","query":{},"buildId":"8JnoaBONjVytNwUme4fyv"}
</script>
<script crossorigin="anonymous" nomodule="">
!function(){var e=document,t=e.createElement("script");if(!("noModule"in t)&&"onbeforeload"in t){var n=!1;e.addEventListener("beforeload",function(e){if(e.target===t)n=!0;else if(!e.target.hasAttribute("nomodule")||!n)return;e.preventDefault()},!0),t.type="module",t.src=".",e.head.appendChild(t),t.remove()}}();
</script>
- <script async="" data-next-page="/" src="/_next/static/3XFolVBctQ1pzpCKpfThe/pages/index.js"
+ <script async="" data-next-page="/" src="/_next/static/8JnoaBONjVytNwUme4fyv/pages/index.js"
crossorigin="anonymous" nomodule=""></script>
- <script async="" data-next-page="/" src="/_next/static/3XFolVBctQ1pzpCKpfThe/pages/index.module.js"
+ <script async="" data-next-page="/" src="/_next/static/8JnoaBONjVytNwUme4fyv/pages/index.module.js"
crossorigin="anonymous" type="module"></script>
- <script async="" data-next-page="/_app" src="/_next/static/3XFolVBctQ1pzpCKpfThe/pages/_app.js"
+ <script async="" data-next-page="/_app" src="/_next/static/8JnoaBONjVytNwUme4fyv/pages/_app.js"
crossorigin="anonymous" nomodule=""></script>
- <script async="" data-next-page="/_app" src="/_next/static/3XFolVBctQ1pzpCKpfThe/pages/_app.module.js"
+ <script async="" data-next-page="/_app" src="/_next/static/8JnoaBONjVytNwUme4fyv/pages/_app.module.js"
crossorigin="anonymous" type="module"></script>
<script src="/_next/static/runtime/webpack-a470c2a25bcb4d5a8ec0.js"
async="" crossorigin="anonymous" nomodule=""></script>
@@ -51,15 +51,15 @@
async="" crossorigin="anonymous" nomodule=""></script>
<script src="/_next/static/chunks/framework.cdb73e402d876d4ac87f.module.js"
async="" crossorigin="anonymous" type="module"></script>
- <script src="/_next/static/chunks/ut78akvXOmC63FqIVOpSTP2zXJc=.155621535702fe040780.js"
+ <script src="/_next/static/chunks/NLN47n98ar2Jg+U3JK6IkjS1y7c=.155621535702fe040780.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/chunks/APKZw2xbGiJrtXjv8QVU3iATeP0=.f6f7599a2edf91d8366a.js"
+ <script src="/_next/static/chunks/DQGYDZqGcCT8ARF7s7OfOpmz9Q=.f6f7599a2edf91d8366a.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/chunks/APKZw2xbGiJrtXjv8QVU3iATeP0=.c659a74b6088e6ac1abe.module.js"
+ <script src="/_next/static/chunks/DQGYDZqGcCT8ARF7s7OfOpmz9Q=.c659a74b6088e6ac1abe.module.js"
async="" crossorigin="anonymous" type="module"></script>
- <script src="/_next/static/3XFolVBctQ1pzpCKpfThe/_buildManifest.js"
+ <script src="/_next/static/8JnoaBONjVytNwUme4fyv/_buildManifest.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/3XFolVBctQ1pzpCKpfThe/_buildManifest.module.js"
+ <script src="/_next/static/8JnoaBONjVytNwUme4fyv/_buildManifest.module.js"
async="" crossorigin="anonymous" type="module"></script>
</body>
Diff for link.html
@@ -6,19 +6,19 @@
<meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1"
/>
<meta name="next-head-count" content="2" />
- <link rel="preload" href="/_next/static/3XFolVBctQ1pzpCKpfThe/pages/link.module.js"
+ <link rel="preload" href="/_next/static/8JnoaBONjVytNwUme4fyv/pages/link.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/3XFolVBctQ1pzpCKpfThe/pages/_app.module.js"
+ <link rel="preload" href="/_next/static/8JnoaBONjVytNwUme4fyv/pages/_app.module.js"
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/runtime/webpack-7928590be3ef2e55b835.module.js"
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/chunks/framework.cdb73e402d876d4ac87f.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/chunks/APKZw2xbGiJrtXjv8QVU3iATeP0=.c659a74b6088e6ac1abe.module.js"
+ <link rel="preload" href="/_next/static/chunks/DQGYDZqGcCT8ARF7s7OfOpmz9Q=.c659a74b6088e6ac1abe.module.js"
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/runtime/main-b34dfc4fd33bc7bccca0.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/3XFolVBctQ1pzpCKpfThe/_buildManifest.module.js"
+ <link rel="preload" href="/_next/static/8JnoaBONjVytNwUme4fyv/_buildManifest.module.js"
as="script" crossorigin="anonymous" />
</head>
@@ -29,18 +29,18 @@
</div>
</div>
<script id="__NEXT_DATA__" type="application/json" crossorigin="anonymous">
- {"dataManager":"[]","props":{"pageProps":{}},"page":"/link","query":{},"buildId":"3XFolVBctQ1pzpCKpfThe"}
+ {"dataManager":"[]","props":{"pageProps":{}},"page":"/link","query":{},"buildId":"8JnoaBONjVytNwUme4fyv"}
</script>
<script crossorigin="anonymous" nomodule="">
!function(){var e=document,t=e.createElement("script");if(!("noModule"in t)&&"onbeforeload"in t){var n=!1;e.addEventListener("beforeload",function(e){if(e.target===t)n=!0;else if(!e.target.hasAttribute("nomodule")||!n)return;e.preventDefault()},!0),t.type="module",t.src=".",e.head.appendChild(t),t.remove()}}();
</script>
- <script async="" data-next-page="/link" src="/_next/static/3XFolVBctQ1pzpCKpfThe/pages/link.js"
+ <script async="" data-next-page="/link" src="/_next/static/8JnoaBONjVytNwUme4fyv/pages/link.js"
crossorigin="anonymous" nomodule=""></script>
- <script async="" data-next-page="/link" src="/_next/static/3XFolVBctQ1pzpCKpfThe/pages/link.module.js"
+ <script async="" data-next-page="/link" src="/_next/static/8JnoaBONjVytNwUme4fyv/pages/link.module.js"
crossorigin="anonymous" type="module"></script>
- <script async="" data-next-page="/_app" src="/_next/static/3XFolVBctQ1pzpCKpfThe/pages/_app.js"
+ <script async="" data-next-page="/_app" src="/_next/static/8JnoaBONjVytNwUme4fyv/pages/_app.js"
crossorigin="anonymous" nomodule=""></script>
- <script async="" data-next-page="/_app" src="/_next/static/3XFolVBctQ1pzpCKpfThe/pages/_app.module.js"
+ <script async="" data-next-page="/_app" src="/_next/static/8JnoaBONjVytNwUme4fyv/pages/_app.module.js"
crossorigin="anonymous" type="module"></script>
<script src="/_next/static/runtime/webpack-a470c2a25bcb4d5a8ec0.js"
async="" crossorigin="anonymous" nomodule=""></script>
@@ -50,19 +50,19 @@
async="" crossorigin="anonymous" nomodule=""></script>
<script src="/_next/static/chunks/framework.cdb73e402d876d4ac87f.module.js"
async="" crossorigin="anonymous" type="module"></script>
- <script src="/_next/static/chunks/ut78akvXOmC63FqIVOpSTP2zXJc=.155621535702fe040780.js"
+ <script src="/_next/static/chunks/NLN47n98ar2Jg+U3JK6IkjS1y7c=.155621535702fe040780.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/chunks/APKZw2xbGiJrtXjv8QVU3iATeP0=.f6f7599a2edf91d8366a.js"
+ <script src="/_next/static/chunks/DQGYDZqGcCT8ARF7s7OfOpmz9Q=.f6f7599a2edf91d8366a.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/chunks/APKZw2xbGiJrtXjv8QVU3iATeP0=.c659a74b6088e6ac1abe.module.js"
+ <script src="/_next/static/chunks/DQGYDZqGcCT8ARF7s7OfOpmz9Q=.c659a74b6088e6ac1abe.module.js"
async="" crossorigin="anonymous" type="module"></script>
<script src="/_next/static/runtime/main-2cd30e118423b74fdb03.js"
async="" crossorigin="anonymous" nomodule=""></script>
<script src="/_next/static/runtime/main-b34dfc4fd33bc7bccca0.module.js"
async="" crossorigin="anonymous" type="module"></script>
- <script src="/_next/static/3XFolVBctQ1pzpCKpfThe/_buildManifest.js"
+ <script src="/_next/static/8JnoaBONjVytNwUme4fyv/_buildManifest.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/3XFolVBctQ1pzpCKpfThe/_buildManifest.module.js"
+ <script src="/_next/static/8JnoaBONjVytNwUme4fyv/_buildManifest.module.js"
async="" crossorigin="anonymous" type="module"></script>
</body>
Diff for withRouter.html
@@ -6,19 +6,19 @@
<meta name="viewport" content="width=device-width,minimum-scale=1,initial-scale=1"
/>
<meta name="next-head-count" content="2" />
- <link rel="preload" href="/_next/static/3XFolVBctQ1pzpCKpfThe/pages/withRouter.module.js"
+ <link rel="preload" href="/_next/static/8JnoaBONjVytNwUme4fyv/pages/withRouter.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/3XFolVBctQ1pzpCKpfThe/pages/_app.module.js"
+ <link rel="preload" href="/_next/static/8JnoaBONjVytNwUme4fyv/pages/_app.module.js"
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/runtime/webpack-7928590be3ef2e55b835.module.js"
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/chunks/framework.cdb73e402d876d4ac87f.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/chunks/APKZw2xbGiJrtXjv8QVU3iATeP0=.c659a74b6088e6ac1abe.module.js"
+ <link rel="preload" href="/_next/static/chunks/DQGYDZqGcCT8ARF7s7OfOpmz9Q=.c659a74b6088e6ac1abe.module.js"
as="script" crossorigin="anonymous" />
<link rel="preload" href="/_next/static/runtime/main-b34dfc4fd33bc7bccca0.module.js"
as="script" crossorigin="anonymous" />
- <link rel="preload" href="/_next/static/3XFolVBctQ1pzpCKpfThe/_buildManifest.module.js"
+ <link rel="preload" href="/_next/static/8JnoaBONjVytNwUme4fyv/_buildManifest.module.js"
as="script" crossorigin="anonymous" />
</head>
@@ -27,18 +27,18 @@
<div>I use withRouter</div>
</div>
<script id="__NEXT_DATA__" type="application/json" crossorigin="anonymous">
- {"dataManager":"[]","props":{"pageProps":{}},"page":"/withRouter","query":{},"buildId":"3XFolVBctQ1pzpCKpfThe"}
+ {"dataManager":"[]","props":{"pageProps":{}},"page":"/withRouter","query":{},"buildId":"8JnoaBONjVytNwUme4fyv"}
</script>
<script crossorigin="anonymous" nomodule="">
!function(){var e=document,t=e.createElement("script");if(!("noModule"in t)&&"onbeforeload"in t){var n=!1;e.addEventListener("beforeload",function(e){if(e.target===t)n=!0;else if(!e.target.hasAttribute("nomodule")||!n)return;e.preventDefault()},!0),t.type="module",t.src=".",e.head.appendChild(t),t.remove()}}();
</script>
- <script async="" data-next-page="/withRouter" src="/_next/static/3XFolVBctQ1pzpCKpfThe/pages/withRouter.js"
+ <script async="" data-next-page="/withRouter" src="/_next/static/8JnoaBONjVytNwUme4fyv/pages/withRouter.js"
crossorigin="anonymous" nomodule=""></script>
- <script async="" data-next-page="/withRouter" src="/_next/static/3XFolVBctQ1pzpCKpfThe/pages/withRouter.module.js"
+ <script async="" data-next-page="/withRouter" src="/_next/static/8JnoaBONjVytNwUme4fyv/pages/withRouter.module.js"
crossorigin="anonymous" type="module"></script>
- <script async="" data-next-page="/_app" src="/_next/static/3XFolVBctQ1pzpCKpfThe/pages/_app.js"
+ <script async="" data-next-page="/_app" src="/_next/static/8JnoaBONjVytNwUme4fyv/pages/_app.js"
crossorigin="anonymous" nomodule=""></script>
- <script async="" data-next-page="/_app" src="/_next/static/3XFolVBctQ1pzpCKpfThe/pages/_app.module.js"
+ <script async="" data-next-page="/_app" src="/_next/static/8JnoaBONjVytNwUme4fyv/pages/_app.module.js"
crossorigin="anonymous" type="module"></script>
<script src="/_next/static/runtime/webpack-a470c2a25bcb4d5a8ec0.js"
async="" crossorigin="anonymous" nomodule=""></script>
@@ -48,19 +48,19 @@
async="" crossorigin="anonymous" nomodule=""></script>
<script src="/_next/static/chunks/framework.cdb73e402d876d4ac87f.module.js"
async="" crossorigin="anonymous" type="module"></script>
- <script src="/_next/static/chunks/ut78akvXOmC63FqIVOpSTP2zXJc=.155621535702fe040780.js"
+ <script src="/_next/static/chunks/NLN47n98ar2Jg+U3JK6IkjS1y7c=.155621535702fe040780.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/chunks/APKZw2xbGiJrtXjv8QVU3iATeP0=.f6f7599a2edf91d8366a.js"
+ <script src="/_next/static/chunks/DQGYDZqGcCT8ARF7s7OfOpmz9Q=.f6f7599a2edf91d8366a.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/chunks/APKZw2xbGiJrtXjv8QVU3iATeP0=.c659a74b6088e6ac1abe.module.js"
+ <script src="/_next/static/chunks/DQGYDZqGcCT8ARF7s7OfOpmz9Q=.c659a74b6088e6ac1abe.module.js"
async="" crossorigin="anonymous" type="module"></script>
<script src="/_next/static/runtime/main-2cd30e118423b74fdb03.js"
async="" crossorigin="anonymous" nomodule=""></script>
<script src="/_next/static/runtime/main-b34dfc4fd33bc7bccca0.module.js"
async="" crossorigin="anonymous" type="module"></script>
- <script src="/_next/static/3XFolVBctQ1pzpCKpfThe/_buildManifest.js"
+ <script src="/_next/static/8JnoaBONjVytNwUme4fyv/_buildManifest.js"
async="" crossorigin="anonymous" nomodule=""></script>
- <script src="/_next/static/3XFolVBctQ1pzpCKpfThe/_buildManifest.module.js"
+ <script src="/_next/static/8JnoaBONjVytNwUme4fyv/_buildManifest.module.js"
async="" crossorigin="anonymous" type="module"></script>
</body>
Serverless Mode (Decrease detected ✓)
General
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
buildDuration | 26.4s | 25.7s | -717ms |
nodeModulesSize | 42 MB | 42 MB | ✓ |
Client Bundles (main, webpack, commons)
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
main-HASH.js | 18.2 kB | 18.2 kB | ✓ |
main-HASH.js gzip | 6.64 kB | 6.64 kB | ✓ |
webpack-HASH.js | 1.53 kB | 1.53 kB | ✓ |
webpack-HASH.js gzip | 746 B | 746 B | ✓ |
Overall change | ✓ |
Client Bundles (main, webpack, commons) Modern
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
main-HASH.module.js | 16.5 kB | 16.5 kB | ✓ |
main-HASH.module.js gzip | 6.38 kB | 6.38 kB | ✓ |
webpack-HASH.module.js | 1.53 kB | 1.53 kB | ✓ |
webpack-HASH.module.js gzip | 746 B | 746 B | ✓ |
Overall change | ✓ |
Client Pages
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_app.js | 1.83 kB | 1.83 kB | ✓ |
_app.js gzip | 884 B | 884 B | ✓ |
_error.js | 12.1 kB | 12.1 kB | ✓ |
_error.js gzip | 4.76 kB | 4.76 kB | ✓ |
hooks.js | 12.7 kB | 12.7 kB | ✓ |
hooks.js gzip | 4.81 kB | 4.81 kB | ✓ |
index.js | 343 B | 343 B | ✓ |
index.js gzip | 237 B | 237 B | ✓ |
link.js | 8.14 kB | 8.14 kB | ✓ |
link.js gzip | 3.49 kB | 3.49 kB | ✓ |
routerDirect.js | 433 B | 433 B | ✓ |
routerDirect.js gzip | 296 B | 296 B | ✓ |
withRouter.js | 444 B | 444 B | ✓ |
withRouter.js gzip | 294 B | 294 B | ✓ |
Overall change | ✓ |
Client Pages Modern
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_app.module.js | 1.73 kB | 1.73 kB | ✓ |
_app.module.js gzip | 840 B | 840 B | ✓ |
_error.module.js | 23.3 kB | 23.3 kB | ✓ |
_error.module.js gzip | 8.62 kB | 8.62 kB | ✓ |
hooks.module.js | 1.55 kB | 1.55 kB | ✓ |
hooks.module.js gzip | 804 B | 804 B | ✓ |
index.module.js | 319 B | 319 B | ✓ |
index.module.js gzip | 238 B | 238 B | ✓ |
link.module.js | 8.52 kB | 8.52 kB | ✓ |
link.module.js gzip | 3.68 kB | 3.68 kB | ✓ |
routerDirect.module.js | 419 B | 419 B | ✓ |
routerDirect.module.js gzip | 294 B | 294 B | ✓ |
withRouter.module.js | 429 B | 429 B | ✓ |
withRouter.module.js gzip | 293 B | 293 B | ✓ |
Overall change | ✓ |
Client Build Manifests
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_buildManifest.js | 81 B | 81 B | ✓ |
_buildManifest.js gzip | 61 B | 61 B | ✓ |
_buildManifest.module.js | 81 B | 81 B | ✓ |
_buildManifest.module.js gzip | 61 B | 61 B | ✓ |
Overall change | ✓ |
Serverless bundles Overall decrease ✓
zeit/next.js canary | lifeiscontent/next.js canary | Change | |
---|---|---|---|
_error.js | 247 kB | 247 kB | -8 B |
_error.js gzip | 66.4 kB | 66.3 kB | -131 B |
hooks.html | 3.81 kB | 3.81 kB | -3 B |
hooks.html gzip | 983 B | 977 B | -6 B |
index.js | 248 kB | 248 kB | -8 B |
index.js gzip | 66.6 kB | 66.5 kB | -44 B |
link.js | 256 kB | 256 kB | -8 B |
link.js gzip | 68.9 kB | 68.9 kB | -60 B |
routerDirect.js | 249 kB | 249 kB | -8 B |
routerDirect.js gzip | 66.6 kB | 66.9 kB | |
withRouter.js | 249 kB | 249 kB | -8 B |
withRouter.js gzip | 66.7 kB | 66.7 kB | |
Overall change | -43 B |
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.
I'd personally prefer that https://github.com/zeit/next.js/pull/8195/files#r318316702 was implemented even if it's not needed for the example as users will for sure hit that wall and eventually create unnecessary github issues.
On the other hand you could argue that it should be as simple as possible.
Anyhow, from my perspective this looks really good! 👍
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.
@lifeiscontent Thank you for the hard work, I like the implementation in the server, is short and simple, @HaNdTriX wdyt about the apollo client added for the client? it looks quite different from the other examples.
I'm merging it now but I would really like to have a common implementation of the apollo client inside /lib
.
@HaNdTriX @lifeiscontent 5 examples for Apollo so far, we could probably unify the server added in this one with another example |
@lfades thank you! I'm down to make a followup commit if needed. One thing I realized about using apollo with next.js is the defaults you'll probably want are the following:
due to how SSR works, in order to keep data fresh, this is what I found was working the best for my use case. reason being:
Vs:
|
@lfades also, do you think it would be worth making an apollo federation example? I'd love to start working on an example that would work with a now deployment using api routes as lambda functions and doing schema stitching in apollo federation. not 100% sure how to do it yet, but I imagine it's possible, and it would be a solid example to hit the ground running with a well abstracted architecture. |
@lifeiscontent Apollo federation +1. I don't understand the other comment, what do you mean by
The server can't serve cached data |
@lfades sorry, what I meant by "Apollo serves cached data" was that on the client, things like the component will serve the data fetched by the server vs getting data from the client |
@lifeiscontent Right, that's the expected behavior, you only do the request once and never again unless you do a refresh or use a different |
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.
Wow thanks for this awesome example
I found a few little things I've changed in:
|
||
export default App => { | ||
return class Apollo extends React.Component { | ||
static displayName = 'withApollo(App)' |
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.
Lets use the real display name otherwise it will be misleading.
e.g.: https://github.com/zeit/next.js/blob/canary/examples/with-apollo/lib/apollo.js#L35
import { getDataFromTree } from '@apollo/react-ssr' | ||
import { ApolloProvider } from '@apollo/react-hooks' | ||
|
||
export default App => { |
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.
Let call this PageComponent
instead since we can't use _app.js anymore
|
||
function create (initialState) { | ||
// Check out https://github.com/zeit/next.js/pull/4611 if you want to use the AWSAppSyncClient | ||
const isBrowser = typeof window !== 'undefined' |
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.
I am not sure if code elimination works if we assign typeof window !== 'undefined'
to a variable. 🤔
uri: '/api/graphql', | ||
credentials: 'same-origin' | ||
}) | ||
: new SchemaLink({ schema }) |
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.
Awesome addition! Maybe we can remove apollo-link-schema
from the client bundle by using an inline require or import.
import React from 'react' | ||
import initApollo from './init-apollo' | ||
import Head from 'next/head' | ||
import { getDataFromTree } from '@apollo/react-ssr' |
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.
Lets remove @apollo/react-ssr
from the client bundle by using an inline import:
https://github.com/zeit/next.js/blob/canary/examples/with-apollo/lib/apollo.js#L70-L78
also shows example to take advantage of page prerendering