1.2.0

Latest release in branch 1
Released 9 years ago (December 02, 2016)

Software Next.js
Branch 1
Status
End of life
First official release version 1.0.0
First official release date 9 years ago (October 25, 2016)
Requirement Node.js 6+
Release notes https://nextjs.org/blog/next-1
Source code https://github.com/vercel/next.js/tree/1.2.0
Download https://www.npmjs.com/package/next/v/1.2.0
Next.js 1 Releases View full list

What Is New in Next.js 1 (summary table)

The initial release of Next.js introduced a foundational, full-stack React framework designed for production. It centered on a file-system router and hybrid rendering, setting the stage for modern web development.

Category Key Changes
Core Architecture File-system based routing, Server-side rendering (SSR), Static exporting, Hot code reloading.
Developer Experience Zero configuration setup, Automatic code splitting, Built-in CSS support, Ecosystem compatibility.
Performance Prefetching for page performance, Efficient production builds, Client-side hydration.

Reference: Next.js v1 Release Notes

How does Next.js 1 simplify React project setup?

Next.js 1 eliminates complex build configuration. You get a working project by simply creating a pages directory. This matters because it removes the initial friction of setting up SSR, routing, and bundling, letting you write code immediately.

The framework handles the toolchain, including Webpack and Babel, with sensible defaults. In practice, this allowed teams to standardize on a single, opinionated structure for React applications, speeding up onboarding and project starts.

What routing system did version 1 introduce?

Next.js 1 launched with a file-system based router. Every React component in the pages directory becomes a route. This design choice is central to the framework's simplicity and remains its defining characteristic.

Creating pages/about.js automatically makes the /about page accessible. This convention-over-configuration approach means you don't manually define route tables, reducing boilerplate and potential errors.

How did Next.js 1 handle rendering?

The framework provided a hybrid rendering model from day one. Each page could use Server-Side Rendering for dynamic content or be pre-rendered to static HTML. This flexibility was a key differentiator from single-page application frameworks.

You control it per page by using getInitialProps for data fetching. If you export this async function, the page uses SSR. If you don't, Next.js can automatically static-optimize it. This hybrid approach laid the groundwork for future incremental static regeneration.

FAQ

Does Next.js 1 require a Node.js server to run?
Yes, for features like Server-Side Rendering. However, you can also export a fully static site using next export for hosting on any static service, which was a standout feature at the time.

Can I use CSS with Next.js 1?
Yes, it has built-in support for CSS-in-JS and importing .css files. You could import a CSS file directly into a component or use styled-jsx, which was included by default for component-scoped styles.

How is data fetching handled in this version?
Data fetching is done per page using the getInitialProps lifecycle method. This function runs on the server for initial page loads and on the client for subsequent navigations, providing the data as props to your page component.

Is code splitting automatic?
Yes. Next.js 1 automatically splits your code by each page in the pages directory. When users navigate, they only load the code needed for that page. This was a major performance win without any developer configuration.

Can I use Redux or other state libraries?
Absolutely. Next.js is unopinionated about state management. You can use Redux, MobX, or Context API. The main consideration was integrating them with the SSR lifecycle in getInitialProps.

Releases In Branch 1

Version Release date
1.2.0 9 years ago
(December 02, 2016)
1.2.1 9 years ago
(December 02, 2016)
1.2.2 9 years ago
(December 02, 2016)
1.2.3 9 years ago
(December 02, 2016)
1.1.2 9 years ago
(November 18, 2016)
1.1.1 9 years ago
(November 06, 2016)
1.1.0 9 years ago
(November 05, 2016)
1.0.2 9 years ago
(October 29, 2016)
1.0.1 9 years ago
(October 28, 2016)
1.0.0 9 years ago
(October 25, 2016)