5629223407
[With next 11 requiring react 17](https://nextjs.org/blog/next-11#upgrade-guide), most of the examples need to be updated, so the following snippet updated all the examples to a compatible react version. ```bash cd examples/ fd -g 'package.json' | xargs sed -r -i 's/"react": ".*"/"react": "^17.0.2"/ fd -g 'package.json' | xargs sed -r -i 's/"react-dom": ".*"/"react-dom": "^17.0.2"/' # exclude experimental react version git checkout with-reason-relay/package.json ``` |
||
---|---|---|
.. | ||
components | ||
lib | ||
pages | ||
public | ||
.env.development | ||
.env.production | ||
.gitignore | ||
package.json | ||
README.md | ||
vercel.json |
Example application using next-iron-session
Online demo at https://next-iron-session.vercel.app/ 👀
This example creates an authentication system that uses a signed and encrypted cookie to store session data. It relies on next-iron-session
.
It uses current best practices for authentication in the Next.js ecosystem.
On the next-iron-session repository (https://github.com/vvo/next-iron-session) you'll find:
- full API documentation and explanations on how it works
- TypeScript example
- JavaScript example
- Express.js example
Features:
- Static Generation (SG), recommended example
- Server-side Rendering (SSR) example in case you need it
- Logged in status synchronized between browser windows/tabs using
useUser
hook andswr
module - Layout based on the user's logged-in/out status
- Session data is signed and encrypted in a cookie
next-iron-session
also supports:
- Express / Connect middlewares
- Multiple encryption keys (passwords) to allow for seamless updates or just password rotation
Preview
Preview the example live on StackBlitz:
Deploy your own
Deploy the example using Vercel:
How to use
Execute create-next-app
with npm or Yarn to bootstrap the example:
npx create-next-app --example with-iron-session with-iron-session-app
# or
yarn create next-app --example with-iron-session with-iron-session-app
Deploy it to the cloud with Vercel (Documentation).