f52955ec94
Clean up package.json files in the `examples` directory: - Add `private: true` - Remove `version` (because they are irrelevant for packages that are not meant to be published) - Remove `name` (because they are optional for packages that are not meant to be published, and when someone clones an example, they often rename it and the property becomes stale) - Remove `author` - Remove `description` - Remove `license` Also remove `with-dynamic-app-layout` example completely, since it does the same as `layout-component` (https://github.com/vercel/next.js/pull/27121#discussion_r668178408). ## Documentation / Examples - [x] Make sure the linting passes |
||
---|---|---|
.. | ||
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).