React is a wonderful framework, isn't it?
I have been a react developer for some time now and I love it.
But recently I came across Next.js, which is built on top of React and it is definitely an improvement over the latter.
So what is Next.Js?
NextJS is a open-source framework for building React applications. It comes with server-side rendering, static-site generation, serverless functions, SEO support and so so much more, that too out of the box. Yay!
How is server-side rendering faster than client-side rendering?
In server-side rendering the contents of the webpage, be it HTML, CSS or Javascript are generated on the server, and the whole HTML page is downloaded and displayed. So, all the pre-processing, calculations, and any complex communication with the server are handled in the server itself whereas, in client-side rendering, everything is processed at clientside
Advantages of NextJs over React
It's super fast
With the help of Server-side rendering and static-site generation loads the site blazing fast.It's SEO friendly.
Server-side rendering fuels our goals to achieve levels of SEO, UX, performance, etc. Moreover, you can customize your own<meta>
tags to improve your Search Engine Optimisation to your liking by importing Head from"next/head"
and these meta tags will be appended to your page so that search engines could crawl swiftly. How cool is that!Wide features out of the box
Minifying javascript, doing code splitting, lazy loading, prefetching assets, render the minimal amount of HTML, caching builds, all performance optimization comes out of the box, in nextJs so your primary focus remains the development of your project.
How to get started?
1. Pre-requisites
2. Creating a project
NextJS recommends creating a new Next.js app using create-next-app
, which sets up everything automatically for you. To create a project, run in the terminal after navigating to the desired directory:
npx create-next-app
# or
yarn create next-app
Here's a Codesandbox example of what you'll get:
Resources
In case you don't know ReactJS, I suggest you learn that first. There's plenty of resources available online, I will mention some of them down here.
ReactJs resources.
NextJS resources
- NextJs Docs is great place to start.
- This YouTube course will get you started from ground up.
Thank you for reading this far
Subscribe to my Newsletter for exciting posts just like this.
Top comments (3)
Sorry but I don't really understand your title. React is a view library instead of a framework. Also, Nextjs is a React framework and if you are using Nextjs you are using React.
Point Noted. My title was a little vague. What
Jeppe Reinhold
Yeah, I think maybe what you're trying to convey, is using Next.js instead of Create-React-App?