{"id":20190316,"url":"https://github.com/rob-med/musicfinder","last_synced_at":"2025-04-10T09:29:16.956Z","repository":{"id":90873571,"uuid":"50728622","full_name":"rob-med/MusicFinder","owner":"rob-med","description":"Music Finder is a service that allows users to create and browse playlists via REST APIs.","archived":false,"fork":false,"pushed_at":"2018-02-22T14:20:30.000Z","size":680,"stargazers_count":6,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-24T08:21:23.368Z","etag":null,"topics":["flask","gui","playlist","python","rest-api","restful","songs","web-app"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rob-med.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-01-30T14:42:11.000Z","updated_at":"2021-11-10T11:56:06.000Z","dependencies_parsed_at":"2023-04-18T03:04:50.301Z","dependency_job_id":null,"html_url":"https://github.com/rob-med/MusicFinder","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rob-med%2FMusicFinder","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rob-med%2FMusicFinder/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rob-med%2FMusicFinder/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rob-med%2FMusicFinder/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rob-med","download_url":"https://codeload.github.com/rob-med/MusicFinder/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248191325,"owners_count":21062480,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["flask","gui","playlist","python","rest-api","restful","songs","web-app"],"created_at":"2024-11-14T03:42:32.132Z","updated_at":"2025-04-10T09:29:16.947Z","avatar_url":"https://github.com/rob-med.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Music Finder\n\nThis Music Search \u0026 Recommendation system offers different functionalities to search among songs and artists and get recommendations based on genre.\nThis application is mainly aimed for private users, who wish to discover new songs and artists, according to their preferences. However this service could be also used with the purpose of advertisement. For example, some external commercial web-app (e.g. music-industry executive companies) could integrate the service provided by this system, to analyze what people like most, and change their strategies accordingly.\n\n## Installation\n\nSQLite is used to store data. The data can be found in the folder _db_ ([Python sqlite3](http://docs.python.org/2/library/sqlite3.html)).\nThe project has been built using Python; the backend relies on the [Flask-RESTful framework](http://flask-restful.readthedocs.org/en/latest/quickstart.html).\n\n\n## Getting started\n\nTo run the project (both client and server), from the main folder (_path/musicfinder/_), it's sufficient to run the command:\n\n\u003e python musicfinder.py\n\nOnce the server has started, the log message \"Running on http://localhost:5000\" will appear, and it will be possible to interact with the web-page at the following URL: \n\n\u003e http://localhost:5000/musicfinder_admin/ui.html\n\n## Testing the code\n\nTo test the database API for the artists resource use the following command from the main folder\n\n\u003e python -m test.database_api_tests_artists\n\nTo test the database API for the songs resource use the following command from the main folder: \n\n\u003e python -m test.database_api_tests_songs\n\nTo test the database API for the user's resource use the following command from the main folder: \n\n\u003e python -m test.database_api_tests_user\n\nTo test the user REST-ful API use the following command from the main folder: \n\n\u003e python -m test.musicfinder_api_tests\n\n## External dependencies\n\nThe GUI uses the library JQuery (v 1.11.2), that can be found in the folder _musicfinder/musicfinder_admin/static/_.\nThe GUI uses the framework Bootstrap (v 3.3.4) located in the folder _musicfinder/musicfinder_admin/static/bootstrap_ (the folder contains the css, fonts and javascript functions in the relative sub-folders).\n[_unittest_](http://docs.python.org/2/library/unittest.html) was used for testing .\n\n## RESTful API endpoints\n\n- **ENTRYPOINT** = /musicfinder/api/\n\n- **Artists** = /musicfinder/api/artists/\n\n- **Artist** = /musicfinder/api/artists/_artist_name_/\n\n- **Songs** = /musicfinder/api/artists/_artist_name_/songs/\n\n- **Song** = /musicfinder/api/artists/_artist_name_/songs/_song_title_\n\n- **Users** = /musicfinder/api/users/\n\n- **User** = /musicfinder/api/users/_user_name_/\n\n- **User_playlists** = /musicfinder/api/users/_user_name_/playlists/\n\n- **Playlist** = /musicfinder/api/users/_user_name_/playlists/_playlist_title_/\n\n- **Playlist_songs** = /musicfinder/api/users/_user_name_/playlists/_playlist_title_/songs/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frob-med%2Fmusicfinder","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frob-med%2Fmusicfinder","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frob-med%2Fmusicfinder/lists"}