EE599 Applied and Cloud Computing Initial Project Proposal ©(To the music) April 9,2021 1 Project Title Music Ranking, Comment and Streaming Platform 2 Team Members Jiatong Li, Lizhen Huang, Zijun Qiao 3 Summary and Description In this project, we propose to build a platform for all music lovers to rank, comment, and listen to the music they love. Users can search a song through its name and other details. On the music profile page, users can see the information automatically get from the third-party database or upload and update information by filling in a designed form after sign in. Each song can be commented on, scored, and played. The information generated by our users will be stored in the AWS Aurora database. 4 Proposed Architecture Our project will consist of a front-end web application, a backend web server, and resources to generate tag clouds and to get music data. We will create the backend server in Node.js and use Amazon RDS to store data. Users will interact with the API through a front-end client (web page). We expect the app to include at least the following web pages. We will generate these pages as a combination of static assets and dynamic content using Vue/ HTML5. Home search bar and word clouds about 10 hottest songs, use logo to go back home page EE599 - ©(To the music) - Spring 2021 2 About Provide additional information about the project(static) Music profile page 1. Search bar hanging at the top of page EE599 - ©(To the music) - Spring 2021 3 2. Details about the song Artist name(performed by;written by;produced by), album(song belongs to), genre , source(publish company),publish time, available platform 3. Ranking block: A system represented by stars.(lyrics,melody,singer,MV,others). 4. Comment block: show comments,it can change page. 5. Lyrics block: If the third-party database contains lyrics, it will be displayed synchronously when the song is played 6.Music manager : hanging at the bottom of page. Enable users to listen to audio on the site without allowing direct download. It may include: play/stop button;previous button;next button;shuffle play button;expand button to show the queue;volume bar; progress bar;small picture of song and its name. 7.Sign-up or login Other functions ( According to time and technical difficulty, try to improve ) : Upload music source by users ( Easier to upload only URL ) Guess you like ( Music recommendation ) We will use Amazon RDS to store user-generate data, like reviews and ratings about music. These data will be binded to specific songs using a unique key for each song. The application is able to take some queries from the user like search, and our backend server will act like a proxy server to ask data from public RESTful APIs, and then process it and append some existing data in our database supported by Amazon RDS before sending according data back to the client side page and display to the user. Our application construction EE599 - ©(To the music) - Spring 2021 4 5 Data sources and Additional APIs Our system will ask specific music data from public music databases like the following: Soundcloud: https://developers.soundcloud.com/docs Discogs: https://www.discogs.com TheAudioDB: https://www.theaudiodb.com Some data about music reviews and ratings in our application will be generated by users. 6 References https://github.com/Krryxa/Lily_music https://rapidapi.com/blog/top-free-music-data-apis/ https://cloud.tencent.com/developer/article/1453267 7 Estimated Compute Needs We will create a new private VPC in the AWS cloud. We anticipate a single t2.small server will suffice. Our own data will be stored with Amazon RDS, since our own are plain text data, our application will be good with free tier. We don't anticipate any unusual hardware or computing needs. 8. Team Roles The following is the rough breakdown of roles and responsibilities we plan for our team: Jiatong Li : Backend server design and API. Primary: Process and answer queries from the client and manipulate data in the database. Secondary: assist with some layout elements. Zijun Qiao : Primary: HTML page design and overall appearance. Secondary: coordinate the API integration between Jiatong and Lizhen. Lizhen Huang : Client UX and UI. Primary: Carry out web design and front-end development, and strive to achieve various functions. Secondary: assist with design and styling. All team members will work on testing different web browsers in the Windows system and Apple system, the final presentation, slides, and report.
欢迎咨询51作业君