The JavaScript Site Generator Review, 2023

It’s time again for every framework author’s favorite: The JavaScript Site Generator Review, February 2023 edition.

Expand for the table of contents

Here is the list of site generators reviewed in alphabetical order:

  • Astro 2.0.15
  • Eleventy 2.0.0
  • Gatsby 5.7.0
  • Next.js 13.2.1
  • Nuxt 3.2.2
  • Remix 1.13.0
  • SvelteKit 1.8.3

Each example site was created using a fresh run of the Quick Start or Getting Started tutorial on each respective generator’s web site.

Previous Reviews

npm install Times

Times shown are in seconds. Lower is better.

Expand to show table of results
Framework npm install Time
Astro 2.0.15 12.52
Eleventy 2.0.0 5.81
Gatsby 5.7.0 43.36
Next.js 13.2.1 3.72
Nuxt 3.2.2 14.77
Remix 1.13.0 40.14
SvelteKit 1.8.3 6.78

Notes:

  • Next bundles all of its dependencies (save for react and react-dom) and as such bypasses functionality provided by npm.
  • npm cache clean --force was used to clean the cache before each install.
  • npm auditing was enabled for these tests.

Client JavaScript Baseline

Weights shown are in kilobytes of uncompressed resource size (not transfer size).

Expand to show table of results
Framework Client JavaScript Baseline (kB)
Astro 2.0.15 0
Eleventy 2.0.0 0
Gatsby 5.7.0 210
Next.js 13.2.1 248
Nuxt 3.2.2 191
Remix 1.13.0 228
SvelteKit 1.8.3 53

node_modules Weight

Weights shown are in megabytes.

Expand to show table of results
Framework node_modules Weight (MB)
Astro 2.0.15 169
Eleventy 2.0.0 34
Gatsby 5.7.0 583
Next.js 13.2.1 158
Nuxt 3.2.2 164
Remix 1.13.0 497
SvelteKit 1.8.3 111

npm Auditing

Some frameworks use create-* packages (sometimes with npm init) and include a step that helpfully installs your npm dependencies for you. However, some of these tools also hide npm auditing results (including those about high severity security vulnerabilities).

These tools hide npm audit reports:

  • Astro ⚠️
  • Gatsby ⚠️
  • Next ⚠️ (via bundling its dependencies)

These tools show standard npm audit reports during project creation:

  • Eleventy ✅
  • Nuxt ✅
  • Remix ✅
  • SvelteKit ✅

Telemetry

Telemetry is the practice of collecting anonymous data on usage of the tool. Some tools have this enabled (opt-in) by default and require an opt-out. This isn’t necessarily bad but some folks are very surprised by this default (and education here is important as this default may not comply with your organization’s security policies).

These tools require you to opt-out of Telemetry:

  • Astro ⚠️
  • Next.js ⚠️
  • Gatsby ⚠️
  • Nuxt ⚠️

Has Telemetry but it is opt-in:

  • None

No known Telemetry or data collection:

  • Eleventy ✅
  • Remix ✅
  • SvelteKit ✅

Notably and delightfully, Nuxt v2 prompts you to ask if you want to participate in Telemetry when you first run the development server. Though it is still technically opt-out, this seems like a great middle ground. Unfortunately I didn’t see this prompt when creating a Nuxt v3 project.

Feedback

Let me know if you have feedback—I’d also welcome recommendations on aspects of these tools that you’d like to see reviewed for next time!


This content originally appeared on Zach Leatherman and was authored by Zach Leatherman

It’s time again for every framework author’s favorite: The JavaScript Site Generator Review, February 2023 edition.

Expand for the table of contents

Here is the list of site generators reviewed in alphabetical order:

  • Astro 2.0.15
  • Eleventy 2.0.0
  • Gatsby 5.7.0
  • Next.js 13.2.1
  • Nuxt 3.2.2
  • Remix 1.13.0
  • SvelteKit 1.8.3

Each example site was created using a fresh run of the Quick Start or Getting Started tutorial on each respective generator’s web site.

Previous Reviews

npm install Times

Times shown are in seconds. Lower is better.

Expand to show table of results
Framework npm install Time
Astro 2.0.15 12.52
Eleventy 2.0.0 5.81
Gatsby 5.7.0 43.36
Next.js 13.2.1 3.72
Nuxt 3.2.2 14.77
Remix 1.13.0 40.14
SvelteKit 1.8.3 6.78

Notes:

  • Next bundles all of its dependencies (save for react and react-dom) and as such bypasses functionality provided by npm.
  • npm cache clean --force was used to clean the cache before each install.
  • npm auditing was enabled for these tests.

Client JavaScript Baseline

Weights shown are in kilobytes of uncompressed resource size (not transfer size).

Expand to show table of results
Framework Client JavaScript Baseline (kB)
Astro 2.0.15 0
Eleventy 2.0.0 0
Gatsby 5.7.0 210
Next.js 13.2.1 248
Nuxt 3.2.2 191
Remix 1.13.0 228
SvelteKit 1.8.3 53

node_modules Weight

Weights shown are in megabytes.

Expand to show table of results
Framework node_modules Weight (MB)
Astro 2.0.15 169
Eleventy 2.0.0 34
Gatsby 5.7.0 583
Next.js 13.2.1 158
Nuxt 3.2.2 164
Remix 1.13.0 497
SvelteKit 1.8.3 111

npm Auditing

Some frameworks use create-* packages (sometimes with npm init) and include a step that helpfully installs your npm dependencies for you. However, some of these tools also hide npm auditing results (including those about high severity security vulnerabilities).

These tools hide npm audit reports:

  • Astro ⚠️
  • Gatsby ⚠️
  • Next ⚠️ (via bundling its dependencies)

These tools show standard npm audit reports during project creation:

  • Eleventy ✅
  • Nuxt ✅
  • Remix ✅
  • SvelteKit ✅

Telemetry

Telemetry is the practice of collecting anonymous data on usage of the tool. Some tools have this enabled (opt-in) by default and require an opt-out. This isn’t necessarily bad but some folks are very surprised by this default (and education here is important as this default may not comply with your organization’s security policies).

These tools require you to opt-out of Telemetry:

  • Astro ⚠️
  • Next.js ⚠️
  • Gatsby ⚠️
  • Nuxt ⚠️

Has Telemetry but it is opt-in:

  • None

No known Telemetry or data collection:

  • Eleventy ✅
  • Remix ✅
  • SvelteKit ✅

Notably and delightfully, Nuxt v2 prompts you to ask if you want to participate in Telemetry when you first run the development server. Though it is still technically opt-out, this seems like a great middle ground. Unfortunately I didn’t see this prompt when creating a Nuxt v3 project.

Feedback

Let me know if you have feedback—I’d also welcome recommendations on aspects of these tools that you’d like to see reviewed for next time!


This content originally appeared on Zach Leatherman and was authored by Zach Leatherman


Print Share Comment Cite Upload Translate Updates
APA

Zach Leatherman | Sciencx (2023-02-24T00:00:00+00:00) The JavaScript Site Generator Review, 2023. Retrieved from https://www.scien.cx/2023/02/24/the-javascript-site-generator-review-2023/

MLA
" » The JavaScript Site Generator Review, 2023." Zach Leatherman | Sciencx - Friday February 24, 2023, https://www.scien.cx/2023/02/24/the-javascript-site-generator-review-2023/
HARVARD
Zach Leatherman | Sciencx Friday February 24, 2023 » The JavaScript Site Generator Review, 2023., viewed ,<https://www.scien.cx/2023/02/24/the-javascript-site-generator-review-2023/>
VANCOUVER
Zach Leatherman | Sciencx - » The JavaScript Site Generator Review, 2023. [Internet]. [Accessed ]. Available from: https://www.scien.cx/2023/02/24/the-javascript-site-generator-review-2023/
CHICAGO
" » The JavaScript Site Generator Review, 2023." Zach Leatherman | Sciencx - Accessed . https://www.scien.cx/2023/02/24/the-javascript-site-generator-review-2023/
IEEE
" » The JavaScript Site Generator Review, 2023." Zach Leatherman | Sciencx [Online]. Available: https://www.scien.cx/2023/02/24/the-javascript-site-generator-review-2023/. [Accessed: ]
rf:citation
» The JavaScript Site Generator Review, 2023 | Zach Leatherman | Sciencx | https://www.scien.cx/2023/02/24/the-javascript-site-generator-review-2023/ |

Please log in to upload a file.




There are no updates yet.
Click the Upload button above to add an update.

You must be logged in to translate posts. Please log in or register.