Nuxt Auth

screenshot of Nuxt Auth
nuxt
vitepress

Authentication built for Nuxt 3! Easily add authentication via OAuth providers, credentials or Email Magic URLs!

Overview:

nuxt-auth is an open-source authentication module designed for Nuxt 3 applications. It supports both server-side rendered (SSR) and static Nuxt applications. The module provides authentication functionality for any universal Nuxt 3 application by supporting two providers: Auth.js / NextAuth.js and local for static pages with an external backend. It offers a range of features including support for various authentication providers, session management, middleware protection, and a REST API.

Features:

  • Authentication providers: Supports OAuth providers (e.g., Github, Google, Twitter, Azure), custom OAuth, and credential-based authentication.
  • Email Magic URLs: Enables authentication using email magic links.
  • Isomorphic / Universal Auth: Provides a composable useAuth hook with methods for session retrieval, CSRF token retrieval, provider management, sign-in, and sign-out.
  • Middleware protection: Allows protection of application-side and server-side middleware and endpoints.
  • Session life-cycle management: Offers advanced features for managing the session life-cycle, including periodic session refresh, session refresh on tab-refocus, one-time session fetch on page load, and persistent sessions across requests.
  • Session broadcasting between tabs: Supports session broadcasting between different browser tabs.
  • REST API: Provides a REST API with endpoints for sign-in, sign-out, session retrieval, CSRF token retrieval, and provider retrieval.
nuxt
Nuxt

nuxt.js is a lightweight and flexible JavaScript framework that allows developers to easily build dynamic and reactive user interfaces. Its intuitive syntax, modular architecture, and focus on performance make it a popular choice for modern web development.

vitepress
Vitepress

VitePress is a static site generator designed for creating documentation websites. It offers a lightweight and fast development experience using Vue.js and Markdown, with features such as live-reload, theming, and customizable layout components.

eslint
Eslint

ESLint is a linter for JavaScript that analyzes code to detect and report on potential problems and errors, as well as enforce consistent code style and best practices, helping developers to write cleaner, more maintainable code.

typescript
Typescript

TypeScript is a superset of JavaScript, providing optional static typing, classes, interfaces, and other features that help developers write more maintainable and scalable code. TypeScript's static typing system can catch errors at compile-time, making it easier to build and maintain large applications.