open-next
TypeScript icon, indicating that this package has built-in type declarations

2.3.9 • Public • Published

OpenNext

Discord npm


Docs | Example

OpenNext takes the Next.js build output and converts it into a package that can be deployed to any functions as a service platform.

Features

OpenNext aims to support all Next.js 13 features. Some features are work in progress. Please open a new issue to let us know!

  • [x] App & Pages Router
  • [x] API routes
  • [x] Dynamic routes
  • [x] Static site generation (SSG)
  • [x] Server-side rendering (SSR)
  • [x] Incremental static regeneration (ISR)
  • [x] Middleware
  • [x] Image optimization
  • [x] NextAuth.js
  • [x] Running at edge
  • [x] No cold start

Who is using OpenNext?

Gymshark UK, Udacity, TUDN, NHS England

Example

In the example folder, you can find a Next.js benchmark app. It contains a variety of pages that each test a single Next.js feature. The app is deployed to both Vercel and AWS using SST.

AWS link: https://d1gwt3w78t4dm3.cloudfront.net

Vercel link: https://open-next.vercel.app

Configuration

Environment variables

  • AWS_SDK_DYNAMODB_MAX_ATTEMPTS: The maximum number of times requests that encounter retryable failures should be attempted for DynamoDB. Defaults to 3.
  • AWS_SDK_S3_MAX_ATTEMPTS: The maximum number of times requests that encounter retryable failures should be attempted for S3. Defaults to 3.
  • DYNAMO_BATCH_WRITE_COMMAND_CONCURRENCY: The number of concurrent batch write commands to DynamoDB. Defaults to 4 in an effort to leave plenty of DynamoDB write request capacity for the production load.

Contribute

To run OpenNext locally:

  1. Clone this repository.
  2. Build open-next:
    cd open-next
    pnpm build
  3. Run open-next in watch mode:
    pnpm dev
  4. Now, you can make changes in open-next and build your Next.js app to test the changes.
    cd path/to/my/nextjs/app
    path/to/open-next/packages/open-next/dist/index.js build

Acknowledgements

We are grateful for the projects that inspired OpenNext and the amazing tools and libraries developed by the community:

Special shoutout to @khuezy and @conico974 for their outstanding contributions to the project.


Maintained by SST. Join our community: Discord | YouTube | Twitter

Readme

Keywords

none

Package Sidebar

Install

npm i open-next

Weekly Downloads

21,784

Version

2.3.9

License

MIT

Unpacked Size

188 kB

Total Files

91

Last publish

Collaborators

  • fanjie