Chalarangelo/30-seconds-web

Investigate Next.js as a replacement for Gatsby

Chalarangelo opened this issue · 2 comments

Next.js looks amazing and could suit our needs. Let's investigate, prototype, figure out if it's an option.

Note: Low priority, but huge ROI. Investigation should be conducted in parallel with other tasks and we can switch focus for a Sprint to handle it if it suits us.

I'm moving this up into active development as of today. We can probably run this in parallel with other tasks for the rest of this sprint and the next one.

Tasks

List may be incomplete

  • Bootstrap Next.js
  • Set up scripts and check everything works as expected
  • Page metadata via next/head
  • Move _redirects and robots.txt to public
  • onPreInit - Probably not needed, part of the bootstrap process
  • onPostBuild - Change mechanisms to write XML and JSON files to public
  • onCreateWebpackConfig - Maybe not needed, check docs
  • onCreateDevServer - Set up the /create route if possible
  • createPagesStatefully - Set up a mechanism for this
  • gatsby-browser - Move to Next.js hook
  • gatsby-node - Part of the bootstrap process
  • gatsby-ssr - Part of the next/head metadata
  • gatsby-plugin-manifest - Convert plugin to serializers
  • gatsby-plugin-catch-links - next/router might provide a solution for some cases
  • gatsby-plugin-netlify - Created a static _headers file in public
  • gatsby-plugin-react-helmet - Not needed
  • gatsby-plugin-sass - Not needed
  • gatsby-source-filesystem - Not needed
  • Replace "magic" linking with next/link when possible
  • Remove react-helmet
  • Remove gatsby dependencies
  • Change credits in footer
  • Check for gatsby leftovers
  • Setup Netlify to point to the build directory (whatever it is), instead of public