ระบบการค้นหาและคำแนะนำเพลงนี้มีฟังก์ชั่นที่แตกต่างกันในการค้นหาระหว่างเพลงและศิลปินและรับคำแนะนำตามประเภท แอปพลิเคชันนี้มีวัตถุประสงค์หลักสำหรับผู้ใช้ส่วนตัวที่ต้องการค้นพบเพลงและศิลปินใหม่ตามความชอบของพวกเขา อย่างไรก็ตามบริการนี้สามารถใช้กับวัตถุประสงค์ของการโฆษณาได้ ตัวอย่างเช่น Web-App เชิงพาณิชย์ภายนอก (เช่น บริษัท บริหารอุตสาหกรรมดนตรี) สามารถรวมบริการที่จัดทำโดยระบบนี้เพื่อวิเคราะห์สิ่งที่ผู้คนชอบมากที่สุดและเปลี่ยนกลยุทธ์ของพวกเขาตาม
SQLite ใช้ในการจัดเก็บข้อมูล ข้อมูลสามารถพบได้ในโฟลเดอร์ DB (Python SQLITE3) โครงการถูกสร้างขึ้นโดยใช้ Python; แบ็กเอนด์ขึ้นอยู่กับกรอบการทำงานของขวด
ในการเรียกใช้โครงการ (ทั้งไคลเอนต์และเซิร์ฟเวอร์) จากโฟลเดอร์หลัก ( Path/ MusicFinder/ ) มันเพียงพอที่จะเรียกใช้คำสั่ง:
python musicfinder.py
เมื่อเซิร์ฟเวอร์เริ่มต้นข้อความบันทึก "ทำงานบน http: // localhost: 5000" จะปรากฏขึ้นและมันจะเป็นไปได้ที่จะโต้ตอบกับหน้าเว็บที่ URL ต่อไปนี้:
http: // localhost: 5000/musicfinder_admin/ui.html
เพื่อทดสอบฐานข้อมูล API สำหรับทรัพยากรศิลปินให้ใช้คำสั่งต่อไปนี้จากโฟลเดอร์หลัก
python -m test.database_api_tests_artists
ในการทดสอบฐานข้อมูล API สำหรับทรัพยากรเพลงใช้คำสั่งต่อไปนี้จากโฟลเดอร์หลัก:
python -m test.database_api_tests_songs
ในการทดสอบฐานข้อมูล API สำหรับทรัพยากรของผู้ใช้ให้ใช้คำสั่งต่อไปนี้จากโฟลเดอร์หลัก:
python -m test.database_api_tests_user
ในการทดสอบ API ที่เหลือผู้ใช้ใช้คำสั่งต่อไปนี้จากโฟลเดอร์หลัก:
python -m test.musicfinder_api_tests
GUI ใช้ห้องสมุด jQuery (v 1.11.2) ซึ่งสามารถพบได้ในโฟลเดอร์ MusicFinder/MusicFinder_Admin/Static/ GUI ใช้เฟรมเวิร์ก bootstrap (v 3.3.4) ที่อยู่ในโฟลเดอร์ MusicFinder/MusicFinder_Admin/Static/Bootstrap (โฟลเดอร์มีฟังก์ชัน CSS, Fonts และ JavaScript ในโฟลเดอร์ย่อยสัมพัทธ์) Unittest ใช้สำหรับการทดสอบ
entrypoint =/musicfinder/api/
ศิลปิน =/MusicFinder/API/ศิลปิน/
ศิลปิน =/musicfinder/api/artists/ artist_name /
เพลง =/musicfinder/api/artists/ artist_name /songs/
song =/musicfinder/api/artists/ artist_name /songs/ song_title
ผู้ใช้ =/MusicFinder/API/ผู้ใช้/
user =/musicfinder/api/users/ user_name /
user_playlists =/musicfinder/api/users/ user_name /playlists/
playlist =/musicfinder/api/users/ user_name /playlist/ playlist_title /
playlist_songs =/musicfinder/api/users/ user_name /playlist/ playlist_title /songs/