feature/exif-endpoint #44

Merged
cameron merged 29 commits from feature/exif-endpoint into master 2025-12-27 03:25:19 +00:00

29 Commits

Author SHA1 Message Date
Cameron
ccd16ba987 Files endpoint refactoring 2025-12-26 22:20:01 -05:00
Cameron
be281130d5 Send timestamp from filename for Memories endpoint 2025-12-25 23:32:00 -05:00
Cameron
ae0886cd2e Fix tag count sorting, hopefully 2025-12-25 15:17:50 -05:00
Cameron
6c543ffa68 Add CLAUDE.md documentation for Claude Code
Comprehensive guide covering build commands, architecture overview, database patterns, file processing pipeline, API structure, and development workflows.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-24 16:07:03 -05:00
Cameron
f0d482af12 Optimize release build times with thin LTO
Switch from fat LTO to thin LTO for faster release builds while maintaining similar performance characteristics.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2025-12-24 10:21:47 -05:00
Cameron
c0021734b6 Try fixing Otel span propogation 2025-12-24 10:17:14 -05:00
Cameron
c1cfda9df9 Fix memories week span sorting 2025-12-24 00:27:44 -05:00
Cameron
c035678162 Add tracing to EXIF DAO methods 2025-12-23 22:57:24 -05:00
Cameron
636701a69e Refactor file type checking for better consistency
Fix tests
2025-12-23 22:30:53 -05:00
Cameron
6dbac6f22f Run cargo fmt/fix 2025-12-23 22:07:50 -05:00
Cameron
3a64b30621 Fix Date sorting in tagged/recursive search 2025-12-23 22:07:40 -05:00
Cameron
47d3ad7222 Add polling-based file watching
Remove notify and update otel creates
2025-12-22 22:54:19 -05:00
Cameron
df94010d21 Fix tests and improve memories date error log 2025-12-19 14:20:51 -05:00
Cameron
e3ccc123d0 Add EXIF update support 2025-12-18 21:20:45 -05:00
Cameron
b4c5a38c9d Cargo fmt 2025-12-18 21:20:31 -05:00
Cameron
aaf9cc64be Add Cleanup binary for fixing broken DB/file relations 2025-12-18 16:02:15 -05:00
Cameron
28d85dc4a5 Fix recursive search and media filtering 2025-12-18 11:25:50 -05:00
Cameron
721b66481e Add EXIF search implementation to list photos endpoint 2025-12-18 10:06:13 -05:00
Cameron
eb8e08b9ff Add EXIF search infrastructure (Phase 1 & 2)
Implements foundation for EXIF-based photo search capabilities:

- Add geo.rs module with GPS distance calculations (Haversine + bounding box)
- Extend FilesRequest with EXIF search parameters (camera, GPS, date, media type)
- Add MediaType enum and DateTakenAsc/DateTakenDesc sort options
- Create date_taken index migration for efficient date queries
- Implement ExifDao methods: get_exif_batch, query_by_exif, get_camera_makes
- Add FileWithMetadata struct for date-aware sorting
- Implement date sorting with filename extraction fallback
- Make extract_date_from_filename public for reuse

Next: Integrate EXIF filtering into list_photos() and enhance get_all_tags()
2025-12-18 09:34:07 -05:00
Cameron
52e1ced2a2 Improved image caching and CORS handling 2025-12-17 22:36:03 -05:00
Cameron
c6b1b46629 Fix video part directory traversal 2025-12-17 22:32:46 -05:00
Cameron
7ddc2dec64 Add indexes for favorite de-duplication 2025-12-17 22:31:16 -05:00
Cameron
1294a86a41 Add indexes for improved query performance 2025-12-17 22:31:04 -05:00
Cameron
445b82b21a Bump to 0.4.0 2025-12-17 22:17:54 -05:00
Cameron
c7fd328925 Check Exif DB for memory collection 2025-12-17 22:10:23 -05:00
Cameron
e4d988a9fd Cargo formatting 2025-12-17 22:10:03 -05:00
Cameron
d61fcb942a Exif comment on TZ handling 2025-12-17 22:09:03 -05:00
Cameron
07c27bf1bb Add HEIC and TIF image extensions to files endpoint 2025-12-17 16:57:27 -05:00
Cameron
4082f1fdb8 Add Exif storing and update to Metadata endpoint 2025-12-17 16:55:48 -05:00