The basic idea is to have people sing karokie based on populare songs and save the acting/performance on a central server (NOT included in this task). The user sings the songs using either mircophone and/or a webcam. After the singer has accepted the submitted song, other users can give their vote on the song - ranging from 1 to 5.
Besides the ability to vote for song, it shall also be possible to vote for a winner in "head to head" mode - meaning that first the user listens to one song, then to same song from another artits, and after that the user decideds which of the two songs that should win.
It shall be possible to add a singer to a favorite-list.
It shall be possible to add a comment to a user submitted song.
It shall be tracked how many times a song is played.
The users shall be able to create a simple "Profile page" with functionality to upload a personal foto, make a short personal description, show the list of added favorites, list avarage rating, etc.
The user shall be allowed to search for specific songs and generes on all the pages.
Please note, the component that actually shows the karokie texts record and playback the song is NOT part of this project!
The site shall be made in plain ASP
The site shall use MySQL
Votings shall be made with AJAX
Adding a singer as a favorite shall be with AJAX
All Comments are stored with a Unique ID and a reference to a SubmittedSong ID
All SubmittedSongs are stored with a Unique ID and a reference to a SongID and a UserID
All Favorites are stored with a unique ID and a reference to a FromUserID and ToUserID
All UserIDs are stored with a unique ID
All SongIDs are stored a unique ID and a reference to a GenreID
All GenerIDs are stored with a unique ID
Voting DB layout is for you to decide what is best to fulfill below Top100 requirements.
It shall be possible for the user to create, edit and delete an account, only 5 pieces of information is needed on the create new user page: Alias, Password, Email, Gender and Age.
It shall be possible to create, edit and delete a personal profile page.
Based on the votings/submissions/tracking following Top100 lists shall be updated in the database: Top100 newst added songs, Top100 most played songs, Top100 Most popular singers, Top100 Least popular singers, Top100 highest voted singer, Top100 lowest voted singer, Top100 most voted singer, Top100 most viewed singers last hour, Top100 most singers last day, Top100 most popular songs, Top100 most popular genre, Top100 most favorited singers, Top100 winners in Head2Head, Top100 loosers in Head2Head
* Frontpage - NOT included, we will make this our self primarily based on the Top100 stats.
1 Create new user account
2 Edit user account
3 Delete user account (with a confirmation message)
4 Login Page (login with Email and password)
5 Head2Head page (where the system randomly matches two of the same song based on the selected Genre - and let the user decide who is best)
6 Plain Listen page (where the user listens to submitted songs and can do the voting - it shall be possible for the user to hear more songs from the same submitter and more songs from the same category)
7 view profile page (see above for more details about content on this page)
8 Create profile page
9 Edit profile page
10 Delete profile page (with a confirmation message)
Following is NOT included in the project:
The component that records and playback the songs/videos
All graphical work
The Database design
All the Songs and Genres