1. Embraces React exclusively[1]. We at ZEIT think the React Component model is the de-facto component model of the web and mobile.
In practical terms, this means that every "page" or "entry point" to your app is just an exported component `function` or `class`. `export default () => <p>My component!</p>`.
At the expense of a storm of HN downvotes, it's "more PHP than Meteor" :)
2. No data layer built in, syncing, Models, etc. We added an extra lifecycle hook called `getInitialProps` (think of it as the counterpart to `getInitialState`) whose contract is returning data as a `Promise`.
This allows you to combine and compose different approaches to data retrieval. It works just as well with REST as it does with GraphQL or Socket.IO or server-sent-events or offline-only orβ¦
3. It hides configuration details but allows you to tap into them.
It's powered by `Babel` and `webpack`, which are exposed as a single command (`next` and `next build`), but you can completely override and customize them.
These are just some ideas. We created it to power the team collaboration aspects of our Web UI (https://zeit.co). We are committed to supporting it because we use it and we love it.
That made me laugh. But, really, it's true. Adding a new page is as simple as adding a new file. No importing, routing, etc. required. That's one thing that I think PHP got right.
To answer my own question to those that stumble upon this via google or whatever. It doesn't appear to be. However this example was pretty helpful (as of 20170518):
In practical terms, this means that every "page" or "entry point" to your app is just an exported component `function` or `class`. `export default () => <p>My component!</p>`.
At the expense of a storm of HN downvotes, it's "more PHP than Meteor" :)
2. No data layer built in, syncing, Models, etc. We added an extra lifecycle hook called `getInitialProps` (think of it as the counterpart to `getInitialState`) whose contract is returning data as a `Promise`.
This allows you to combine and compose different approaches to data retrieval. It works just as well with REST as it does with GraphQL or Socket.IO or server-sent-events or offline-only orβ¦
3. It hides configuration details but allows you to tap into them.
It's powered by `Babel` and `webpack`, which are exposed as a single command (`next` and `next build`), but you can completely override and customize them.
These are just some ideas. We created it to power the team collaboration aspects of our Web UI (https://zeit.co). We are committed to supporting it because we use it and we love it.
[1] Also React alternatives like Inferno and Preact (https://github.com/zeit/next.js/tree/master/examples/using-p...)