feature/add-genius #5

Merged
iratusmachina merged 4 commits from feature/add-genius into main 2024-04-24 17:05:06 +00:00
1 changed files with 24 additions and 3 deletions
Showing only changes of commit f7bc845cf3 - Show all commits

View File

@ -1,10 +1,31 @@
# Lyricdownloader
This program is used to download lyrics for a song from the internet. The steps of operation are shown here:
This program is used to download lyrics for a song from the internet. There are two modes of operation:
1. It first opens a chrome window, searches for the lyrics , and copies the lyrics returned by Google Search to a file defined by you.
2. It then tries to get search for the same song using the Genius API. It then tries to compare the lyrics with the Genius one.
(a) Scraping from google: This does not run in headless mode as Google does not show the lyrics in headless mode. So the program has to first open a chrome window, searches for the lyrics, and copies the lyrics returned by Google Search to a file defined by you.
(b) Retrieving the lyrics using the Genius API.
## Caveats
This program requires chrome to use, that is, you should have chrome installed to use this program.
## TODOs
- [x] ~~Refactor internal folder to this structure.~~ Simplify package structure.
```sh
internal
| - usegenius.go # where you go all the genius processing
| - usegoogle.go # where you do all the google processing
| - cmdline.go # Where you initialize config and use flags
```
- [x] Setup the config file in its own config.go file
- [x] Specific the doc for `go doc` in the doc.go file. To see the generated
documentation, run `go doc lyricdownloader`
- [ ] Research how to view `go doc` locally
- [x] Fix generate_notes.py to fix generation of CHANGELOG.md
- [ ] Add a demo heading in README.md
- [ ] Sync over to Github
- [ ] Add podman/Docker instructions
- [ ] Add goreleaser