alex
cc8056d398
feat: add backup alert generation engine
2026-05-11 20:41:33 +02:00
alex
dd375a7e16
feat: add backup monitoring CRUD operations
2026-05-11 20:38:13 +02:00
alex
bd9765d4d9
feat: add backup monitoring pydantic models
2026-05-11 20:27:28 +02:00
alex
83d05ffea4
feat: add backup monitoring database schema
2026-05-11 20:22:23 +02:00
alex
80d38ed86d
fixes and improvements
2026-05-11 17:00:46 +02:00
alex
67a619e148
fixes and improvements
2026-05-11 16:27:07 +02:00
alex
befddf93ce
fix: pass jellyfin/jellyseerr secrets via get_machine_config and add placeholder for set fields
2026-05-07 23:39:59 +02:00
alex
7e80733837
fixes and improvements
2026-05-07 23:09:08 +02:00
alex
a5910b0fd6
fixes and improvements
2026-05-07 22:49:56 +02:00
alex
fe66aaf2f0
fixes and improvements
2026-05-07 21:20:55 +02:00
alex
3934893099
Auto-start collectors when saving machines
2026-05-07 21:09:05 +02:00
alex
02f6617f71
Validate SSH when saving machines
2026-05-07 20:59:23 +02:00
alex
0fa97633ce
fixes and improvements
2026-05-07 20:44:38 +02:00
alex
c73cfa27c3
fixes and improvements
2026-05-07 20:36:37 +02:00
alex
420dc34272
fixes and improvements
2026-05-07 20:07:54 +02:00
alex
84dc2bd2f6
Add SSH connection validation for settings
2026-05-07 18:31:49 +02:00
alex
2219a5730f
Fix SSH key handling for monitoring
2026-05-07 17:39:59 +02:00
alex
6d8b08d30f
fixes and improvements
2026-05-07 15:43:22 +02:00
alex
1d1f052d18
Add hybrid app version labels
2026-05-07 15:17:31 +02:00
alex
1113fac144
fixes and improvements
2026-05-07 14:04:07 +02:00
alex
efc9b247c7
fixes and improvements
2026-05-07 13:48:10 +02:00
alex
bba23165ab
fixes and improvements
2026-05-07 12:34:16 +02:00
alex
2ecca84892
fixes and improvements
2026-05-07 10:17:58 +02:00
alex
016e3255f5
Add missing frontend and backend files
2026-05-06 23:46:08 +02:00
alex
b0d84399ab
fixes and improvements
2026-05-06 21:25:12 +02:00
alex
5277f21577
fixes and improvements
2026-05-06 16:33:02 +02:00
alex
d8d80867ce
now supports multi machine monitoring
2026-05-06 15:09:15 +02:00
alex
8f0a9650b0
refactor frontend and backend modules
2026-05-04 22:57:57 +02:00
alex
7950bc9f64
redesign
2026-05-04 17:24:41 +02:00
alex
f1694ac99b
bugfixes
2026-05-04 17:07:44 +02:00
alex
4cdb4b144c
simplifications and refactorings
2026-05-04 16:59:06 +02:00
alex
e14cb8a654
bugfixes
2026-05-04 16:19:17 +02:00
alex
26f6f3d41f
deployment fixes
2026-05-04 16:03:39 +02:00
alex
e5e31d5a3b
deployment fixes
2026-05-04 15:23:34 +02:00
alex
cc3a3e8768
deployment fixes
2026-05-04 14:56:16 +02:00
alex
4226628d5a
Phase 2: Docker and OIDC auth
2026-05-04 13:50:53 +02:00
alex
47baee854b
Add comprehensive test suite for backend (133 tests)
...
Test coverage:
- test_utils.py: formatting helpers (human_size, ticks_to_minutes,
format_duration, format_bitrate, ffprobe summaries, stream parsing)
- test_path_utils.py: path resolution (prefix, media root mapping,
edge cases with spaces/special chars)
- test_domain_media.py: Jellyfin item normalization (HDR detection,
media sources, stream extraction, display formatting)
- test_jobs.py: job template rendering and shell quoting safety
- test_media_index.py: SQLite index CRUD, querying, filtering,
sorting, pagination
- test_config.py: pydantic-settings env loading
- test_api.py: full FastAPI integration tests with mocked SSH/Jellyfin
(all endpoints: dashboard, monitoring, media, files, jobs)
All tests run without network/SSH dependencies using mocks.
2026-05-03 12:45:14 +02:00
alex
51b10438a9
Restructure into backend/ and frontend/ subprojects
...
- backend/ uses proper Python src layout (src/media_library_viewer_api/)
with pyproject.toml, hatchling build, and PYTHONPATH=src convention
- frontend/ is a Vite + React + TypeScript SPA
- archive/ preserves the original Streamlit prototype for reference
- Cleaned up root to only contain docs, license, and subproject dirs
- Updated README for the new dual-subproject architecture
2026-04-30 21:48:46 +02:00
alex
3c432473e5
Add FastAPI backend and React frontend subprojects
...
Backend:
- FastAPI app with 17 REST endpoints covering dashboard, monitoring,
media index, file browser, and jobs
- Reuses existing clients/domain/services unchanged
- pydantic-settings config, dependency injection, CORS setup
- Auto-generated OpenAPI docs at /docs
Frontend:
- Vite + React + TypeScript SPA
- @tanstack/react-query for data fetching with polling
- ag-grid-react for media table and file browser
- recharts for monitoring charts
- Tailwind CSS styling
- 4 pages: Dashboard, Monitoring, Media, File Browser
- Typed API client matching all backend endpoints
Also:
- docs/MIGRATION_PLAN.md with full architecture plan
- Updated .gitignore for both subprojects
- Streamlit app preserved for now (can coexist)
2026-04-30 21:40:18 +02:00