@galicea-lab/nextjs-keycloak-auth (0.1.28)

Published 2026-10-28 22:25:53 +00:00 by jurekw

Installation

@galicea-lab:registry=
npm install @galicea-lab/nextjs-keycloak-auth@0.1.28
"@galicea-lab/nextjs-keycloak-auth": "0.1.28"

About this package

Example:

__app.tsx:

import Home from 'src/components/Home'

// import { AuthProvider } from 'src/context/AuthContext'
import { AuthProvider } from '@galicea/nextjs-keycloak-auth'

type ExtendedAppProps = AppProps & {
  Component: NextPage
}


const App = (props: ExtendedAppProps) => {

  return (
<AuthProvider
  keycloak={{
    url: process.env.NEXT_PUBLIC_KEYCLOAK_URL,
    realm: process.env.NEXT_PUBLIC_KEYCLOAK_REALM,
    clientId: process.env.NEXT_PUBLIC_KEYCLOAK_CLIENT_ID,
  }}
>
....
    <Home />
</AuthProvider>  )
}

export default App

pages/login/index.tsx

import { LoginPage } from '@galicea/nextjs-keycloak-auth';

const Login = () => {
  return <LoginPage />;

}

export default Login

package.json:

"dependencies": {
    "@galicea/nextjs-keycloak-auth": "^0.1.5",
...

Powrót po logowaniu (returnTo)

Stronę logowania wywołuj z miejscem powrotu, np. /login?returnTo=%2Ftasks (helper: buildLoginHref(router.asPath)). Po udanym logowaniu LoginPage przechodzi pod returnTo, a gdy go brak - na /. Przy błędzie zostaje na ekranie logowania z komunikatem. Przyjmowane są tylko ścieżki względne (/...), więc parametru nie da się użyć do przekierowania na obcą domenę.

Tailwind

Komponenty używają klas Tailwinda - dodaj dist biblioteki do content w tailwind.config.js aplikacji:

'./node_modules/@galicea-lab/nextjs-keycloak-auth/dist/**/*.{js,mjs}'

Dependencies

Dependencies

ID Version
@iconify/react ^6.0.2
keycloak-js ^26.0.0
pkce-challenge ^6.0.0
react-i18next ^17.0.14

Development dependencies

ID Version
@types/node ^22.0.0
@types/react ^19.0.0
@types/react-dom ^19.0.0
esbuild ^0.28.2
next ^16.0.0
react ^19.0.0
react-dom ^19.0.0
typescript ^5.0.0

Peer dependencies

ID Version
next >=14
react >=18
react-dom >=18
Details
npm
2026-10-28 22:25:53 +00:00
3
MIT
latest
39 KiB
Assets (1)
Versions (2) View all
0.1.28 2026-10-28
0.1.27 2026-10-28