Music Library using JavaScript and Parse.com for Teamwork @ SoftUni
Requirements:
• Use JavaScript, jQuery and AJAX – the major part of your work should be JavaScript written by your team o Front-end: use HTML5, CSS3 to create the content and to style your Web application o Back-end: use REST API from Parse.com / other BaaS provider / your own back-end REST service o Focus on the front-end, which should be written in JavaScript • Work in team – all team members should contribute o Use GitHub or other source control system as project collaboration platform o Each team member should have commits in 5 different days • Publish your project live in Internet – your project should be public in Internet o You may share your project to get external feedback o Most shared and commented projects will get additional bonus score • Valid and high-quality JavaScript, jQuery, AJAX, HTML and CSS o Follow the best practices for JavaScript Application development. Structure your code well o Validate (when possible) your HTML (http://validator.w3.org) and CSS code (http://css-validator.org) o Follow the best practices for high-quality JavaScript, jQuery, HTML and CSS • Usability, UX and browser support o Your web application should be easy-to-use, with intuitive UI, with good usability o Ensure your Web application works correctly in the latest HTML5-compatible browsers: Chrome, Firefox, IE, Opera, Safari (latest versions, desktop and mobile versions) o You do not need to support old browsers like IE9 • Write unit tests o You web application should be well tested o You can use Mocha and Chai testing frameworks
Required functionalities:
• View all playlists / genres / songs (optionally with paging). • Listening to songs online. Downloading songs. • Creating new playlist. • Uploading songs (validating file size and type). • Adding comments to songs and playlists. • Implement playlists' and songs' ranking system. Show the most highly ranked playlists in a special section at the main page. Optional functionalities: • Implement user registration. • Functionality for searching / filtering by playlist name / song name / genre. • Admin panel (if registration is implemented): add / edit /delete songs, playlists, genres, comments