lyrics

lyrics
git clone git://brookjeynes.dev/bjeynes/lyrics.git
Log | Files | Refs

ModeNameSize
-rw-r--r--.gitignore6L
-rw-r--r--Makefile36L
-rw-r--r--cmd/server/main.go52L
-rw-r--r--go.mod45L
-rw-r--r--go.sum82L
-rw-r--r--internal/config/config.go27L
-rw-r--r--internal/db/artist.go223L
-rw-r--r--internal/db/db.go184L
-rw-r--r--internal/db/release.go397L
-rw-r--r--internal/db/song.go478L
-rw-r--r--internal/domain/artist.go19L
-rw-r--r--internal/domain/genre.go45L
-rw-r--r--internal/domain/musicbrainz.go10L
-rw-r--r--internal/domain/regex.go20L
-rw-r--r--internal/domain/release.go75L
-rw-r--r--internal/domain/search.go9L
-rw-r--r--internal/domain/song.go53L
-rw-r--r--internal/domain/strings.go33L
-rw-r--r--internal/external/musicbrainz/musicbrainz.go131L
-rw-r--r--internal/log/log.go88L
-rw-r--r--internal/server/artist.go62L
-rw-r--r--internal/server/edit-artist.go168L
-rw-r--r--internal/server/edit-release.go242L
-rw-r--r--internal/server/htmx/htmx.go28L
-rw-r--r--internal/server/index.go31L
-rw-r--r--internal/server/new-artist.go145L
-rw-r--r--internal/server/new-release.go174L
-rw-r--r--internal/server/new-song.go266L
-rw-r--r--internal/server/release-cover.go79L
-rw-r--r--internal/server/release.go59L
-rw-r--r--internal/server/router.go54L
-rw-r--r--internal/server/routes/routes.go57L
-rw-r--r--internal/server/search-artist.go120L
-rw-r--r--internal/server/search-release.go110L
-rw-r--r--internal/server/search-song.go83L
-rw-r--r--internal/server/search.go69L
-rw-r--r--internal/server/server-state.go45L
-rw-r--r--internal/server/song.go57L
-rw-r--r--internal/server/static.go43L
-rw-r--r--internal/server/toast/toast.css43L
-rw-r--r--internal/server/toast/toast.go24L
-rw-r--r--internal/server/toast/toast.js31L
-rw-r--r--internal/server/ui/js/lucide-utils.js11L
-rw-r--r--internal/server/ui/js/string-utils.js5L
-rw-r--r--internal/server/ui/layouts/base/base.go6L
-rw-r--r--internal/server/ui/layouts/base/base.templ64L
-rw-r--r--internal/server/ui/partials/artist-search-picker/artist-search-picker.go7L
-rw-r--r--internal/server/ui/partials/artist-search-picker/artist-search-picker.templ39L
-rw-r--r--internal/server/ui/partials/artist-search-similar/artist-search-similar.go7L
-rw-r--r--internal/server/ui/partials/artist-search-similar/artist-search-similar.templ30L
-rw-r--r--internal/server/ui/partials/artist-search-table/artist-search-table.go11L
-rw-r--r--internal/server/ui/partials/artist-search-table/artist-search-table.templ30L
-rw-r--r--internal/server/ui/partials/release-cover/release-cover.go21L
-rw-r--r--internal/server/ui/partials/release-cover/release-cover.templ18L
-rw-r--r--internal/server/ui/partials/release-search-picker/release-search-picker.go7L
-rw-r--r--internal/server/ui/partials/release-search-picker/release-search-picker.templ35L
-rw-r--r--internal/server/ui/partials/release-search-similar/release-search-similar.go7L
-rw-r--r--internal/server/ui/partials/release-search-similar/release-search-similar.templ26L
-rw-r--r--internal/server/ui/partials/release-search-table/release-search-table.go11L
-rw-r--r--internal/server/ui/partials/release-search-table/release-search-table.templ48L
-rw-r--r--internal/server/ui/partials/song-search-table/song-search-table.go11L
-rw-r--r--internal/server/ui/partials/song-search-table/song-search-table.templ45L
-rw-r--r--internal/server/ui/partials/table/table.css5L
-rw-r--r--internal/server/ui/partials/table/table.go9L
-rw-r--r--internal/server/ui/partials/table/table.templ101L
-rw-r--r--internal/server/ui/picker-list.css68L
-rw-r--r--internal/server/ui/style.css18L
-rw-r--r--internal/server/ui/views/artist/artist.css5L
-rw-r--r--internal/server/ui/views/artist/artist.go10L
-rw-r--r--internal/server/ui/views/artist/artist.templ105L
-rw-r--r--internal/server/ui/views/edit-artist/edit-artist.go7L
-rw-r--r--internal/server/ui/views/edit-artist/edit-artist.templ104L
-rw-r--r--internal/server/ui/views/edit-release/edit-release.go66L
-rw-r--r--internal/server/ui/views/edit-release/edit-release.js47L
-rw-r--r--internal/server/ui/views/edit-release/edit-release.templ229L
-rw-r--r--internal/server/ui/views/index/index.go7L
-rw-r--r--internal/server/ui/views/index/index.templ53L
-rw-r--r--internal/server/ui/views/new-artist/new-artist.css16L
-rw-r--r--internal/server/ui/views/new-artist/new-artist.go3L
-rw-r--r--internal/server/ui/views/new-artist/new-artist.templ81L
-rw-r--r--internal/server/ui/views/new-release/new-release.css15L
-rw-r--r--internal/server/ui/views/new-release/new-release.go3L
-rw-r--r--internal/server/ui/views/new-release/new-release.js6L
-rw-r--r--internal/server/ui/views/new-release/new-release.templ160L
-rw-r--r--internal/server/ui/views/new-song/new-song.css42L
-rw-r--r--internal/server/ui/views/new-song/new-song.go3L
-rw-r--r--internal/server/ui/views/new-song/new-song.js8L
-rw-r--r--internal/server/ui/views/new-song/new-song.templ314L
-rw-r--r--internal/server/ui/views/release/release.css25L
-rw-r--r--internal/server/ui/views/release/release.go7L
-rw-r--r--internal/server/ui/views/release/release.templ90L
-rw-r--r--internal/server/ui/views/search/search.go8L
-rw-r--r--internal/server/ui/views/search/search.templ37L
-rw-r--r--internal/server/ui/views/song/song.css25L
-rw-r--r--internal/server/ui/views/song/song.go7L
-rw-r--r--internal/server/ui/views/song/song.templ80L
-rwxr-xr-xscripts/build-assets.sh32L
-rw-r--r--static/minimal.css269L
-rw-r--r--static/static.go18L
-rw-r--r--static/vendor/alpine.min.js5L
-rw-r--r--static/vendor/htmx.min.js1L
-rw-r--r--static/vendor/lucide.min.js12L
-rw-r--r--tasks/add_ability_to_edit_song.txt2L
-rw-r--r--tasks/done/add_ability_to_edit_artist.txt2L
-rw-r--r--tasks/done/add_release_types.txt10L
-rw-r--r--tasks/done/add_search_bar.txt2L
-rw-r--r--tasks/done/edit_release_does_not_fetch_similar_releases.txt2L
-rw-r--r--tasks/done/order_songs_via_input_type_number.txt2L
-rw-r--r--tasks/done/style_and_improve_ux_for_new_artist_form.txt4L
-rw-r--r--tasks/done/style_and_improve_ux_for_new_song_form.txt4L
-rw-r--r--tasks/pull_artist_metadata_from_musicbrainz.txt7L