Learn Nuxt with a Collection of 100+ Tips!

@kgierke/nuxt-basic-auth

Nuxt Module for Basic Authentication

Basic Auth

npm versionnpm downloadsLicenseNuxt

Nuxt 3 Module for Basic Authentication.

Features

  • ✅ Simple to use
  • ✅ Supports multiple users
  • ✅ Whitelist routes

Quick Setup

Install the module to your Nuxt application with one command:

npx nuxi module add @kgierke/nuxt-basic-auth

Configure the module in nuxt.config.ts

export default defineNuxtConfig({
  modules: ["@kgierke/nuxt-basic-auth"],

  basicAuth: {
    enabled: true,
    users: [
      {
        username: "admin",
        password: "admin",
      },
    ],
    // Optional: Delimiter for users string
    // usersDelimiter: ",",
    // Optional: Whitelist routes
    // allowedRoutes: ["/api/.*"],
  },
});

That's it! You can now use Basic Auth in your Nuxt app ✨

Options

OptionTypeDefaultDescription
enabledbooleantrueEnables or disables Basic Auth.
usersarray[]Array of users. Each user must have a username and password property. Can also be formatted as string <username>:<password>,<username2>:<password2>
usersDelimiterstring,Delimiter for users string.
allowedRoutesstring[][]Array of routes that are not protected by Basic Auth. Supports regex patterns.

All options can also be set through environment variables, using the NUXT_BASIC_AUTH_ prefix. For example, NUXT_BASIC_AUTH_ENABLED=true.

Development

# Install dependencies
npm install

# Generate type stubs
npm run dev:prepare

# Develop with the playground
npm run dev

# Build the playground
npm run dev:build

# Run ESLint
npm run lint

# Run Vitest
npm run test
npm run test:watch

# Release new version
npm run release