Commit Graph

691 Commits

Author SHA1 Message Date
Claudio Ortolina 79def8d053 Click on chart labels to navigate 2025-04-06 09:53:43 +01:00
Claudio Ortolina 1ab3c5e4df Remove useless docs 2025-04-06 09:10:12 +01:00
Claudio Ortolina 83fa2e99a5 Amend counts to only operate on collection records 2025-04-06 08:45:47 +01:00
Claudio Ortolina 19e6e17542 Hardcode top 30 results, fix padding 2025-04-05 12:47:31 +01:00
Claudio Ortolina 8d602aa50b Charts: count by artists and count by genre
Generated via Cursor and Claude 3.5 - initial version
2025-04-05 12:41:17 +01:00
Claudio Ortolina 8b846298a7 Make collection ordered by purchase by default 2025-04-04 13:58:25 +01:00
Claudio Ortolina 8de88fcf72 Don't use a module attribute for the regex
As this will stop working with OTP28, see:

https://github.com/elixir-lang/elixir/pull/14381
2025-04-03 18:30:18 +01:00
Claudio Ortolina bc72ab7e7f Document Last.fm refresh module 2025-04-03 09:44:42 +01:00
Claudio Ortolina e16b3eb34e Prevent badges from wrapping 2025-03-30 14:47:03 +01:00
Claudio Ortolina 133b4695cf Enforce timeouts when using the OpenAI api 2025-03-29 20:02:26 +00:00
Claudio Ortolina 85a02a68fc Swap around title and artists in stats latest record 2025-03-24 09:53:49 +00:00
Claudio Ortolina 7e65221185 Hide LastFm internals via a context interface 2025-03-22 16:08:29 +00:00
Claudio Ortolina a52a980938 Exclude digital releases when searching via barcode 2025-03-22 15:08:13 +00:00
Claudio Ortolina 22de7ed85f Default displaying albums in scrobble activity 2025-03-22 08:24:22 +00:00
Claudio Ortolina 828f1667bf Remove unused LastFm.Feed functions 2025-03-14 11:53:54 +00:00
Claudio Ortolina 66f401b243 Uniform spacing between stats sections 2025-03-14 10:37:50 +00:00
Claudio Ortolina 84870f87ad Toggle between recently scrobbled albums and tracks 2025-03-14 10:30:20 +00:00
Claudio Ortolina 0020687f7b Include artist information in all albums feed 2025-03-11 08:48:17 +00:00
Claudio Ortolina ec10447ca0 Extend Last.fm Feed album/artist functions 2025-03-10 17:53:19 +00:00
Claudio Ortolina 3063155349 Extract Barcode icon 2025-03-10 12:23:52 +00:00
Claudio Ortolina 3d0eec3bff Add /api/collection endpoint 2025-03-10 11:17:51 +00:00
Claudio Ortolina bd9f88ab02 Don't pipe in one function only 2025-03-09 15:49:07 +00:00
Claudio Ortolina b23e2fd1a5 Extract Tailwind release helpers 2025-03-09 09:22:48 +00:00
Claudio Ortolina be7231f5aa Add task to check that Tailwind is up to date 2025-03-09 09:17:05 +00:00
Claudio Ortolina ada2c6ac3f No need to use a regular expression 2025-03-09 08:13:29 +00:00
Claudio Ortolina 4a18129d31 Show confetti when purchasing a record 2025-03-08 21:53:17 +00:00
Claudio Ortolina a160b8c98d Rename ImportComponent -> AddRecordComponent 2025-03-07 15:12:53 +00:00
Claudio Ortolina 91a1141441 Rename Import -> Add, and avoid surfacing MusicBrainz where unneeded 2025-03-07 15:10:22 +00:00
Claudio Ortolina 27ea8a5b62 Fix conflicting class usage 2025-03-07 11:49:31 +00:00
Claudio Ortolina 8a80062c80 Surface scan+import errors 2025-03-07 11:48:18 +00:00
Claudio Ortolina fee2799d50 Show barcodes that are not found inside the results UI
Includes a refactor to extract/cleanup barcode scan logic from the
component to a separate context with a better API.
2025-03-07 11:22:23 +00:00
Claudio Ortolina 7ae099524b Add Mix task to update Tailwind version 2025-03-06 15:33:17 +00:00
Claudio Ortolina d253150077 Recover edit form after disconnection 2025-03-06 09:55:59 +00:00
Claudio Ortolina 0c54be4474 Fix size of Scan button 2025-03-06 07:31:27 +00:00
Claudio Ortolina 4c25bd63ff Rename "Dev dashboard" -> "Live Dashboard" 2025-03-05 17:46:05 +00:00
Claudio Ortolina 15c394abf1 Fix alignment of wishlist import button 2025-03-05 17:34:53 +00:00
Claudio Ortolina 36707f40e3 Improve action buttons in wishlist/collection views
- Consistently use links
- Add icons
2025-03-05 17:22:38 +00:00
Claudio Ortolina a5ec76833c Add navbar icons except on smallest viewport 2025-03-05 17:02:34 +00:00
Claudio Ortolina 88f9a08abf Fix style of release count corner badge 2025-03-04 20:52:08 +00:00
Claudio Ortolina b111558f07 Use a plug for Prometheus metrics
The plug is injected as early as possible in order to respond quickly,
without polluting logs.
2025-03-04 20:21:15 +00:00
Claudio Ortolina 7c6fe3c0d2 Mount metrics in application
Avoids pulling entire TelemetryMetricsPrometheus dependency.
2025-03-04 17:55:07 +00:00
Claudio Ortolina 8964c7a94a Add database metrics to Prometheus endpoint 2025-03-04 15:58:33 +00:00
Claudio Ortolina 1d23bd17a4 Experimental Prometheus metrics 2025-03-04 14:31:55 +00:00
Claudio Ortolina 468799931d Prevent artwork shrinking in record list
Introduced in a79548a
2025-03-04 13:58:19 +00:00
Claudio Ortolina 0405de9b70 Improve cover upload widget
Nicely formatted, integrated preview, proper drag and drop
2025-03-04 10:32:21 +00:00
Claudio Ortolina a79548ae15 Move included releases count in records list 2025-03-04 09:53:19 +00:00
Claudio Ortolina aacba5606b Display included releases count in records grid 2025-03-04 09:50:06 +00:00
Claudio Ortolina bcfe2a7f3c Hide backup link on mobile 2025-03-04 07:27:55 +00:00
Claudio Ortolina 13152ddbc9 Stack scrobble activity badges
Useful when the same record is collected and wishlisted in a different
format.
2025-03-04 07:23:56 +00:00
Claudio Ortolina 9a252914ff Improve scan results layout on mobile 2025-03-01 18:52:17 +00:00