367c8b9d74
feat: remove trailer section from anime detail page
2026-05-15 19:36:58 +02:00
17bcebd773
feat: add statistics and themes inline templates for HTMX fragments
2026-05-15 19:36:55 +02:00
0e5416aab3
feat: add reviews subpage with infinite scroll
2026-05-15 19:36:35 +02:00
59fb0ed7f8
feat: add statistics and themes lazy section dispatch
2026-05-15 19:36:27 +02:00
897d4a0c2e
feat: add formatDate template function and subdirectory glob support
2026-05-15 19:36:12 +02:00
ae64f39e2c
feat: add service implementations for staff, statistics, themes, reviews
2026-05-15 19:36:08 +02:00
df0aa52490
feat: add domain type aliases and service interface methods
2026-05-15 19:36:04 +02:00
cb1423f843
feat: add Jikan client methods for staff, statistics, themes, reviews
2026-05-15 19:36:01 +02:00
4827573e41
feat: add isEmptyResult cases for new response types
2026-05-15 19:35:57 +02:00
3e3b96053c
feat: add Jikan response types for staff, statistics, themes, reviews
2026-05-15 19:35:54 +02:00
4bd6e71e8c
fix: handle empty random anime response and improve surprise-me UX
2026-05-15 17:22:56 +02:00
0df43b6f51
feat: add HTMX-driven filter bar and browse fragments
2026-05-15 03:25:14 +02:00
391569166c
style: remove unnecessary parentheses in arrow functions
2026-05-15 02:52:09 +02:00
8ab6cf4986
feat: add search dialog with keyboard shortcut
2026-05-15 02:51:55 +02:00
4982b69c17
style: trim padding on watch page and base layout
2026-05-15 02:45:08 +02:00
de672db44e
chore: changing accent color
2026-05-15 02:39:59 +02:00
88edf87178
fix: episode transition, progress save, and seek alignment
2026-05-15 02:22:43 +02:00
aa8df4fd54
feat: natural toast messages with anime title
2026-05-15 02:22:20 +02:00
74e2aa50fd
feat: improve video seeking and range request handling
2026-05-15 01:39:29 +02:00
604a9ab382
fix: removed rounded corners except for inputs
2026-05-15 01:15:46 +02:00
598e842b2c
feat: tweak theme colors and streamline sidebar chrome
2026-05-15 01:15:00 +02:00
c8b189d0e7
feat: preserve fullscreen when autoplaying next episode
2026-05-15 00:24:05 +02:00
a47497f822
chore: go fixes
2026-05-14 13:38:42 +02:00
25ac7f20ad
Merge pull request 'refactor/significant-changes' ( #4 ) from refactor/significant-changes into main
...
Reviewed-on: mkelvers/mal#4
2026-05-14 11:37:04 +00:00
35c1d3da1a
Merge pull request 'refactor/significant-changes' ( #3 ) from refactor/significant-changes into main
...
Reviewed-on: mkelvers/mal#3
2026-05-14 11:25:25 +00:00
b31ef97204
chore: tidy go dependencies
2026-05-14 12:42:17 +02:00
596e8265f7
refactor: remove noisy debug logging
2026-05-14 12:41:41 +02:00
eb173ac072
chore: formatting
2026-05-14 12:30:06 +02:00
2619dc2c94
fix: autoplay video instantly on watch page load
2026-05-13 23:48:09 +02:00
e675f125d4
fix: replace revealed sentinel with intersect once for infinite scroll
2026-05-13 20:55:45 +02:00
4f6b534093
refactor: extract watchlist remove button into shared component
2026-05-13 19:08:13 +02:00
b3c906a16e
fix: centralize watchlist dropdown js and fix page load timing
2026-05-13 19:05:10 +02:00
950e143faf
fix: clean up completion flow and watch page dropdown
2026-05-13 18:44:08 +02:00
efbce87d5c
feat: set status to completed on anime completion
...
Check existing watchlist status — if already completed, just clear
progress and remove from continue watching. Otherwise upsert with
status 'completed'.
2026-05-13 18:28:33 +02:00
28e8b322d0
feat: add watch-complete endpoint
...
Removes continue_watching_entry and clears progress when the last
episode finishes so it no longer shows in Continue Watching.
2026-05-13 18:22:18 +02:00
6c45a80623
fix: pass watchlist status to anime detail page
...
Anime detail page never looked up or passed the user's watchlist
status, so the dropdown always showed 'Add to Watchlist'. Now
queries watch_list_entry and passes Status and WatchlistIDs.
2026-05-13 18:18:22 +02:00
413ee70923
feat: use saved progress for watch button on anime page
...
Check continue_watching_entry to find the episode to resume from.
Show 'Continue Episode N' instead of 'Watch Now' when progress exists.
2026-05-13 18:16:25 +02:00
851c9d701f
feat: link continue watching cards to saved episode
...
Include ?ep=N in the watch links so clicking a continue watching
card loads the correct episode and resumes from saved progress.
2026-05-13 18:16:19 +02:00
89e0120ca6
feat: add GetContinueWatchingEntry to watchlist service
...
Expose continue watching entry lookup so other handlers can check
saved progress for an anime without needing the playback service.
2026-05-13 18:16:14 +02:00
b7f91f3b1b
feat: save progress to continue_watching_entry only
...
Replace SaveWatchProgress (UPDATE watch_list_entry) with
UpsertContinueWatchingEntry so progress persists for any anime
without creating watchlist entries.
2026-05-13 18:16:02 +02:00
a5b0aeca98
fix: fetch both sub and dub streams on watch page load
...
Previously the backend only fetched streams for the single requested
mode (defaulting to sub), so modeSources never had a dub entry.
The frontend's switchMode showed visual feedback but streamUrlForMode
returned an empty string since no dub token existed.
Now both modes are fetched and availableModes is derived from what
actually resolved.
2026-05-13 17:53:12 +02:00
699394e2e9
fix: add linker flags to server build
2026-05-13 16:09:20 +02:00
1b20fa9d32
fix: enhance entrypoint diagnostics and ensure server binary is executable
2026-05-13 16:07:22 +02:00
b625f024f3
fix: allow static and dist paths to bypass auth middleware
2026-05-13 16:04:50 +02:00
9077dbbfcf
fix: remove unused os import in database.go
2026-05-13 15:55:58 +02:00
239957d261
fix: use DATABASE_FILE env var consistently and update Dockerfile
2026-05-13 15:55:19 +02:00
afbfc59452
feat: set DB_PATH to /app/data/mal.db and ensure directory exists
2026-05-13 15:54:45 +02:00
299553a878
fix: revert sqlc schema to migrations/ matching main branch
2026-05-13 15:50:21 +02:00
ce9dde3af7
fix: sqlc schema path to absolute path for Docker build
2026-05-13 15:38:38 +02:00
6f1b4db4f5
fix: enforce authentication by redirecting unauthenticated users to login
2026-05-13 15:23:37 +02:00