mirror of
https://github.com/bitinflow/nuxt-oauth.git
synced 2026-03-13 13:45:59 +00:00
ebad02a1e14cce1484428dfe20314be478cb73ba
@bitinflow/nuxt-oauth
Nuxt module for OAuth2 authentication
Features
- 📦 OAuth2 authentication
- 📦 Supports only one OAuth2 provider
- 📦 Supports only implicit flow
Quick Setup
- Add
@bitinflow/nuxt-oauthdependency to your project
# Using pnpm
pnpm add -D @bitinflow/nuxt-oauth
# Using yarn
yarn add --dev @bitinflow/nuxt-oauth
# Using npm
npm install --save-dev @bitinflow/nuxt-oauth
- Add
@bitinflow/nuxt-oauthto themodulessection ofnuxt.config.tsand disablessr.
Or alternatively disable ssr via routeRules, only for pages where auth or guest middlewares are needed. Typically account section and login page.
export default defineNuxtConfig({
modules: [
'@bitinflow/nuxt-oauth'
],
ssr: false,
// or
routeRules: {
'/account/**': { ssr: false },
'/auth/**': { ssr: false }
},
oauth: {
redirect: {
login: '/login',
logout: '/',
callback: '/login',
home: '/home'
},
endpoints: {
authorization: 'https://example.com/v1/oauth/authorization',
userInfo: `https://example.com/api/users/me`,
logout: 'https://example.com/oauth/logout'
},
clientId: 'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx',
scope: ['user:read']
},
})
That's it! You can now use @bitinflow/nuxt-oauth in your Nuxt app ✨
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
Description
Languages
TypeScript
92%
Vue
8%