Conclusion
The table below shows an overview of how well the frameworks scored for each of the criteria. Totals are calculated by taking the sum of the scores multiplied by the respective weight factor.
| Criterion | Weight | Next.js | Gatsby | Nuxt | Meteor | Astro | Remix |
|---|---|---|---|---|---|---|---|
| Target use | 5 | 5 | 1 | 5 | 5 | 2 | 5 |
| Client-side interactivitiy | 5 | 5 | 5 | 5 | 4 | 3 | 5 |
| Data transmission | 5 | 4 | 2 | 3 | 5 | 2 | 4 |
| Server-side rendering | 3 | 5 | 2 | 5 | 2 | 5 | 5 |
| TypeScript support | 3 | 5 | 5 | 5 | 3 | 5 | 5 |
| Local deployment | 2 | 5 | 1 | 5 | 3 | 4 | 5 |
| Ease of use | 3 | 3 | 3 | 4 | 2 | 5 | 4 |
| Community | 3 | 5 | 3 | 4 | 3 | 2 | 3 |
| Total | 134 | 81 | 129 | 106 | 94 | 131 |
Based on these results, Next.js comes out on top. However, due to the small margins, Nuxt and Remix should also be considered as serious options for continuing development with.
An important difference between these three options is the client framework they are based on: Next.js and Remix use React, while Nuxt uses Vue. Of these two, React remains the most popular1. In addition, I have some limited, but good experience with the framework, which makes me prefer Next.js and Remix over Nuxt.
Although Remix puts a large emphasis on developer experience and being easy to use, the popularity and larger community make me choose Next.js as the framework to develop the Photo Gallery with. Besides making it easier to find solutions to any problems I might encounter, the widespread adoption of Next.js ultimately makes it a more useful skill to have.