Add JWT authentication with animated login page

- Backend: JWT auth with /api/auth/login and /api/auth/verify endpoints
- Middleware: requireAuth protects all /api routes except /api/auth
- Frontend: Animated characters login page with eye-tracking effects
- Auth state persisted in localStorage with token verification on mount
- Sidebar logout button, 401 auto-logout, 30-day token expiry
- shadcn button, input, checkbox, label components added

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-23 16:35:30 +05:30
parent eb6c097664
commit ed13991515
15 changed files with 1015 additions and 16 deletions

View File

@@ -8,16 +8,18 @@
"start": "tsx src/index.ts"
},
"dependencies": {
"express": "^4.21.0",
"ssh2": "^1.16.0",
"cors": "^2.8.5",
"dotenv": "^16.4.0"
"dotenv": "^16.4.0",
"express": "^4.21.0",
"jsonwebtoken": "^9.0.3",
"ssh2": "^1.16.0"
},
"devDependencies": {
"@types/express": "^5.0.0",
"@types/ssh2": "^1.15.0",
"@types/cors": "^2.8.17",
"typescript": "^5.8.0",
"tsx": "^4.19.0"
"@types/express": "^5.0.0",
"@types/jsonwebtoken": "^9.0.10",
"@types/ssh2": "^1.15.0",
"tsx": "^4.19.0",
"typescript": "^5.8.0"
}
}