Files
check-printing/package.json
T
steve 3b1a35b7f2 feat: add OIDC login with account linking
Add OpenID Connect as an alternative login method. Users can sign in
via an external identity provider (e.g., Authentik, Keycloak, Google).

- OIDC settings configured in admin UI (discovery URL, client ID/secret,
  redirect URI, button label, enable/disable toggle)
- PKCE-based authorization code flow with state and nonce validation
- Admin can manually link any user's OIDC identity (sub/issuer fields)
- Self-service linking: logged-in users can link/unlink their own account
- SSO button conditionally shown on login page when OIDC is enabled
- Username in header now clickable to open profile for all users
- Callback errors/success communicated via URL hash fragments
2026-04-09 14:48:50 -06:00

28 lines
630 B
JSON

{
"name": "ezcheck",
"version": "0.2.0",
"description": "Self-hosted check printing web app",
"main": "src/app.js",
"scripts": {
"start": "node src/app.js",
"dev": "nodemon --exec \"node --env-file=.env\" src/app.js",
"migrate": "node migrations/import-mdb.js"
},
"dependencies": {
"bcryptjs": "^3.0.3",
"better-sqlite3": "^9.4.3",
"express": "^4.18.3",
"express-session": "^1.19.0",
"multer": "^2.1.1",
"nodemailer": "^8.0.4",
"openid-client": "^5.7.1",
"pdfkit": "^0.15.0"
},
"devDependencies": {
"nodemon": "^3.1.0"
},
"engines": {
"node": ">=20"
}
}