Commit Graph
28 Commits
Author SHA1 Message Date
Leo Vasanko 03f3a2bdbe Remove paskia-migration script (SQL no longer supported). 2026-02-05 19:32:18 +00:00
Leo Vasanko fa378eb82e Improved client IP and UA handling. 2026-02-05 18:02:23 +00:00
Leo Vasanko b79f367495 Implement full ORM. Various other cleanup. 2026-01-28 17:19:56 +00:00
Leo Vasanko e3b64ef537 Move imports to top of file. 2026-01-27 20:16:32 +00:00
Leo Vasanko 21364fc621 Use fastapi-vue-setup, merging its template scripts to old Paskia entry point and devserver. Simplified CLI, no longer uses serve subcommand. Fixed the URL displayed on banner to show to actual frontend/caddy server even in devmode. 2026-01-25 03:15:50 +00:00
Leo Vasanko b6ee11b4de Updated database to use async background worker, making changes lock-free synchronous ops. 2026-01-23 15:57:16 +00:00
Leo Vasanko 887c0f92a2 Replace SQL database with JSONL based solution that keeps history. 2026-01-23 00:54:37 +00:00
Leo Vasanko 477fc1fe44 Info fields for PyPI 2025-12-18 14:13:05 +00:00
LeoVasanko c605926c30 Implement code word based remote authentication (#1)
Add comprehensive remote authentication system allowing users to log in from one device by authenticating from another trusted device. Features include:

- Proof of Work (PoW) protection using PBKDF2-SHA512 to prevent abuse
- Simple pairing codes (3 words) protected by dynamic PoW difficulty
- Autocomplete pairing code input with error checking
- Real-time WebSocket communication between devices

Unlike device addition links and reset links with QR codes that only allow adding an authentication method, and that work offline over the duration of several days, this mechanism is strictly online, with 5 minute time limit.
2025-12-08 23:56:48 +00:00
Leo Vasanko 2bac94a548 API tests added with near-complete coverage over user and admin APIs. 60% overall backend. (not including E2E test in coverage) 2025-12-06 04:45:26 +00:00
Leo Vasanko 8d723155ba Fixed and updated E2E test suite. Added user credential registration tests. Coverage for backend and frontend. 2025-12-06 00:52:35 +00:00
Leo Vasanko 8b98cb6325 Updated documentation. 2025-12-05 16:15:50 +00:00
Leo Vasanko 4b16037426 Project renamed to Paskia. 2025-12-05 13:24:34 +00:00
Leo Vasanko 591ea626bf Add host-based authentication, UTC timestamps, session management, and secure cookies; fix styling issues; refactor to remove module; update database schema for sessions and reset tokens. 2025-10-03 18:31:54 -06:00
Leo Vasanko 963ab06664 Use git tag versioning for the Python project. 2025-10-02 16:09:26 -06:00
Leo Vasanko eb38995cca Version 0.2.0 2025-09-30 17:04:53 -06:00
Leo Vasanko 41e6eb9a5a Version 0.1.2 2025-09-28 19:46:49 -06:00
Leo Vasanko ac0256c366 chore: bump version to 0.1.1 2025-09-27 20:51:46 -06:00
Leo Vasanko 654618883d Implement credential reset via CLI. 2025-09-26 17:18:49 -06:00
Leo Vasanko 3cd6a59b26 Utility module for accessing frontend in backend code. 2025-09-02 16:06:10 -06:00
Leo Vasanko cbf6223d4b New lint option path in pyproject 2025-09-02 15:03:02 -06:00
Leo Vasanko 7f8f77ae1e Separated session management from its FastAPI-dependent parts, creating authsession.py on main level.
Startup/main/scripts cleanup, now runs with passkey-auth command that takes CLI arguments.
2025-08-05 09:02:49 -06:00
Leo Vasanko 3567b7802b A lot of cleanup, restructuring project directory. 2025-07-14 12:11:29 -06:00
Leo Vasanko 99b5187a33 Build frontend as part of Python build 2025-07-13 14:23:07 -06:00
Leo Vasanko 1c9044054a More refactoring. Prevent registering another key on the same authenticator for the same user. 2025-07-07 11:20:28 -06:00
Leo Vasanko eb56c000e8 Major refactor: HTTP-only cookies, passkey management, and UI improvements
- Refactor session management from WebSocket tokens to HTTP-only cookies
- Move user/credential endpoints from WebSocket to HTTP REST API
- Add comprehensive passkey management (add/delete with safety checks)
- Implement AAGUID-based authenticator info with icons and names
- Add human-readable date formatting and clean grid layout
- Create modular architecture with session_manager, api_handlers, aaguid_manager
2025-07-06 19:45:33 -06:00
Leo Vasanko 1b7fa16cc0 Refactoring done, bugs gone. 2025-07-03 18:46:05 -06:00
Leo Vasanko 58f7ac61db A non-functional draft, saving to allow reverts. 2025-07-03 17:02:49 -06:00