Next JS - rs-hash/Learning GitHub Wiki

Next.JS

  • Framework for building fast and SEO friendly applications

  • Framework - Libs + tools + conventions

  • It has compiler - transform & minify JS Code

  • CLI - build & start app

  • Node.js - Execute JS code

  • Routing in Next.js is based on File system ( create any folder - with page.tsx )

import Link from "next/link"
<Link href="/users">MyLink </Link>
  • can render components in Client(browser) or server(nodejs) environment

  • client side rendering - large bundle, resource intensive, no SEO, less secure

  • server side rendering - small bundle, SEO, more secure

  • server components cannot listen to browser events, access browser api, maintain state, useEffect

  • All components are server components by default unless we add "use client"

  • To fetch data on client -> useState, useEffect,

  • data is cached on filesystem by default

  • to disable cache - fetch("API", {cache: 'no-store'}) - fetch("API", {next: {revalidate:10}})

  • Static site generation - static rendering - Renders at build time

  • Dynamic Rendering - Renders at request time ( disable caching )

  • Rendering -> Client side / server side

  • Server side Rendering -> Static ( at build time ) / Dynamic ( at request time )

Tailwind

  • ** padding** - p-[number], px-[number], py-[number]
  • ** margin** - m-[number], mx-[number], my-[number]
  • ** text-xl, text-sm **
  • ** text-center**
⚠️ **GitHub.com Fallback** ⚠️