The React Framework

Overview

Next.js

Getting Started

Visit https://nextjs.org/learn to get started with Next.js.

Documentation

Visit https://nextjs.org/docs to view the full documentation.

Who is using Next.js?

Next.js is used by the world's leading companies. Check out the Next.js Showcase to learn more.

Community

The Next.js community can be found on GitHub Discussions, where you can ask questions, voice ideas, and share your projects.

To chat with other community members you can join the Next.js Discord.

Our Code of Conduct applies to all Next.js community channels.

Contributing

Please see our contributing.md.

Authors

Comments
  • Warning: Prop className did not match.

    Warning: Prop className did not match.

    Examples bug report

    Example name

    with-styled-components

    Describe the bug

    Also posted here: #2538

    Using css prop introduced with styled-components v4 causes Warning: Prop className did not match..

    To Reproduce

    Add any HTML element with css prop.

    Expected behavior

    Correctly styled rendering on the server side without any warnings.

    Screenshots

    57497472-7b657c00-72e0-11e9-84c5-e7e5fa0d351c

    System information

    • OS: Windows
    • Chrome
    • Version of Next.js: 8.1.0

    Additional context

    Here is an example I created to demonstrate the issue: https://codesandbox.io/embed/jlwvwyy0ow

    Open this and refresh once the building is done: https://jlwvwyy0ow.sse.codesandbox.io/

    good first issue type: needs investigation 
    opened by th0th 273
  • Static Generation / SSG Improvements

    Static Generation / SSG Improvements

    Summary

    Allow Next.js to become fully hybrid by providing methods to do both static generation and server-side rendering on a per-page basis.

    • Two new per-page data fetching methods
      • getStaticProps - Opt-in to static generation (SSG) at next build time.
      • getServerSideProps - Opt-in to server-side rendering (SSR) which renders on-demand.
    • A new method for statically generating (SSG) a set of routes from dynamic sources
      • getStaticPaths - Return list of parameters for dynamic routes to do static generation (SSG)

    This RFC exclusively discusses API additions. All new functionality is completely backwards compatible and can be incrementally adopted. This RFC introduces no deprecations.

    Background

    When building websites or web applications you generally have to choose between 2 strategies: Static generation (SSG) or server-side rendering (SSR).

    Next.js instead lets you build hybrid applications that allow you to choose per-page which strategy is used. Starting with Next.js 9, pages without getInitialProps get statically optimized and output as .html files upon next build.

    However, you might want to do data fetching while generating static pages for your specific use case.

    For example, to statically generate marketing pages from a CMS or a blog section of the site.

    Using getInitialProps would opt you into SSR in that case.

    Next.js currently has a next export command, that makes the application fully SSG, losing the hybrid nature of Next.js.

    If you use next export with getInitialProps there is another problem that surfaces. getInitialProps is called at build time (which is great), but then when you use next/link to move between pages getInitialProps is called client-side, instead of using the next export result.

    This also means the data source (CMS / API endpoint) is called directly on client-side transitions, if your data source is down, client-side transitions break while moving between pages.

    We've collaborated with heavy users of SSG and next export in Next.js like HashiCorp (thanks @jescalan) and extensively investigated the right constraints for introducing two new data fetching methods: getStaticProps and getServerSideProps. But also a way to provide parameters to statically generate static pages for dynamic routes: getStaticPaths (replacement for exportPathMap that is per-page).

    These new methods have many advantages over the getInitialProps model as there is a clear distinction between what will become SSG vs SSR.

    • getStaticProps marks the page to be statically generated at build time (when running next build)
    • getStaticPaths allows for returning a list of parameters to generate at build time for dynamic routes
    • getServerSideProps marks the page to be server-side rendered on every request and is the most similar to the current getInitialProps behavior when using a server.

    Separating these methods also allows us to provide the correct context object that can be typed using TypeScript. When you opt for a specific rendering strategy you get the correct values, currently with getInitialProps you have to guess what is available on SSG vs SSR when using TypeScript.

    Furthermore, by making these methods explicit, it'll allow us to document the different trade-offs more clearly.

    Implementation

    Note that all these methods are top-level on the page component file and can't be nested, similar to getInitialProps.

    getStaticProps

    Using getStaticProps means the page will be rendered statically at build time (SSG).

    This new method will allow you to do data fetching for a page that will be statically generated into a .html file at next build time.

    Next.js will also automatically generate a JSON file that holds the result of getStaticProps at next build time. This is being used for client-side routing.

    When client-side routing through next/link or next/router, Next.js will fetch this JSON file to get the props needed to render the page client-side.

    Properties are returned under a props key so that other options can be introduced in the future.

    // pages/index.js
    
    // getStaticProps is only called server-side
    // In theory you could do direct database queries
    export async function getStaticProps(context) {
      return {
        // Unlike `getInitialProps` the props are returned under a props key
        // The reasoning behind this is that there's potentially more options
        // that will be introduced in the future.
        // For example to allow you to further control behavior per-page.
        props: {}
      };
    }
    

    The context will contain:

    • params - The parameters when on a dynamic route.

    getStaticPaths

    This is an extension on getStaticProps usage for dynamic routes.

    getStaticPaths replaces the need for having a exportPathMap and works per-page.

    Since you might want to statically generate a list of urls that have a dynamic parameter, like in the example below a slug. Next.js will provide a getStaticPaths method that allows for returning a list of urls. Since it's a async method you can also fetch that list from a data source like your CMS.

    // pages/blog/[slug].js
    
    // `getStaticProps` gets a `params` object holding the dynamic parameters
    // For `/blog/hello-world` it would look like `{ slug: 'hello-world }`
    export async function getStaticProps({ params }) {
      return {
        props: {}
      };
    }
    
    // `getStaticPaths` allows the user to return a list of parameters to
    // render to HTML at build time.
    export async function getStaticPaths() {
      return {
        paths: [
          // This renders /blog/hello-world to HTML at build time
          { params: { slug: "hello-world" } }
        ]
      };
    }
    

    Fallback

    In many cases you might not want to pre-render every possible route in your application at build-time (for example if you have millions of products). For this reason Next.js will automatically generate a fallback page that is a render of the page without data (so that a loading state can be shown) for when the page hasn’t been generated yet.

    The exact behavior of serving will be:

    • Incoming request
      • Next.js checks if the path was generated at build time
        • If the path was generated
          • serve directly
        • If the path was not generated
          • Serve the fallback
            • Next.js renders the page (with data) in the background and adds it to the list of generated pages
            • Subsequent request to the same path will serve the generated page
            • This ensures that users always have a fast experience and never have slow TTFB from server-rendering while preserving fast builds and static-generation properties

    In case you want paths that weren’t generated at build time to result in a 404 that is also possible by returning fallback: false from getStaticPaths

    // `getStaticPaths` allows the user to return a list of parameters to
    // render to HTML at build time.
    export async function getStaticPaths() {
      return {
        // Opt-out of the described fallback behavior
        fallback: false,
        paths: [
          // This renders /blog/hello-world to HTML at build time
          { params: { slug: "hello-world" } }
        ]
      };
    }
    

    getServerSideProps

    When using getServerSideProps, the page is not statically generated (SSG) and instead renders on-demand on every request to the server (SSR).

    Next.js will also automatically expose an API endpoint that returns the result of calling getServerSideProps. This is being used for client-side routing.

    When client-side routing through next/link or next/router, Next.js will fetch this exposed API endpoint to get the JSON data that is turned into the props needed to render the page client-side.

    This method is the most similar to the current getInitialProps, with the main difference being getServerSideProps is always executed server-side instead of in the browser. Either on server-side rendering or the API fetch when client-side routing.

    Similarly to getStaticProps the properties are returned under a props key.

    // pages/index.js
    
    // getServerSideProps is only called server-side
    // In theory you could do direct database queries
    export async function getServerSideProps(context) {
      return {
        // Unlike `getInitialProps` the props are returned under a props key
        // The reasoning behind this is that there's potentially more options
        // that will be introduced in the future.
        // For example to allow you to further control behavior per-page.
        props: {}
      };
    }
    

    The context will contain:

    • params - The parameters on a dynamic route
    • req - The HTTP request object
    • res - The HTTP response object
    • query - The query string (not entirely sure about this one, but probably needed)

    Authored by @timneutkens, @Timer, @ijjk, @lfades. Collaborated with @rauchg, @jescalan and others 🚀

    opened by timneutkens 250
  • Add login / authentication example

    Add login / authentication example

    With:

    • re-usable authentication helper across pages
    • session synchronization among tabs
    • simple passwordless email backend hosted on now.sh

    I think this will be hugely helpful to a lot of newcomers.

    opened by rauchg 209
  • Next.js API routes (and pages) should support reading files

    Next.js API routes (and pages) should support reading files

    Feature request

    Is your feature request related to a problem? Please describe.

    It's currently not possible to read files from API routes or pages.

    Describe the solution you'd like

    I want to be able to call fs.readFile with a __dirname path and have it "just work".

    This should work in Development and Production mode.

    Describe alternatives you've considered

    This may need to integrate with @zeit/webpack-asset-relocator-loader in some capacity. This plugin handles these types of requires.

    However, it's not a necessity. I'd be OK with something that only works with __dirname and __filename (no relative or cwd-based paths).

    Additional context

    Example:

    // pages/api/test.js
    import fs from 'fs'
    import path from 'path'
    
    export default (req, res) => {
      const fileContent = fs.readFileSync(
        path.join(__dirname, '..', '..', 'package.json'), 
        'utf8'
      )
      // ...
    }
    

    Note: I know you can cheat the above example ☝️ with require, but that's not the point. 😄

    kind: story area: standalone mode 
    opened by Timer 146
  • Next 9.5.1 out of memory after some hot reloads

    Next 9.5.1 out of memory after some hot reloads

    Bug report

    Describe the bug

    Since updating to 9.5.x (from 9.4.x), i get an out of memory error after 10 something hot reloads:

    FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory

    it did rarely happen in 9.4.1, but it happens very consistantly in 9.5.x

    To Reproduce

    thats probably tricky. it happens on big projects and might be related to some bug in the hot reload / rebuild. Maybe it happens when there are some import circles?

    Expected behavior

    nextjs should not go out-of-memory

    System information

    • OS:macOS
    • Browser: chrome
    • Version of Next.js: 9.5.1
    • Version of Node.js: 12.13.1

    Additional information

    we are using a custom server with typescript

    please add a complete reproduction 
    opened by macrozone 144
  • Top-level app component and animated route transitions

    Top-level app component and animated route transitions

    Having animated route transitions would be nice, as this is one of the many benefits through client-side routing. Doing so should be left up to the user in my opinion (some people prefer CSS transitions over more fine-grained control with react-motion etc). As I understand it, one would need to modify the top-level App component.

    The client entry file seems to look for a globally assigned __NEXT_DATA__.app variable but I can't find any documentation on that.

    opened by dlindenkreuz 135
  • Build error next.js 6.0.0

    Build error next.js 6.0.0

    I just upgraded to [email protected], I use a custom server, when I try to run dev, I get an error.

    npm run dev
    
    > [email protected] dev /Users/foo/gitlab/next-project/backend
    > babel-node ./src/server.js
    
    /Users/foo/gitlab/next-project/backend/node_modules/babel-core/lib/transformation/file/options/option-manager.js:328
            throw e;
            ^
    
    Error: Plugin 0 specified in "/Users/foo/gitlab/next-project/backend/node_modules/next/babel.js" provided an invalid property of "default" (While processing preset: "/Users/foo/gitlab/next-project/backend/node_modules/next/babel.js")
        at Plugin.init (/Users/foo/gitlab/next-project/backend/node_modules/babel-core/lib/transformation/plugin.js:131:13)
        at Function.normalisePlugin (/Users/foo/gitlab/next-project/backend/node_modules/babel-core/lib/transformation/file/options/option-manager.js:152:12)
        at /Users/foo/gitlab/next-project/backend/node_modules/babel-core/lib/transformation/file/options/option-manager.js:184:30
        at Array.map (<anonymous>)
        at Function.normalisePlugins (/Users/foo/gitlab/next-project/backend/node_modules/babel-core/lib/transformation/file/options/option-manager.js:158:20)
        at OptionManager.mergeOptions (/Users/foo/gitlab/next-project/backend/node_modules/babel-core/lib/transformation/file/options/option-manager.js:234:36)
        at /Users/foo/gitlab/next-project/backend/node_modules/babel-core/lib/transformation/file/options/option-manager.js:265:14
        at /Users/foo/gitlab/next-project/backend/node_modules/babel-core/lib/transformation/file/options/option-manager.js:323:22
        at Array.map (<anonymous>)
        at OptionManager.resolvePresets (/Users/foo/gitlab/next-project/backend/node_modules/babel-core/lib/transformation/file/options/option-manager.js:275:20)
    npm ERR! code ELIFECYCLE
    npm ERR! errno 1
    npm ERR! [email protected] dev: `babel-node ./src/server.js`
    npm ERR! Exit status 1
    npm ERR! 
    npm ERR! Failed at the [email protected] dev script.
    npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
    
    npm ERR! A complete log of this run can be found in:
    npm ERR!     /Users/foo/.npm/_logs/2018-04-30T08_41_09_819Z-debug.log
    

    UPDATE all this passed after upgrading all babel packages to v7

    Now this is the new error.... See below for complete error message

    ERROR  Failed to compile with 1 errors                                                                                                                                                                                               10:32:07
    
     error  in ./pages/_document.js
    
    Module build failed: Error: [BABEL] /Users/foo/gitlab/zyombo/backend/pages/_document.js: .value is not a valid Plugin property
    
    opened by paschaldev 125
  • trailing slash in link for legit page works for client side navigation but leads to not found bundle and 404 on hard refresh (ssr)

    trailing slash in link for legit page works for client side navigation but leads to not found bundle and 404 on hard refresh (ssr)

    trailing slash in link for legit page works for client side navigation but leads to not found bundle and 404 on hard refresh (ssr)

    Bug report

    Describe the bug

    let me know if title needs further clarification.

    all relevant issues has been closed with reasoning that its been fixed in 6-canary (I believe it is not) or by improved serve (which is true only in perhaps production static export).

    I'm rewriting my existing blog to next.js and i previously used trailing slashes. Latest serve can help with it once i build my next.js powered blog. But in order to fix dev env i need either to get rid of trailing slashes and utilize 301 Moved Permanently in prod; or live with broken trailing slash support in dev.

    To Reproduce

    Here is minimal reproducible case (link to repro repo is below snippet):

    // pages/index.js
    import Link from "next/link";
    
    export default () => (
      <Link href="/about/">
        <a>About</a>
      </Link>
    );
    
    // pages/index.js
    export default () => "about";
    

    Minimal reproducible repo https://github.com/iamstarkov/next.js-trailing-slash-bug-demo

    1. clone repo git clone https://github.com/iamstarkov/next.js-trailing-slash-bug-demo
    2. change directory cd next.js-trailing-slash-bug-demo
    3. install deps yarn
    4. run dev: yarn dev
    5. open http://localhost:3000/
    6. open devtools' network tab
    7. observe http://localhost:3000/_next/static/development/pages/about.js being 200ed
    8. observe http://localhost:3000/_next/on-demand-entries-ping?page=/about/ being 200ed
    9. observe http://localhost:3000/about/ being 404ed
    10. observe persistent attempts to resolve http://localhost:3000/about/
    11. observe in the terminal Client pings, but there's no entry for page: /about/
    12. refresh the page
    13. observe 404 page.
    14. remove trailing slash in the url or click http://localhost:3000/about
    15. observe page being 200ed
    16. to ensure error persistence repeat steps 5-15 once.

    Expected behavior

    1. /about/ shouldnt be resolved as 404 not found
    2. /about/ should be resolved as 200 ok
    3. Server should not print Client pings, but there's no entry for page: /about/
    4. both /about and /about/ should work the same way

    Screenshots

    N/A

    System information

    • OS: macOS High Sierra 10.13.6 (17G65)
    • Browser (should not matter, but can repro'ed in chrome 69.0.3497.100 and safari Version 12.0 (13606.2.11) (was the same for safari 11)
    • Version of Next.js: 7.0.0 (could repro on 5.x and 6.x)

    Additional context

    Add any other context about the problem here.

    If you change this code in https://github.com/zeit/next.js/blob/459c1c13d054b37442126889077b7056269eeb35/server/on-demand-entry-handler.js#L242-L249

    or node_modules/next/dist/server/on-demand-entry-handler.js locally

              const { query } = parse(req.url, true)
              const page = normalizePage(query.page)
    +         console.log('query.page', query.page);
    +         console.log('page', page);
    +         console.log('Object.keys(entries)', Object.keys(entries));
              const entryInfo = entries[page]
    
              // If there's no entry.
              // Then it seems like an weird issue.
              if (!entryInfo) {
                const message = `Client pings, but there's no entry for page: ${page}`
    

    and restart next dev and open http://localhost:3000/ and click about link then:

    • for /about
      query.page /about
      page /about
      Object.keys(entries) [ '/', '/about' ]
      
    • for /about/:
      query.page /about/
      page /about/
      Object.keys(entries) [ '/', '/about' ]
      Client pings, but there's no entry for page: /about/
      

    I think the problem (at least part of it) is in inability of onDemandEntryHandler's middleware to find page in entries if page has trailing slash.

    I hope my 2 hours of investigation and preparation can help with fixing this issue.

    kind: story 
    opened by iamstarkov 124
  • Custom Cache-Control response header for `/_next/image`

    Custom Cache-Control response header for `/_next/image`

    Bug report

    Describe the bug

    When requesting /_next/image(.*), I'm getting this Response header:

    Cache-Control: public, max-age=60
    

    And it's fine... What's not fine is that I'm getting the same exact Response headers even when I use custom headers in next.config.js, i.e.:

    module.exports = {
      async headers() {
        return [
          {
            // This works, and returns appropriate Response headers:
            source: '/(.*).jpg',
            headers: [
              {
                key: 'Cache-Control',
                value:
                  'public, max-age=180, s-maxage=180, stale-while-revalidate=180',
              },
            ],
          },
          {
            // This doesn't work for 'Cache-Control' key (works for others though):
            source: '/_next/image(.*)',
            headers: [
              {
                key: 'Cache-Control',
                // Instead of this value:
                value: 'public, max-age=180, s-maxage=180, stale-while-revalidate=180',
                // Cache-Control response header is `public, max-age=60` in production
                // and `public, max-age=0, must-revalidate` in development
              },
            ],
          },
        ]
      },
    }
    
    

    To Reproduce

    Try this next.config.js above, with an image that uses common <img> tag like this:

    <img src="/YOUR_IMAGE_IN_PUBLIC_FOLDER.jpg">
    

    And another tag that uses the new next/image component, with the same or whatever image url, for example:

    <Image src="/YOUR_IMAGE_IN_PUBLIC_FOLDER.jpg">
    

    And try requesting those images in the browser, and look into Devtools -> Network tab, the Response headers, and see that for common <img> tag it's actually changed, whereas for new <Image> component it is not.

    Expected behavior

    For /_next/image(.*) urls, I expected to see Headers that I setup, i.e. Cache-Control: public, max-age=180, s-maxage=180, stale-while-revalidate=180.

    Screenshots

    Common <img>:

    image

    New <Image>:

    image

    System information

    • OS: not applicable / any
    • Browser (if applies): not applicable / any
    • Version of Next.js: 10.0.3
    • Version of Node.js: 12.18.0
    • Deployment: both next start on development machine, and actual Vercel deployment (screenshots demonstrate the case with local machine, but I've confirmed that the same is happening on a Vercel deployment)

    Additional context

    Originally I created an issue using "Feature request" template, and it got translated into "Idea discussion": https://github.com/vercel/next.js/discussions/19896 (how to delete/close it pls? doesn't seem to be possible), - initially I wasn't sure if it's even possible to setup custom headers, and how that supposed to work, though I just needed that functionality. But later, upon discovering that there's such a functionality already, I figured out that actually /_next/image overrides both custom headers in next.config.js and headers property of Vercel config, i.e. it's not just some idea of a feature that is "not implemented", but it's actual bug.

    kind: story 
    opened by jerrygreen 113
  • Add support to transpile modules inside node_modules

    Add support to transpile modules inside node_modules

    Now some of us ships NPM packages (specially components) written in ES2015 without transpiling them.

    That's a pretty good thing specially if they are gonna used in a project like Next.js or CRA (which does transpiling). They offer benefits like:

    • No need to transpile before shipping to NPM
    • Get the benefit of Webpack 2's tree-shaking

    But we can't do this now we exclude everything inside node_modules from babel transpiling.

    So, here's the proposed solution.

    We have an entry in next.config.js to include modules which needs to go through babel. See:

    module.exports = {
       transpileModules: [
         "my-component",
         "redux/src"
       ]
    }
    
    kind: story area: Compiler 
    opened by arunoda 113
  • Allow next/head to render react components

    Allow next/head to render react components

    ℹ️ There is an easy "workaround" you can apply instead of using React components, which are NOT supported within next/head as of NextJS 10.2

    Fixes: #17721 Fixes: #17842

    Essentially, >=9.5.4 breaks compatibility for having react components within Head. While it's true that NextJS never truly supported this...

    title, meta or any other elements (e.g. script) need to be contained as direct children of the Head element, or wrapped into maximum one level of <React.Fragment> or arrays—otherwise the tags won't be correctly picked up on client-side navigations.

    ...this is a fundamental React principle and we should support the concept of component composition. For example,

    const HomePage = () => (
        <>
            <Head>
                <CustomTitle />
                <ThirdPartyScripts />
            </Head>
            <div>Homepage</div>
        </>
    )
    

    I tracked the issue to https://github.com/vercel/next.js/pull/16758/files#diff-f0591f99e1e66f02b12d5f64977b579eR86 where apparently we serialize head data in the window object now: window.__NEXT_DATA__, which doesn't handle components. I'm not sure the best way to handle that, but I created logic in head-manager.ts to handle react components and their potential children.

    TODO

    • [x] Allow custom components in Head to not throw runtime errors (initial render/page load)
    • [ ] Allow custom components in Head to render on client navigation
    • [x] Update Tests
      • [x] Ensure component children aren't duplicated (only rendered once)
      • [ ] Ensure component children aren't orphaned 🤔
    area: documentation type: next 
    opened by jflayhart 107
  • Resolve RSC / HTML rendering errors in error overlay

    Resolve RSC / HTML rendering errors in error overlay

    Handles errors thrown during RSC rendering and HTML rendering. The main reason this didn't work is that these errors are hydrated client-side which caused looking for the module only in the client compiler which doesn't have these modules. Implemented a fallback for appDir where if the module can't be found in the client compiler it falls back to the server compiler. This is fine because server components and client components have their own layer which is part of the module id. We can't make the same change for pages given that there the module id is the same between server and client compilation.

    Additionally:

    • Upgraded compile target of react-dev-overlay, it was on es3 before which is no longer needed since Next.js 13 dropped the ie11 default
    • Replaces __WEBPACK_DEFAULT_EXPORT__ with default which is for the anonymous default export stack frame.
    • Uses the sourcemapped file path when available. If not available uses the module id with stripped webpack:///(sc_server). Previously it would not strip the (sc_server) part causing it to become (sc_server)/./app/page.js instead of app/page.js.
    • Use the resolved method name, previously it would keep the method name as-is but that meant things like eval and such would be incorrectly in the resolved stack frame.
    • Added additional tests for server/client components throwing errors.

    Before

    before

    After

    Screen Shot 2022-11-23 at 16 24 19

    Bug

    • [ ] Related issues linked using fixes #number
    • [ ] Integration tests added
    • [ ] Errors have a helpful link attached, see contributing.md

    Feature

    • [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR.
    • [ ] Related issues linked using fixes #number
    • [ ] e2e tests added
    • [ ] Documentation added
    • [ ] Telemetry added. In case of a feature if it's used or not.
    • [ ] Errors have a helpful link attached, see contributing.md

    Documentation / Examples

    • [ ] Make sure the linting passes by running pnpm build && pnpm lint
    • [ ] The "examples guidelines" are followed from our contributing doc
    type: next created-by: Next.js team 
    opened by timneutkens 1
  • create-next-app installs all dependencies as

    create-next-app installs all dependencies as "dependencies"

    Verify canary release

    • [X] I verified that the issue exists in the latest Next.js canary release

    Provide environment information

    Operating System:
      Platform: darwin
      Arch: arm64
      Version: Darwin Kernel Version 22.1.0: Sun Oct  9 20:14:30 PDT 2022; root:xnu-8792.41.9~2/RELEASE_ARM64_T8103
    Binaries:
      Node: 18.12.1
      npm: 8.19.2
      Yarn: 3.3.0
      pnpm: 7.17.0
    Relevant packages:
      next: 13.0.4
      eslint-config-next: 13.0.4
      react: 18.2.0
      react-dom: 18.2.0
    

    warn - Latest canary version not detected, detected: "13.0.4", newest: "13.0.6-canary.0". Please try the latest canary version (npm install [email protected]) to confirm the issue still exists before creating a new issue. Read more - https://nextjs.org/docs/messages/opening-an-issue

    What browser are you using? (if relevant)

    chrome

    How are you deploying your application? (if relevant)

    No response

    Describe the Bug

    I've checked create-next-app version on my system, It's the latest version. Trying to create a new Next.js app with create-next-app with Typescript, creates the following package.json:

    {
      "name": "web",
      "version": "0.1.0",
      "private": true,
      "scripts": {
        "dev": "next dev",
        "build": "next build",
        "start": "next start",
        "lint": "next lint"
      },
      "dependencies": {
        "@types/node": "18.11.9",
        "@types/react": "18.0.25",
        "@types/react-dom": "18.0.9",
        "eslint": "8.28.0",
        "eslint-config-next": "13.0.4",
        "next": "13.0.4",
        "react": "18.2.0",
        "react-dom": "18.2.0",
        "typescript": "4.9.3"
      }
    }
    
    

    Expected Behavior

    I believe some of these dependencies should live in devDependencies like this:

    {
      "name": "web",
      "version": "0.1.0",
      "private": true,
      "scripts": {
        "dev": "next dev",
        "build": "next build",
        "start": "next start",
        "lint": "next lint"
      },
      "dependencies": {
        "next": "13.0.4",
        "react": "18.2.0",
        "react-dom": "18.2.0",
      },
      "devDependencies": {
        "@types/node": "18.11.9",
        "@types/react": "18.0.25",
        "@types/react-dom": "18.0.9",
        "eslint": "8.28.0",
        "eslint-config-next": "13.0.4",
        "typescript": "4.9.3"
      }
    }
    

    Link to reproduction - Issues with a link to complete (but minimal) reproduction code will be addressed faster

    yarn create next-app my-app --ts --eslint --experimental-app

    To Reproduce

    yarn create next-app my-app --ts --eslint --experimental-app

    template: bug 
    opened by mehrdad-shokri 0
  • "next/app" default export is wrapped in { default: ... } when "type": "module"

    Verify canary release

    • [X] I verified that the issue exists in the latest Next.js canary release

    Provide environment information

    Operating System:
      Platform: linux
      Arch: x64
      Version: #49-Ubuntu SMP Thu Aug 4 18:03:25 UTC 2022
    Binaries:
      Node: 18.7.0
      npm: 8.15.0
      Yarn: 1.22.19
      pnpm: 7.14.2
    Relevant packages:
      next: 13.0.5-canary.3
      eslint-config-next: 13.0.4
      react: 18.2.0
      react-dom: 18.2.0
    

    What browser are you using? (if relevant)

    No response

    How are you deploying your application? (if relevant)

    No response

    Describe the Bug

    #43206 Same happens in next/app

    Expected Behavior

    App should always just be [Function: App]

    Link to reproduction - Issues with a link to complete (but minimal) reproduction code will be addressed faster

    I think it's just another duplicate form of #43206, but if reproduction is needed I'll add

    To Reproduce

    I think it's just another duplicate form of #43206, but if reproduction is needed I'll add

    kind: bug good first issue 
    opened by artechventure 1
  • v13 Server Components - Webpack error running data fetching method

    v13 Server Components - Webpack error running data fetching method

    Verify canary release

    • [X] I verified that the issue exists in the latest Next.js canary release

    Provide environment information

    Operating System:
      Platform: darwin
      Arch: arm64
      Version: Darwin Kernel Version 21.6.0: Wed Aug 10 14:28:35 PDT 2022; root:xnu-8020.141.5~2/RELEASE_ARM64_T8101
    Binaries:
      Node: 16.18.0
      npm: 8.19.2
      Yarn: 1.22.17
      pnpm: 7.1.8
    Relevant packages:
      next: 13.0.6-canary.0
      eslint-config-next: 13.0.5
      react: 18.2.0
      react-dom: 18.2.0
    

    What browser are you using? (if relevant)

    Chrome 107.0.5304.110 (Official Build) (arm64)

    Describe the Bug

    I'm using simple-git to get the latest commit hash from a remote repo. While this works fine in API routes (see pages/api/hello in the repro repo below), doing so in an app page (see app/page.tsx) causes a server runtime error:

    TypeError: (0 , simple_git__WEBPACK_IMPORTED_MODULE_0__.default) is not a function
    

    image

    Expected Behavior

    I would have assumed that the execution context is the same for server-side data loading and API handlers.

    Link to reproduction - Issues with a link to complete (but minimal) reproduction code will be addressed faster

    https://github.com/jens-ox/nextjs-bug-app-ssr

    To Reproduce

    • clone repo
    • pnpm install
    • pnpm dev
    • GET /api/hello --> works correctly and returns the latest commit hash from the Next.js repo
    • Open http://localhost:3000 in your browser -> will cause server error
    template: bug 
    opened by jens-ox 0
  • Fix `Failed to copy traced files` for Edge functions and handle its files with middleware-manifest.json

    Fix `Failed to copy traced files` for Edge functions and handle its files with middleware-manifest.json

    Bug

    • [x] Related issues linked using fixes #number
    • [ ] Integration tests added
    • [ ] Errors have a helpful link attached, see contributing.md

    Feature

    • [ ] Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR.
    • [ ] Related issues linked using fixes #number
    • [ ] e2e tests added
    • [ ] Documentation added
    • [ ] Telemetry added. In case of a feature if it's used or not.
    • [ ] Errors have a helpful link attached, see contributing.md

    Documentation / Examples

    • [ ] Make sure the linting passes by running pnpm build && pnpm lint
    • [ ] The "examples guidelines" are followed from our contributing doc

    fixes #41395 and #42751. This PR is a follow-up PR of PR 43304.

    This fix works by checking if the page is listed in middleware-manifest.json's functions, if true then skip the handleTraceFiles process. This also fixes the two issues aforementioned by copying files listed in middleware-manifest.json for those pages.

    type: next 
    opened by DuCanhGH 2
  • [SWC] Code minification occurs with errors

    [SWC] Code minification occurs with errors

    Verify canary release

    • [X] I verified that the issue exists in the latest Next.js canary release

    Provide environment information

    Node: 16.17.0 npm: N/A Yarn: N/A pnpm: N/A Relevant packages: next: 12.3.1 eslint-config-next: N/A react: 18.2.0 react-dom: 18.2.0

    What browser are you using? (if relevant)

    107.0.5304.107

    How are you deploying your application? (if relevant)

    next start

    Describe the Bug

    We use next,js with blueprint.js (versions 12.3.1 and 3.54.0). In numeric field from blueprint in production version (minified by swc option in next config) buttons up and down stop working and cleare field value.

    Code minification occurs with errors. The order of definition and initialization of variables is violated, because of which an uninitialized variable is involved in mathematical calculations, which leads to errors in calculating and obtaining the value NaN.

    n.roundAndClampValue = function(t, n, o, r, a, i) { if (void 0 === a && (a = 0), c = t, l = i, s = eC(c, l), !(null != c && s - parseFloat(s) + 1 >= 0)) return e.VALUE_EMPTY; var c, l, s, u, p, h, d, f, v, m = eC(t, i), y = (d = Math.round((u = Number(m) + a) * h) / (h = Math.pow(10, n)), t7(d, null != o ? o : -1 / 0, null != r ? r : 1 / 0)); return eN(y, i) }

    Here: var c, l, s, u, p, h, d, f, v, m = eC(t, i), y = (d = Math.round((u = Number(m) + a) * h) / (h = Math.pow(10, n))

    I created demonstration repo: https://github.com/archual/next12_swc_minify_issue

    Everything works correctly in Next 13, but we can't switch to Next 13 yet, due to the need to support IE.

    Expected Behavior

    The build and minification of the code are working correctly, the functionality of third-party libraries works correctly.

    Link to reproduction - Issues with a link to complete (but minimal) reproduction code will be addressed faster

    https://github.com/archual/next12_swc_minify_issue

    To Reproduce

    run yand build &&& yarn start

    go to the localhost:3000/test

    Try to use number filed with arrows (up/down), value in field is cleared.

    template: bug area: SWC Minify please verify canary 
    opened by archual 0
Releases(v13.0.6-canary.0)
  • v13.0.6-canary.0(Nov 24, 2022)

    Core Changes

    • test(integration): allow to run --turbo dev server tests dynamically : #42967
    • Ensure loaderFile is included in webpack cache key: #43315
    • Improve @next/font error handling: #43298
    • Improve RSC plugin to provide better errors: #42435
    • fix appDir returning 404 in production with "output": "standalone": #43268
    • Fix outputting un-necessary trace files for edge functions: #43304

    Misc Changes

    • Avoid turbo cache miss on root package change: #43309

    Credits

    Huge thanks to @kwonoj, @hanneslund, @shuding, and @DuCanhGH for helping!

    Source code(tar.gz)
    Source code(zip)
  • v13.0.5(Nov 23, 2022)

    Core Changes

    • Remove unnecessary async function when preloading async components: #42957
    • Add force-static handling for app dir: #43061
    • Add experimental outputFileTracingIgnores config: #43103
    • Leverage outputFileTracingIgnores for next-server trace as well: #43108
    • Remove unstable_revalidate: #43119
    • types: better type definition for internal utils: #43070
    • Eagerly build swc binaries on change: #43142
    • chore: Update swc_core to v0.43.23: #42977
    • fix(next-swc/relay): make pages directory optional: #43116
    • Remove the timestamp query for CSS resources: #43185
    • Update experimental skipTrailingSlashRedirect handling: #43201
    • Avoid bundling appDir rendering into pages edge SSR bundle: #43184
    • Alias esm next document to avoid mismatch react context: #43192
    • Fix middleware not executed when pages directory is empty: #43205
    • Remove app routes from _devPagesManifest: #43188
    • Fix HMR error: "Cannot read properties of null (reading 'length')": #43145
    • fix(ts): re-export PageComponent and LayoutComponent types: #43226
    • Fix app routes are not correctly matched when src directory is used: #43234
    • chore: add firebase-admin to default serverComponentsExternalPackages list: #43249
    • Fix React.cache() in layout/page file: #43187
    • build(cargo): bump up turbopack: #43273
    • fix(next-swc): aarch64 build: #43275
    • Add fallback aliases for React: #43203
    • fix: apply default export interop to next/error: #43238
    • Remove unused use-sync-external-store dependency: #43281
    • Imageloader: collect images serverside to include images from staticp…: #41554
    • Update precompiled react: #43288
    • Resolve next api for layouts to esm for edge runtime: #43302
    • Refactor code: #43291
    • Show error for invalid page props in the TS plugin: #43300
    • docs: add error link when missing appDir: true: #43293

    Documentation Changes

    • Add note in next/link docs about anchor props: #43064
    • Remove unneeded async in docs.: #43161
    • Add JWT example to error page.: #43162
    • Updated typo in the documentation: #43160
    • Add missing quote in next/script example: #43196
    • Add a note about the auto-created empty directory: #43219
    • docs: Add default browserslist configuration as a starting point: #43260

    Example Changes

    • chore: Updating Tigris example to use stable release: #43058
    • examples(with-ant-design): bump antd v5.0.0: #43062
    • fix: Wrong link to source in "responsive" image example: #43081
    • chore(examples): with-msw update msw: #43224
    • Fix With Passport example: #43232
    • chore(examples): update Next.js in with-redux-reducer: #43237
    • Updates supertokens example app SSR behaviour: #43218
    • docs: add missing AppProps import: #43136
    • Convert more jsx/styled-components examples to TypeScript: #43117
    • Convert with-videojs, with-yoga, with-zones examples to TypeScript: #43280

    Misc Changes

    • Fix e2e deploy test for Node.js v18: #43109
    • Update tests config: #43204
    • fix: create-next-app copies files it shouldn't: #43131
    • Add links to PR template: #43239
    • Update some flakey test cases: #43247
    • Update flakey app HMR tests: #43253
    • Add support for next.js development in docker: #43138

    Credits

    Huge thanks to @hanneslund, @adilansari, @chunsch, @bennettdams, @maxproske, @SukkaW, @kdy1, @orionmiz, @leerob, @shuding, @aziyatali, @NiedziolkaMichal, @huozhi, @colinking, @juliusmarminge, @andykenward, @Yutsuten, @balazsorban44, @FomichRoman, @rishabhpoddar, @arturbien, @ADTC, @JanKaifer, @ijjk, @kwonoj, @joliss, @Andarist, and @Laityned for helping!

    Source code(tar.gz)
    Source code(zip)
  • v13.0.5-canary.7(Nov 23, 2022)

    Core Changes

    • Remove unused use-sync-external-store dependency: #43281
    • Imageloader: collect images serverside to include images from staticp…: #41554
    • Update precompiled react: #43288
    • Resolve next api for layouts to esm for edge runtime: #43302
    • Refactor code: #43291
    • Show error for invalid page props in the TS plugin: #43300
    • docs: add error link when missing appDir: true: #43293

    Example Changes

    • Convert with-videojs, with-yoga, with-zones examples to TypeScript: #43280

    Misc Changes

    • Add support for next.js development in docker: #43138

    Credits

    Huge thanks to @JanKaifer, @maxproske, @Andarist, @Laityned, @huozhi, @shuding, and @balazsorban44 for helping!

    Source code(tar.gz)
    Source code(zip)
  • v13.0.5-canary.6(Nov 23, 2022)

    Core Changes

    • build(cargo): bump up turbopack: #43273
    • fix(next-swc): aarch64 build: #43275
    • Add fallback aliases for React: #43203
    • fix: apply default export interop to next/error: #43238

    Documentation Changes

    • docs: Add default browserslist configuration as a starting point: #43260

    Example Changes

    • Convert more jsx/styled-components examples to TypeScript: #43117

    Credits

    Huge thanks to @kwonoj, @joliss, @shuding, @balazsorban44, and @maxproske for helping!

    Source code(tar.gz)
    Source code(zip)
  • v13.0.5-canary.5(Nov 22, 2022)

    Core Changes

    • fix(ts): re-export PageComponent and LayoutComponent types: #43226
    • Fix app routes are not correctly matched when src directory is used: #43234
    • chore: add firebase-admin to default serverComponentsExternalPackages list: #43249
    • Fix React.cache() in layout/page file: #43187

    Documentation Changes

    • Add a note about the auto-created empty directory: #43219

    Example Changes

    • chore(examples): with-msw update msw: #43224
    • Fix With Passport example: #43232
    • chore(examples): update Next.js in with-redux-reducer: #43237
    • Updates supertokens example app SSR behaviour: #43218
    • docs: add missing AppProps import: #43136

    Misc Changes

    • Add links to PR template: #43239
    • Update some flakey test cases: #43247
    • Update flakey app HMR tests: #43253

    Credits

    Huge thanks to @andykenward, @Yutsuten, @balazsorban44, @FomichRoman, @rishabhpoddar, @arturbien, @shuding, @ADTC, @JanKaifer, and @ijjk for helping!

    Source code(tar.gz)
    Source code(zip)
  • v13.0.5-canary.4(Nov 22, 2022)

    Core Changes

    • fix(next-swc/relay): make pages directory optional: #43116
    • Remove the timestamp query for CSS resources: #43185
    • Update experimental skipTrailingSlashRedirect handling: #43201
    • Avoid bundling appDir rendering into pages edge SSR bundle: #43184
    • Alias esm next document to avoid mismatch react context: #43192
    • Fix middleware not executed when pages directory is empty: #43205
    • Remove app routes from _devPagesManifest: #43188
    • Fix HMR error: "Cannot read properties of null (reading 'length')": #43145

    Documentation Changes

    • Remove unneeded async in docs.: #43161
    • Add JWT example to error page.: #43162
    • Updated typo in the documentation: #43160
    • Add missing quote in next/script example: #43196

    Misc Changes

    • Update tests config: #43204
    • fix: create-next-app copies files it shouldn't: #43131

    Credits

    Huge thanks to @orionmiz, @leerob, @shuding, @aziyatali, @NiedziolkaMichal, @huozhi, @hanneslund, @colinking, and @juliusmarminge for helping!

    Source code(tar.gz)
    Source code(zip)
  • v13.0.5-canary.3(Nov 20, 2022)

    Core Changes

    • Remove unstable_revalidate: #43119
    • types: better type definition for internal utils: #43070
    • Eagerly build swc binaries on change: #43142
    • chore: Update swc_core to v0.43.23: #42977

    Misc Changes

    • Fix e2e deploy test for Node.js v18: #43109

    Credits

    Huge thanks to @maxproske, @SukkaW, and @kdy1 for helping!

    Source code(tar.gz)
    Source code(zip)
  • v13.0.5-canary.2(Nov 18, 2022)

  • v13.0.5-canary.1(Nov 18, 2022)

  • v13.0.5-canary.0(Nov 18, 2022)

    Core Changes

    • Remove unnecessary async function when preloading async components: #42957
    • Add force-static handling for app dir: #43061

    Documentation Changes

    • Add note in next/link docs about anchor props: #43064

    Example Changes

    • chore: Updating Tigris example to use stable release: #43058
    • examples(with-ant-design): bump antd v5.0.0: #43062
    • fix: Wrong link to source in "responsive" image example: #43081

    Credits

    Huge thanks to @hanneslund, @adilansari, @chunsch, and @bennettdams for helping!

    Source code(tar.gz)
    Source code(zip)
  • v13.0.4(Nov 18, 2022)

    Core Changes

    • Show link to the docs for route segment config options: #42779
    • fix: Fix regression of swc minifier: #42790
    • Add additional item to RSC payload, preparing for head.tsx on navigation: #42791
    • Use window.location directly instead of parsing into URL: #42888
    • feat(next-swc/relay): Add javascript to language: #42894
    • types(#42003): better typing for next/link: #42117
    • Ensure query is provided correctly with middleware rewrites: #42818
    • feat(next/swc): allow to run custom turbopack binary: #42656
    • fix: Error: NEXT_REDIRECT crashing server in prod: #42793
    • Update caching for swc turbo builds: #42929
    • Handle head.js on client-side navigation: #42904
    • feat(jest): respect transpilePackages in tests: #42987
    • App files ending with page registred as page files: #42996
    • Allow generateStaticParams to be a synchronous function in app directory: #42942
    • chore(eslint-config-next): bump eslint-import-resolver-typescript: #43010
    • Ensure next.config.js function is handled for turbo: #43015
    • Fix app page check on windows: #43022
    • Add middleware prefetching config: #42936
    • Fix middleware prefetch cases: #43056
    • Ensure backslash is correctly handled in find-page-file: #43057
    • Fix app render: escape segment value #42626: #42823

    Documentation Changes

    • docs: fix middleware docs cookie example: #42816
    • Update docs/advanced-features/debugging.md: #42842
    • docs(edge-api-routes): fixes example: #42903
    • Update SFCC example to use TypeScript + @next/font: #42865
    • Add more details to invalid-next-config doc: #42917
    • typo: #42968
    • Document regions config for experimental-edge: #43009
    • docs: Add examples of using multiple weights and styles: #43031

    Example Changes

    • chore(examples): next/future/image -> next/image: #42794
    • docs(examples): auth0 update callback URL: #42855
    • Updates Apollo Server Examples to use Apollo Server 4 & @as-integrations/next: #42771
    • Improve with-algolia-react-instantsearch example and convert to TypeScript: #42617
    • Convert blog cover images to next/image: #42908
    • Make cover image full width: #42916
    • Convert with-app-layout example to TypeScript: #42930
    • Tigris example with Next.js: #42662
    • feat(examples): with-grafbase: #42898
    • docs(examples): add postgres.js example: #42962
    • Remove with-atlaskit example: #42973
    • Remove with-carbon-components example: #42976
    • Remove with-cerebral example: #42980
    • Remove swcMinify option from example configs: #43012
    • Convert with-cssed, with-csx, with-styled-jsx examples to TypeScript: #43018
    • feat(examples): use experimental edge runtime with grafbase: #42992

    Misc Changes

    • Update bundle analyzer dependency and output: #42797
    • Update to latest version of turbo CLI: #42803
    • Fix cache collision for swc darwin: #42960
    • Fix build-wasm-dev docs skip: #42961
    • Update deployment used for e2e test: #42969
    • test(integration): update test fixture: #42966
    • Fix test retry cleanup: #43011
    • Update test wasm timeout: #43014
    • @next/font/google variable fonts without weight range: #43036
    • Update build-wasm to checkout directly: #43054

    Credits

    Huge thanks to @shuding, @balazsorban44, @kdy1, @huozhi, @reyrodrigez, @andykenward, @idoob, @maxproske, @KoltonG, @timneutkens, @feugy, @leerob, @steven-tey, @SukkaW, @kwonoj, @adilansari, @hanneslund, @notrab, @zekicaneksi, @silvioprog, @joulev, @chanceaclark, and @Marcus-Rise for helping!

    Source code(tar.gz)
    Source code(zip)
  • v13.0.4-canary.5(Nov 18, 2022)

    Core Changes

    • Fix middleware prefetch cases: #43056
    • Ensure backslash is correctly handled in find-page-file: #43057
    • Fix app render: escape segment value #42626: #42823

    Misc Changes

    • Update build-wasm to checkout directly: #43054

    Credits

    Huge thanks to @Marcus-Rise for helping!

    Source code(tar.gz)
    Source code(zip)
  • v13.0.4-canary.4(Nov 17, 2022)

    Core Changes

    • Fix app page check on windows: #43022
    • Add middleware prefetching config: #42936

    Documentation Changes

    • docs: Add examples of using multiple weights and styles: #43031

    Example Changes

    • Convert with-cssed, with-csx, with-styled-jsx examples to TypeScript: #43018
    • feat(examples): use experimental edge runtime with grafbase: #42992

    Misc Changes

    • @next/font/google variable fonts without weight range: #43036

    Credits

    Huge thanks to @hanneslund, @maxproske, and @notrab for helping!

    Source code(tar.gz)
    Source code(zip)
  • v13.0.4-canary.3(Nov 16, 2022)

    Core Changes

    • Handle head.js on client-side navigation: #42904
    • feat(jest): respect transpilePackages in tests: #42987
    • App files ending with page registred as page files: #42996
    • Allow generateStaticParams to be a synchronous function in app directory: #42942
    • chore(eslint-config-next): bump eslint-import-resolver-typescript: #43010
    • Ensure next.config.js function is handled for turbo: #43015

    Documentation Changes

    • typo: #42968
    • Document regions config for experimental-edge: #43009

    Example Changes

    • docs(examples): add postgres.js example: #42962
    • Remove with-atlaskit example: #42973
    • Remove with-carbon-components example: #42976
    • Remove with-cerebral example: #42980
    • Remove swcMinify option from example configs: #43012

    Misc Changes

    • Update deployment used for e2e test: #42969
    • test(integration): update test fixture: #42966
    • Fix test retry cleanup: #43011
    • Update test wasm timeout: #43014

    Credits

    Huge thanks to @zekicaneksi, @kwonoj, @silvioprog, @maxproske, @timneutkens, @balazsorban44, @hanneslund, @joulev, and @chanceaclark for helping!

    Source code(tar.gz)
    Source code(zip)
  • v13.0.4-canary.2(Nov 15, 2022)

    Example Changes

    • feat(examples): with-grafbase: #42898

    Misc Changes

    • Fix cache collision for swc darwin: #42960
    • Fix build-wasm-dev docs skip: #42961

    Credits

    Huge thanks to @notrab for helping!

    Source code(tar.gz)
    Source code(zip)
  • v13.0.4-canary.1(Nov 15, 2022)

    Core Changes

    • Add additional item to RSC payload, preparing for head.tsx on navigation: #42791
    • Use window.location directly instead of parsing into URL: #42888
    • feat(next-swc/relay): Add javascript to language: #42894
    • types(#42003): better typing for next/link: #42117
    • Ensure query is provided correctly with middleware rewrites: #42818
    • feat(next/swc): allow to run custom turbopack binary: #42656
    • fix: Error: NEXT_REDIRECT crashing server in prod: #42793
    • Update caching for swc turbo builds: #42929

    Documentation Changes

    • Update docs/advanced-features/debugging.md: #42842
    • docs(edge-api-routes): fixes example: #42903
    • Update SFCC example to use TypeScript + @next/font: #42865
    • Add more details to invalid-next-config doc: #42917

    Example Changes

    • docs(examples): auth0 update callback URL: #42855
    • Updates Apollo Server Examples to use Apollo Server 4 & @as-integrations/next: #42771
    • Improve with-algolia-react-instantsearch example and convert to TypeScript: #42617
    • Convert blog cover images to next/image: #42908
    • Make cover image full width: #42916
    • Convert with-app-layout example to TypeScript: #42930
    • Tigris example with Next.js: #42662

    Misc Changes

    • Update to latest version of turbo CLI: #42803

    Credits

    Huge thanks to @andykenward, @idoob, @maxproske, @KoltonG, @timneutkens, @feugy, @leerob, @steven-tey, @kdy1, @SukkaW, @kwonoj, @adilansari, and @hanneslund for helping!

    Source code(tar.gz)
    Source code(zip)
  • v13.0.4-canary.0(Nov 14, 2022)

    Core Changes

    • Show link to the docs for route segment config options: #42779
    • fix: Fix regression of swc minifier: #42790

    Documentation Changes

    • docs: fix middleware docs cookie example: #42816

    Example Changes

    • chore(examples): next/future/image -> next/image: #42794

    Misc Changes

    • Update bundle analyzer dependency and output: #42797

    Credits

    Huge thanks to @shuding, @balazsorban44, @kdy1, @huozhi, and @reyrodrigez for helping!

    Source code(tar.gz)
    Source code(zip)
  • v13.0.3(Nov 11, 2022)

    Core Changes

    • bump @typescript-eslint/parser version to support TS 4.8: #42439
    • chore: Update swc_core to v0.40.40: #42326
    • Add telemetry for turbotrace: #42486
    • Fix undici warning in Node.js 18: #42477
    • Ensure RSC is detecting correctly during revalidate: #42508
    • fix: correctly mention generateStaticParams in error: #42524
    • Re-enable sandbox cache and update AsyncLocalStorage usage: #42547
    • Check properly whether SWC is used or not when using forceSwcTransforms: #42531
    • Show inlined error if the "use client" directive is not before other statements/expressions: #42507
    • Refactor error codes in the TS plugin: #42585
    • Fix server html insertion target: #42591
    • next/compat/router: #42502
    • Fix scrolling on router.refresh: #42583
    • Fix relative TypeScript path in monorepos: #42586
    • Aggregate updates using addStatusHandler and Promise.resolve instead of setTimeout: #42350
    • fix(next/dev): bubble up unhandled exception from --turbo: #42594
    • Rename RSC and Router headers: #42482
    • Ensure build trace ignores apply correctly when nested: #42606
    • Include @prisma/client in default external packages: #42624
    • Replace global with globalThis: #42627
    • Colocate styles with special entries: #42506
    • Add lazy initialize of router cache nodes: #42629
    • Add telemetry for @next/font: #42579
    • Also create head when creating root layout: #42571
    • feat: add --no-mangling to next build + fix --profile option: #42633
    • update react builtin deps for next channel: #42639
    • Ensure skip normalize is handled correctly: #42642
    • @next/font/google fetch error dev: #42637
    • Add missing matcher support: #42660
    • Remove useless async declaration and replace regexp to plain string in AMP postProcessor: #42495
    • @next/font error messages: #42689
    • Adopt script rejection pattern for link onerror.: #42645
    • Fix @next/font imports from outside of the root directory: #42678
    • Ensure appDir is included in webpack configVars: #42710
    • Fix replaceAll usage in post-process: #42714
    • Use import to load page and layout: #42325
    • Alias next public api to esm on edge runtime: #42709
    • fix: publish compat folder: #42613
    • Change condition to check for string attribute in lint rules utility function: #42625
    • Fix as option with optional catch all routes url object syntax: #42355
    • fix comma splice in verifyRootLayout.ts: #42324
    • build(next-swc): update turbopack to latest: #42733
    • @next/font return types: #42753
    • Eagerly bundle external ESM dependencies for pages: #42741
    • Handle hydration replaceState for static page with searchParams: #42744
    • Add test case for image generation: #42693
    • Don't pushState when already on the url: #42735
    • fix: enable emotion import map: #42750
    • Fix resolving for esm package with only exports.import condition: #42767
    • Track page counts during builds: #42766

    Documentation Changes

    • Fix Static Generation link on Pages page: #42462
    • Docs: Fix invalid tsconfig importSource syntax: #42465
    • Update response-helpers.md: #42378
    • react-version.md: Update minimum React version for Next.js 13: #42490
    • Included negative matcher docs in upgrade guide: #42489
    • Edit Upgrade docs to correct new-link codemod: #42501
    • Update turbopack docs to use [email protected]: #42528
    • Remove all custom server integration examples: #42549
    • [docs] Document middleware response changes: #42295
    • Convert with-absolute-imports example to TypeScript: #42529
    • docs/next/link: Mention middleware + dynamic routes changes: #42607
    • fix typo in api-reference next/sever: #42669
    • font api updates: #42724

    Example Changes

    • Include app directory in Tailwind config: #42407
    • Removed duplicate MONGODB_URI check in example: #42518
    • Convert middleware-matcher example to TypeScript: #42520
    • Convert custom-server-express example to TypeScript: #42110
    • Example: fixed tailwind ver in readme: #42551
    • (with-supertokens example): Fixes infinite redirect issue for unauthorised error during SSR: #42634
    • chore: update scripts to work on windows: #42632
    • example fix url: #42695

    Misc Changes

    • Reuse file when shared by several google font variants: #42480
    • Fix replaceAll usage in font loader: #42550
    • Fix default value handling for CNA in CI: #42596
    • chore: encourage adding reproductions to issues: #42667
    • Fix CSS handling rules: #42615
    • Update to latest version of turbo CLI: #42711

    Credits

    Huge thanks to @lucasassisrosa, @kdy1, @ijjk, @jakemstar, @lachlanjc, @ws-jm, @davidnx, @steven-tey, @Brooooooklyn, @hanneslund, @josephcsoti, @fantaasm, @timneutkens, @sivtu, @leerob, @balazsorban44, @maxproske, @rightones, @bot08, @shuding, @huozhi, @wyattjoh, @ethomson, @alexkirsz, @kwonoj, @MaxLeiter, @rishabhpoddar, @feedthejim, @gnoff, @moetazaneta, @superbahbi, @NOCELL, @ademilter, @nathanhammond, @imranbarbhuiya, @mrkldshv, @cvolant, @hughlilly, @ismaelrumzan, and @sQVe for helping!

    Source code(tar.gz)
    Source code(zip)
  • v13.0.3-canary.4(Nov 11, 2022)

    Core Changes

    • build(next-swc): update turbopack to latest: #42733
    • @next/font return types: #42753
    • Eagerly bundle external ESM dependencies for pages: #42741
    • Handle hydration replaceState for static page with searchParams: #42744
    • Add test case for image generation: #42693
    • Don't pushState when already on the url: #42735
    • fix: enable emotion import map: #42750
    • Fix resolving for esm package with only exports.import condition: #42767
    • Track page counts during builds: #42766

    Documentation Changes

    • font api updates: #42724

    Credits

    Huge thanks to @kwonoj, @hanneslund, @shuding, @timneutkens, @ismaelrumzan, @sQVe, and @huozhi for helping!

    Source code(tar.gz)
    Source code(zip)
  • v13.0.3-canary.3(Nov 10, 2022)

    Core Changes

    • Remove useless async declaration and replace regexp to plain string in AMP postProcessor: #42495
    • @next/font error messages: #42689
    • Adopt script rejection pattern for link onerror.: #42645
    • Fix @next/font imports from outside of the root directory: #42678
    • Ensure appDir is included in webpack configVars: #42710
    • Fix replaceAll usage in post-process: #42714
    • Use import to load page and layout: #42325
    • Alias next public api to esm on edge runtime: #42709
    • fix: publish compat folder: #42613
    • Change condition to check for string attribute in lint rules utility function: #42625
    • Fix as option with optional catch all routes url object syntax: #42355
    • fix comma splice in verifyRootLayout.ts: #42324

    Documentation Changes

    • fix typo in api-reference next/sever: #42669

    Example Changes

    • example fix url: #42695

    Misc Changes

    • Fix CSS handling rules: #42615
    • Update to latest version of turbo CLI: #42711

    Credits

    Huge thanks to @superbahbi, @NOCELL, @hanneslund, @ademilter, @nathanhammond, @shuding, @huozhi, @imranbarbhuiya, @mrkldshv, @cvolant, and @hughlilly for helping!

    Source code(tar.gz)
    Source code(zip)
  • v13.0.3-canary.2(Nov 9, 2022)

    Core Changes

    • Include @prisma/client in default external packages: #42624
    • Replace global with globalThis: #42627
    • Colocate styles with special entries: #42506
    • Add lazy initialize of router cache nodes: #42629
    • Add telemetry for @next/font: #42579
    • Also create head when creating root layout: #42571
    • feat: add --no-mangling to next build + fix --profile option: #42633
    • update react builtin deps for next channel: #42639
    • Ensure skip normalize is handled correctly: #42642
    • @next/font/google fetch error dev: #42637
    • Add missing matcher support: #42660

    Example Changes

    • (with-supertokens example): Fixes infinite redirect issue for unauthorised error during SSR: #42634
    • chore: update scripts to work on windows: #42632

    Misc Changes

    • chore: encourage adding reproductions to issues: #42667

    Credits

    Huge thanks to @shuding, @huozhi, @timneutkens, @rishabhpoddar, @hanneslund, @feedthejim, @gnoff, @moetazaneta, and @balazsorban44 for helping!

    Source code(tar.gz)
    Source code(zip)
  • v13.0.3-canary.1(Nov 8, 2022)

    Core Changes

    • fix: correctly mention generateStaticParams in error: #42524
    • Re-enable sandbox cache and update AsyncLocalStorage usage: #42547
    • Check properly whether SWC is used or not when using forceSwcTransforms: #42531
    • Show inlined error if the "use client" directive is not before other statements/expressions: #42507
    • Refactor error codes in the TS plugin: #42585
    • Fix server html insertion target: #42591
    • next/compat/router: #42502
    • Fix scrolling on router.refresh: #42583
    • Fix relative TypeScript path in monorepos: #42586
    • Aggregate updates using addStatusHandler and Promise.resolve instead of setTimeout: #42350
    • fix(next/dev): bubble up unhandled exception from --turbo: #42594
    • Rename RSC and Router headers: #42482
    • Ensure build trace ignores apply correctly when nested: #42606

    Documentation Changes

    • Update turbopack docs to use [email protected]: #42528
    • Remove all custom server integration examples: #42549
    • [docs] Document middleware response changes: #42295
    • Convert with-absolute-imports example to TypeScript: #42529
    • docs/next/link: Mention middleware + dynamic routes changes: #42607

    Example Changes

    • Removed duplicate MONGODB_URI check in example: #42518
    • Convert middleware-matcher example to TypeScript: #42520
    • Convert custom-server-express example to TypeScript: #42110
    • Example: fixed tailwind ver in readme: #42551

    Misc Changes

    • Fix replaceAll usage in font loader: #42550
    • Fix default value handling for CNA in CI: #42596

    Credits

    Huge thanks to @sivtu, @leerob, @balazsorban44, @maxproske, @rightones, @bot08, @shuding, @huozhi, @wyattjoh, @ethomson, @timneutkens, @alexkirsz, @kwonoj, and @MaxLeiter for helping!

    Source code(tar.gz)
    Source code(zip)
  • v13.0.3-canary.0(Nov 4, 2022)

    Core Changes

    • bump @typescript-eslint/parser version to support TS 4.8: #42439
    • chore: Update swc_core to v0.40.40: #42326
    • Add telemetry for turbotrace: #42486
    • Fix undici warning in Node.js 18: #42477
    • Ensure RSC is detecting correctly during revalidate: #42508

    Documentation Changes

    • Fix Static Generation link on Pages page: #42462
    • Docs: Fix invalid tsconfig importSource syntax: #42465
    • Update response-helpers.md: #42378
    • react-version.md: Update minimum React version for Next.js 13: #42490
    • Included negative matcher docs in upgrade guide: #42489
    • Edit Upgrade docs to correct new-link codemod: #42501

    Example Changes

    • Include app directory in Tailwind config: #42407

    Misc Changes

    • Reuse file when shared by several google font variants: #42480

    Credits

    Huge thanks to @lucasassisrosa, @kdy1, @jakemstar, @lachlanjc, @ws-jm, @davidnx, @steven-tey, @Brooooooklyn, @hanneslund, @josephcsoti, @fantaasm, and @timneutkens for helping!

    Source code(tar.gz)
    Source code(zip)
  • v13.0.2(Nov 4, 2022)

    Core Changes

    • Hybrid App Hooks Support: #41767
    • Add sqlite3 to the default list of server externals: #42294
    • Improve the error message when custom export fields are used in an entry: #42221
    • Add preload for layouts / components: #41519
    • Add mongodb to default server externals: #42313
    • refactor(next/turbo): consolidate turbo devserver logic: #42315
    • [middleware] add tests for body reading methods #37980: #41718
    • Handle dynamic css-in-js styles under suspense: #42293
    • Fix page folder being wrongly resolved as page file: #42348
    • Update dev process exit handling: #42367
    • Ensure edge runtime doesn't propagate cache on fetch as Cloudflare doesn't support it.: #42362
    • Add prisma to the external package list: #42323
    • Local font family name: #42286
    • useSelectedLayoutSegment at the current level: #42299
    • Stop writing window specific paths in vscode configuration: #42338
    • Ensure Undici is enabled for appDir in all cases: #42382
    • fix: usage of wasm in an appDir page file using the edge runtime: #41689
    • feat(next/mdx): support experimental mdx-rs loader: #41919
    • Fix CSS modules imports not collected due to race conditions: #42392
    • Fix entry creation on Windows: #42421
    • Mock @next/font when using next/jest: #42413
    • Avoid breaking useRouter() type change: #42430
    • Do not strip loader arg in dynamic for server components: #42426
    • Clarify app and pages file conflicting files: #42415
    • Change usePathname to return string | null: #42380
    • Fix undici warning showing unexpectedly: #42444
    • Remove static generation bail-out from usePathname: #42440

    Documentation Changes

    • docs(script): explain expected next/script behavior on client-side navigation: #42260
    • Add path for information in cookie setting: #42146
    • Update wording to remove beta FUD and keep evergreen: #42337
    • update font optimization page: #42266
    • Fix broken link on the upgrading guide: #42340
    • Fix typo: docs/api-reference/next/font.md: #42344
    • Update getting-started.md: #42353
    • Fix typo in usage of onError in script.md: #42368
    • Fix negative lookahead example in middleware.md: #42320
    • Update customizing-postcss-config.md: #42331
    • update middleware cookies example: #42341
    • Fix Docs API Reference font.md broken link: #42418
    • fixed missing <Link /> keyword: #42422
    • Fix docs for next/image upgrade guide: #42424
    • Revert font-optimization.md syntax: #42403
    • Fix invalid markdown lang: #42442

    Misc Changes

    • Update app-dir E2E tests for deploy: #42269
    • create-next-app: add head to template: #42357
    • Update flakey SIGINT test: #42370
    • Fix typo in app / hello.js template: #42335
    • [eslint-plugin] Stop warning for head element in app/layout on Windows: #42336
    • Update default eslint choice for CNA setup: #42371
    • Update swc builds: #42393
    • Add meta tag to default app template: #42394
    • examples: Fix with-turbopack typo: #42410
    • Google fonts single request: #42406

    Credits

    Huge thanks to @wyattjoh, @shuding, @ijjk, @timneutkens, @kwonoj, @balazsorban44, @Kikobeats, @BLUE-DEVIL1134, @timeyoutakeit, @huozhi, @ismaelrumzan, @mnajdova, @aleksa-codes, @delbaoliveira, @gruz0, @meenie, @danmindru, @inokawa, @hanneslund, @oBusk, @BRKalow, @devvspaces, @lucasassisrosa, @adictonator, @m7yue, @styfle, and @chibicode for helping!

    Source code(tar.gz)
    Source code(zip)
  • v13.0.2-canary.3(Nov 3, 2022)

    Core Changes

    • Fix entry creation on Windows: #42421
    • Mock @next/font when using next/jest: #42413
    • Avoid breaking useRouter() type change: #42430
    • Do not strip loader arg in dynamic for server components: #42426
    • Clarify app and pages file conflicting files: #42415
    • Change usePathname to return string | null: #42380
    • Fix undici warning showing unexpectedly: #42444
    • Remove static generation bail-out from usePathname: #42440

    Documentation Changes

    • Fix Docs API Reference font.md broken link: #42418
    • fixed missing <Link /> keyword: #42422
    • Fix docs for next/image upgrade guide: #42424
    • Revert font-optimization.md syntax: #42403
    • Fix invalid markdown lang: #42442

    Misc Changes

    • Add meta tag to default app template: #42394
    • examples: Fix with-turbopack typo: #42410
    • Google fonts single request: #42406

    Credits

    Huge thanks to @shuding, @lucasassisrosa, @adictonator, @m7yue, @styfle, @hanneslund, @chibicode, @huozhi, @timneutkens, and @wyattjoh for helping!

    Source code(tar.gz)
    Source code(zip)
  • v13.0.2-canary.2(Nov 3, 2022)

  • v13.0.2-canary.1(Nov 3, 2022)

    Core Changes

    • refactor(next/turbo): consolidate turbo devserver logic: #42315
    • [middleware] add tests for body reading methods #37980: #41718
    • Handle dynamic css-in-js styles under suspense: #42293
    • Fix page folder being wrongly resolved as page file: #42348
    • Update dev process exit handling: #42367
    • Ensure edge runtime doesn't propagate cache on fetch as Cloudflare doesn't support it.: #42362
    • Add prisma to the external package list: #42323
    • Local font family name: #42286
    • useSelectedLayoutSegment at the current level: #42299
    • Stop writing window specific paths in vscode configuration: #42338
    • Ensure Undici is enabled for appDir in all cases: #42382
    • fix: usage of wasm in an appDir page file using the edge runtime: #41689
    • feat(next/mdx): support experimental mdx-rs loader: #41919
    • Fix CSS modules imports not collected due to race conditions: #42392

    Documentation Changes

    • docs(script): explain expected next/script behavior on client-side navigation: #42260
    • Add path for information in cookie setting: #42146
    • Update wording to remove beta FUD and keep evergreen: #42337
    • update font optimization page: #42266
    • Fix broken link on the upgrading guide: #42340
    • Fix typo: docs/api-reference/next/font.md: #42344
    • Update getting-started.md: #42353
    • Fix typo in usage of onError in script.md: #42368
    • Fix negative lookahead example in middleware.md: #42320
    • Update customizing-postcss-config.md: #42331
    • update middleware cookies example: #42341

    Misc Changes

    • create-next-app: add head to template: #42357
    • Update flakey SIGINT test: #42370
    • Fix typo in app / hello.js template: #42335
    • [eslint-plugin] Stop warning for head element in app/layout on Windows: #42336
    • Update default eslint choice for CNA setup: #42371

    Credits

    Huge thanks to @kwonoj, @balazsorban44, @Kikobeats, @BLUE-DEVIL1134, @timeyoutakeit, @huozhi, @ismaelrumzan, @shuding, @mnajdova, @aleksa-codes, @delbaoliveira, @gruz0, @wyattjoh, @timneutkens, @meenie, @danmindru, @inokawa, @hanneslund, @oBusk, @BRKalow, and @devvspaces for helping!

    Source code(tar.gz)
    Source code(zip)
  • v13.0.2-canary.0(Nov 1, 2022)

    Core Changes

    • Hybrid App Hooks Support: #41767
    • Add sqlite3 to the default list of server externals: #42294
    • Improve the error message when custom export fields are used in an entry: #42221
    • Add preload for layouts / components: #41519
    • Add mongodb to default server externals: #42313

    Misc Changes

    • Update app-dir E2E tests for deploy: #42269

    Credits

    Huge thanks to @wyattjoh, @shuding, and @timneutkens for helping!

    Source code(tar.gz)
    Source code(zip)
  • v13.0.1(Oct 31, 2022)

    Core Changes

    • Rest of options in experimental.turbotrace and documentation: #41817
    • Fix revalidate check in client component: #41917
    • Add data attribute to div to distinguish it: #41889
    • Fix lint cli help: #41783
    • [Doc] Update inline documentation for next/link: #41871
    • feat(edge): split NextCookies to RequestCookies and ResponseCookies: #41526
    • Show error message when using legacy props on new next/image: #41930
    • Upgrade Edge Runtime: #41987
    • Revert "Include frameworks in main-app": #41997
    • fix(next/dev): do not suppress error from bindings: #41989
    • Fix page static info extractor for app dir: #42001
    • Add never return type for redirect() and notFound(): #42009
    • Google fonts multiple weights & styles: #42008
    • Merge app internal chunk into main chunk for layouts: #41902
    • Fix build type error of page params: #42019
    • Allow disabling Strict mode in app: #41894
    • Update react next channel: #42021
    • Fix turbo custom config detection: #42022
    • Fix css modules imports in client components: #42077
    • fix: Data URL images with 'fill' are always triggering 'missing sizes' warning: #42030
    • types: leverage webpack types and remove casting: #42104
    • Fix CSS imports from outside of the app dir when src folder is present: #42108
    • Remove react root condition and always use concurrent mode: #42141
    • Keep react-dom/server.node in precompiled: #42138
    • Warn when legacy prop detected on next/image: #42102
    • Fix failing codemod test url-to-withrouter: #42109
    • Improve TypeScript plugin error when the configuration is not statically analyzable: #42062
    • Ensure app revalidate has correct default: #42168
    • Update turbo crates: #42014
    • Update vscode config handling: #42169
    • fix: allow resolving large JSON data in server components: #42025
    • issue-41925 fix: skip duplicate props when transferring props from anchor to link: #42158
    • Ensure we detect config correctly with turbo flag: #42201
    • update turbo version: #42228
    • Fix CSS modules imports from outside of the root directory: #42106
    • Default font config fix: #42235
    • Multiple local font weights and styles: #42232
    • Optimize bundle size for appDir: #42252
    • Add event for dev process stop: #42255
    • Add E2E test for @vercel/og API route: #42258

    Documentation Changes

    • [Doc] Update Next.js + Static Web Apps: #41857
    • Update the documentation.: #41758
    • Fix invalid markdown lang: #41926
    • Fix more incorrect markdown langs: #41939
    • Update font links and add missing error: #41910
    • docs: Update the version history in the middleware page: #41949
    • Fix typo: docs/basic-features/font-optimization.md: #41967
    • Fix broken link in @next/font docs: #42002
    • Add link from next/image docs to example: #42020
    • Fix typo.: #42067
    • docs: update version install commands in upgrade guide: #42073
    • Update font-optimization.md: #42036
    • added @latest to codemods page: #42091
    • docs: clarify env inclusion in bundles: #41950
    • Correcting documentation: #42179
    • feat(create-next-app): interactive mode; --js, --ts with appDir support; enhanced testing: #42012
    • Adding note about beta docs: #42230
    • Add prompt for ESLint to CNA: #42218
    • Escape HTML on " with child" page: #42114

    Example Changes

    • Add turbopack example: #41789
    • examples: Update turbopack: #41793
    • examples: Remove turbo.json from turbopack example: #41794
    • example: add postcss as with-turbopack example devDep: #41795
    • Update with-supertokens example: #41802
    • chore: remove swcMinify: true as it's the new default.: #41877
    • Update link in Turbopack example.: #41876
    • fix any type in example with-turbopack: #41798
    • Update with-aws-amplify with TypeScript: #41815
    • Convert many examples to TypeScript: #41825
    • Fixed errors at with-passport-and-next-connect.: #41897
    • chore(examples): use [email protected] in all examples: #41922
    • chore: update example dev script: #41904
    • Update README.md: #41959
    • Fix benchmark link typo in Turbopack example: #42064
    • Update Examples to use React 18: #42027
    • chore(examples): fix with-aphrodite exapmle: #42078
    • chore(examples): move app directories: #42094
    • Broken link in example page: #42135
    • Fix typo in importing counterReducer: #42162
    • Run next/link codemod for Next.js 13 on examples: #41913
    • Fix next/link codemod errors in with-turbopack: #42203

    Misc Changes

    • Update Cargo.lock file
    • fix example command in issue template for create-next-app : #41803
    • Remove swcMinify: true since this is 13's default: #41869
    • test(dev): support to run test with --turbo: #41908
    • docs: clarify PR template instructions: #41957
    • Update e2e test for app-dir edge: #42015
    • [docs] Fix Grammar in Step 8.: #42018
    • Fix turbo css-modules test: #42103
    • Enhanced grammar.: #42148
    • grammar fix in adding-examples README.: #42152
    • [docs] Enhanced grammar in building README.: #42155
    • Fix typo pnpm-lock.yam in .prettierignore_staged: #42212
    • docs(create-next-app): copy JJ's changes from #42012 to package-level README: #42217
    • Update failing e2e middleware response test: #42256

    Credits

    Huge thanks to @jaredpalmer, @ijjk, @Brooooooklyn, @koenpunt, @rishabhpoddar, @karlhorky, @balazsorban44, @leerob, @NekoChanTaiwan, @chrisipanaque, @Reshmi-Sriram, @maxproske, @Kosai106, @timneutkens, @kwonoj, @hanneslund, @bertho-zero, @abayomi185, @styfle, @Kikobeats, @nuta, @yasath, @shuding, @serkanbektas, @steven-tey, @jimCresswell, @alpha-xek, @huozhi, @LorenzoBloedow, @iiegor, @craigwheeler, @peraltafederico, @teobler, @ismaelrumzan, @IngoVals, @jaykch, @artdevgame, @ishaqibrahimbot, @ctjlewis, @wxh06, @sokra, @timeyoutakeit, and @DuncanOgle for helping!

    Source code(tar.gz)
    Source code(zip)
  • v13.0.1-canary.4(Oct 31, 2022)

Owner
Vercel
Develop. Preview. Ship. Creators of Next.js.
Vercel
Datapod for React - a framework which extends create-react-app to enables you to quickly build data-driven sites

This is a framework which extends create-react-app to enables you to quickly build data-driven sites. This code is generated from the Datapod-for-React Core application.

Edward Tanguay 1 Mar 19, 2022
The React Framework

Next.js Getting Started Visit https://nextjs.org/learn to get started with Next.js. Documentation Visit https://nextjs.org/docs to view the full docum

Vercel 96.6k Nov 21, 2022
A frontend Framework for building B2B applications running in the browser on top of REST/GraphQL APIs, using ES6, React and Material Design

react-admin A frontend Framework for building data-driven applications running in the browser on top of REST/GraphQL APIs, using ES6, React and Materi

marmelab 21k Nov 22, 2022
The Full-stack Framework for React and other in Deno.

The Full-stack Framework for React and other in Deno.

Aleph.js 4.9k Nov 21, 2022
A most advanced ssr framework support React/Vue2/Vue3 on Earth that implemented serverless-side render specification.

A most advanced ssr framework support React/Vue2/Vue3 on Earth that implemented serverless-side render specification.

ykfe 2.2k Nov 18, 2022
web3-react🧰 A simple, maximally extensible, dependency minimized framework for building modern Ethereum dApps

?? A simple, maximally extensible, dependency minimized framework for building modern Ethereum dApps

Noah Zinsmeister 4.5k Nov 15, 2022
🌟 DataFormsJS 🌟 A minimal JavaScript Framework, standalone React and Web Components, and JSX Compiler for rapid development of high quality websites and single page applications.

?? DataFormsJS ?? A minimal JavaScript Framework, standalone React and Web Components, and JSX Compiler for rapid development of high quality websites and single page applications.

DataFormsJS 153 Nov 13, 2022
Web App using react framework

waldo.vision This is the website for waldo-anticheat :D Libraries used: React React-router React-router-hash-link React-helmet TODO: improve this list

waldo.vision 35 Nov 12, 2021
Hydrogen is a React-based framework for building dynamic, Shopify-powered custom storefronts.

Hydrogen is a React-based framework for building dynamic, Shopify-powered custom storefronts.

Shopify 3.7k Nov 21, 2022
Declarative data-fetching and caching framework for REST APIs with React

Declarative data-fetching and caching framework for REST APIs with React

Noah Grant 75 Jun 24, 2022
A utility-first CSS-in-JS framework built for React 💅👩‍🎤⚡️

A utility-first CSS-in-JS framework built for React. npm install @xstyled/styled-components styled-components Docs See the documentation at xstyled.de

Greg Bergé 2.1k Nov 18, 2022
🧰 A simple, maximally extensible, dependency minimized framework for building modern Ethereum dApps

?? A simple, maximally extensible, dependency minimized framework for building modern Ethereum dApps

Noah Zinsmeister 4.6k Nov 24, 2022
A web framework for building virtual reality experiences (VR Web)

Virtual Reality Made Simple: A-Frame handles the 3D and WebVR boilerplate required to get running across platforms including mobile, desktop, Vive, and Rift

Kevin Ngo 9 Sep 15, 2022
A simple, maximally extensible, dependency minimized framework for building modern Ethereum dApps

A simple, maximally extensible, dependency minimized framework for building modern Ethereum dApps

Web & Blockchain 1 Nov 1, 2021
Create a SPA project using Mithril JS framework and design layout by JSX syntax and use Typescript and Vite for build system.

Mithril TS(Type script) JSX Create a SPA project using Mithril JS framework and design layout by JSX syntax and use Typescript and Vite for build syst

Max Base 5 Feb 22, 2022
A data-driven, functional, and reactive framework for building Modern Web Apps in JavaScript.

A data-driven, functional, and reactive framework for building Modern Web Apps in JavaScript. It leverages React, inspired by re-frame.

Joe 1 Mar 2, 2022
A framework that let's you compose websites in Python with ease!

Perry Perry <= A framework that let's you compose websites in Python with ease! Perry works similar to Qt and Flutter, allowing you to create componen

Linkus 13 Oct 9, 2022
single-spa.js is an Open Source framework for bringing together multiple JavaScript microfrontends in a frontend application.

single-spa.js is an Open Source framework for bringing together multiple JavaScript microfrontends in a frontend application.

Listingslab Software 2 Feb 13, 2022
A high-performance framework with fine-grained observable-based reactivity for building rich applications

A high-performance framework with fine-grained observable-based reactivity for building rich applications

Fabio Spampinato 590 Nov 17, 2022