Next.js Notes
Next.js
Full-stack React framework.
- an open-source web development framework created by the private company Vercel providing React-based web applications with server-side rendering and static website generation.
- React documentation mentions Next.js among “Recommended Toolchains” advising it to developers when “building a server-rendered website with Node.js”.
- Where traditional React apps can only render their content in the client-side browser, Next.js extends this functionality to include applications rendered on the server-side.
NextAuth.js
Deploy
AWS
SST
- SST is a framework that makes it easy to build modern full-stack applications on AWS.
- frontend:
- Deploy a serverless Next.js, Remix, Astro, or Solid app to your AWS account and add any backend feature to it.
- backend:
- SST has constructs for most backend features. And you can even use any AWS service in your app.
- Overview of the tutorial’s demo app
- build the backend
- serverless
- serverless (aka FaaS): Serverless computing (or serverless for short), is an execution model where the cloud provider (AWS, Azure, or Google Cloud) is responsible for executing a piece of code by dynamically allocating the resources. And only charging for the amount of resources used to run the code.
- Events: The code is typically run inside stateless containers that can be triggered by a variety of events including
- http requests,
- database events,
- queuing services,
- monitoring alerts,
- file uploads,
- scheduled events (cron jobs),
- etc.
- FaaS: The code that is sent to the cloud provider for execution is usually in the form of a function. Hence serverless is sometimes referred to as “Functions as a Service” or “FaaS”.
- Major offerings: Following are the FaaS offerings of the major cloud providers:
- AWS: AWS Lambda
- Microsoft Azure: Azure Functions
- Google Cloud: Cloud Functions
- serverless
- build the frontend
- Setting up a React app (uses
create-react-app
) - Login page
- Setting up a React app (uses
Build Tools
- old school:
- Webpack
- a bit newer:
- Parcel
- the future (faster, less bloated):
- Vite
- Snowpack