nextlove icon indicating copy to clipboard operation
nextlove copied to clipboard

Nextlove Edge Support MVP Steps

Open seveibar opened this issue 1 year ago • 1 comments

In relation to: https://github.com/seamapi/nextlove/pull/82

The PR is too big and dangerous as is. This issue is to design an approach for getting edge-support merged

First let's get some opinions out of the way

  • We will introduce withRouteSpecEdge to avoid a breaking change. This means it's an EDGE-COMPATIBLE withRouteSpec, it still shares the exact same API and types as withRouteSpec
  • We will introduce an example app that uses edge e.g. example-edge-todo-app, this app also ideally deploys somewhere on cloudflare or vercel edge
  • Introduce the edge term sparingly. Nextlove will work on both edge and lambda, so avoid any "edge-specific" terminology

If you disagree with the above, we can't move on to what's below

  1. Propose changes to nextlove API e.g. the req.Response object that make nextlove compatible with edge. Do not introduce withRouteSpecEdge or any special edge handling
  2. After the API changes are in, build withRouteSpecEdge (NOTE: withRouteSpecEdge is lambda and edge compatible)
  3. Replace withRouteSpec with withRouteSpecEdge and deprecate withRouteSpecEdge

CC @itelo @codetheweb @razor-x

seveibar avatar Jul 17 '23 18:07 seveibar