@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
Assets (1)
Versions (2)
View all