- TOTP-based two-factor authentication (RFC 6238, HMAC-SHA1): setup, enable, disable in Settings → Password & Security - Login flow: password verified first, then temp token issued for 5-min TOTP window before full session is granted - QR code generated server-side via `qrcode` package for scanning with any authenticator app - "Run Rules Now" button in TransactionRulesManager applies auto-categorization rules to existing uncategorized expenses Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
33 lines
745 B
JSON
33 lines
745 B
JSON
{
|
|
"name": "budget",
|
|
"version": "0.1.0",
|
|
"private": true,
|
|
"scripts": {
|
|
"dev": "next dev -p 7654",
|
|
"build": "next build",
|
|
"start": "next start -p 7654",
|
|
"lint": "eslint"
|
|
},
|
|
"dependencies": {
|
|
"@types/bcryptjs": "^2.4.6",
|
|
"@types/qrcode": "^1.5.6",
|
|
"bcryptjs": "^3.0.3",
|
|
"next": "16.1.1",
|
|
"qrcode": "^1.5.4",
|
|
"react": "19.2.0",
|
|
"react-dom": "19.2.0"
|
|
},
|
|
"devDependencies": {
|
|
"@tailwindcss/postcss": "^4",
|
|
"@types/node": "^20",
|
|
"@types/react": "^19",
|
|
"@types/react-dom": "^19",
|
|
"babel-plugin-react-compiler": "1.0.0",
|
|
"baseline-browser-mapping": "^2.9.14",
|
|
"eslint": "^9",
|
|
"eslint-config-next": "16.0.0",
|
|
"tailwindcss": "^4",
|
|
"typescript": "^5"
|
|
}
|
|
}
|