# L Y R I C S 2 Find and read your favourite songs' lyrics by (part of the) text, Autor and title or by listening to your song! [Get it on F-Droid](https://f-droid.org/packages/it.zitzusoft.lyrics_2/) or download latest F-Droid version from [here](https://github.com/f-leoni/lyrics2/releases/download/v1.0.25_fdroid/app-release.apk) # PROJECT DESCRIPTION This project is a Flutter exercise but it's a complete app and it leverages some flutter features such as: * Multiple Providers * Multiple Routers * Full Localization # THIRD PARTY LIBRARIES Lyrics uses some third party libraries such as: * provider - for state management * smooth_page_indicator - For Onboarding screen navigation * xml2json - for XML to JSON conversion * logger - for logging * sqflite - for database management * flutter_acrcloud - For sound recognition * flutter_icons - For app icons generation * package_info_plus - To show build information * sqlbrite - Local database * firebase_core - For Firebase usage * cloud_firestore - For cloud storage * firebase_auth - For authentication * genius_api_unofficial - Genius Lyrics API * beautiful_soup_dart - Web scraping * font_awesome_flutter - Icons collection # FEATURES LIST ## TODO: * (feature) Search, pagination and ordering for favorites page * (fix) Create an id (hash?) independent from which service has been used to find lyric (at the moment the numeric ID is used, which is specific for each service) * ... ## DONE * (feature) Database repository 2022/11/04 * (fix) Fix sound recognition * (feature) Implement show build infos * (feature) Implement graphics theme (dark and light) * (feature) swipe to delete favorite * (feature) Implement Users Registration, Login and profile management via Firebase * (fix) Use different graphic elements based on active theme * (feature) Implement Genius Proxy * (fix) Double onboarding? ## REVISION HISTORY 1.0.0 Build 1 - First version ... 1.0.2 Build 2 - Autosearch while typing # COMMANDS ## GENERATE LOCALIZATION FILES flutter gen-l10n ## GENERATE ICONS flutter pub run flutter_launcher_icons:main ## GENERATE BUNDLE flutter build appbundle ## GENERATE APK flutter build apk flutter build apk --release ## CLEAN PROJECT flutter clean ## CONNECT TO DB > adb -s emulator-5554 shell > > run-as it.zitzusoft.lyrics_2 > > cd /data/user/0/it.zitzusoft.lyrics_2/app_flutter/ > > sqlite3 lyrics.db > > > .tables View tables list > > > .schema favorites describe table favorites > > > .schema settings describe table settings