Compatibility control plane
Connecting

Next.js × Cloudflare Developer Platform

One application.
Three ways forward.

Build the original Next.js source, choose the lightest compatible runtime, and publish a verified preview. Every fallback is earned by a real build and route-level smoke test.

Next 16.3.3Vinext β8OpenNext 1.20.4

02

Compatibility ladder

Not started

    Select a controlled commit and start the ladder.

    04 / measured + modeled

    Time is observed.
    Cost is explained.

    Loading the comparison model.

    Queue to first build Not measured Click to baseline evaluation
    Compatibility decision Not measured Click to selected target
    Verified preview Not measured Click to route-level proof
    Pipeline resource estimate Waiting Gross overage-rate equivalent

    Runtime paths

    Path Measured work Click to decision Reference / month

    Public rate cards: Workers, Containers, Sandbox, and Workers for Platforms.

    05 / platform pattern

    One publisher.
    Many isolated apps.

    This separate Workers for Platforms example uploads a fixed, platform-owned User Worker with bounded metadata. It does not publish a Vinext or OpenNext artifact from the compatibility ladder. A tenant registry and dispatcher control its route.

    Template publication Measured per upload Not part of the compatibility ladder
    Platform reference $25/mo 100 user Workers in this model

      Accepting a trusted Vinext or OpenNext server artifact would need a separate, validated publishing contract.

      06 / Emdash → WfP

      A delivery lane
      for every customer.

      This example turns a bounded Emdash delivery manifest into a platform-owned User Worker. The control plane derives a tenant key from a stable Access identity or an expiring demo visitor session, uploads into a dedicated dispatch namespace, and returns a routed environment URL.

      Visitor-scoped identity Fixed Worker template 50 ms CPU limit

      Customer manifest

      Publish from Emdash

      PUT → namespace

      Checking availability…