# Adding Play-Only Mode in MusicBlocks ## Objective This is a proposal to introduce **"Play-Only Mode"** in MusicBlocks—an adaptive feature to be responsive with an optimal user experience, especially on small screen-size devices. This mode will facilitate usability by turning the interface into an easy playback mode when the screen sizes are below certain measured dimensions. ## Problem Statement MusicBlocks presently offers a fully featured interface allowing users to edit and create their music. Yet, on any smaller screen, the interface starts to feel cramped. This can have a negative effect on usability and reduce the overall effectiveness of the platform. ## Significance of Play-Only Mode It would be vital for ensuring MusicBlocks stays open and works across many different devices, even if their screens are really small. Adapting to a small screen size would become crucial while evolving the platform in such a way that doesn't leave people behind who might need a mobile device for creative activities. In the long run, the less complex interface lets the user stay on playback and exploration, thereby allowing a smooth experience with much more enjoyment. Moreover , in India and other similar countries, the majority of the population is largely dependent on mobile phones for daily work, entertainment, and educational purposes. Therefore, users will not always have laptops or tablets; thus, a mobile-friendly design is important. MusicBlocks can then provide for this massive group by including a play-only mode so that even with a small screen, the interface is still accessible and easy to use. This functionality is particularly critical for empowering users in such regions to engage with MusicBlocks seamlessly without the frustration of navigating a cluttered interface. ## Proposed Solution To address this issue, we propose implementing a responsive **"Play-Only Mode."** When the screen resolution falls below a threshold of **768px width** or **500-600px height**, the system will automatically switch to this mode. The play-only mode will: 1. **Hide editing tools and palettes** to make the interface less cluttered. 2. **Remove the auxiliary menu** that is found in the top-right corner. 3. Move the **language selection menu** from the auxiliary menu to the main menu bar. 4. Only display necessary playback controls (such as Play, Stop, Pause). ## Functional Workflow ### 1. Screen Size Detection The system is always on the lookout for the screen dimensions. - If the width is less than **768px** or the height is less than **600px**, it triggers the play-only mode. ### 2. **Transition to Play-Only Mode** - The palette on the left-hand side is hidden. - Auxiliary menu options (top-right) are removed. - The language selection dropdown is moved to the main menu bar. - Only play controls are left accessible, which are aligned centrally for easy accessibility. ### 3. Revert to Full Feature Mode In case the screen size is beyond the threshold, then the interface would revert back to full-feature mode automatically by re-enabling all the tools and options used for editing. ![image](https://hackmd.io/_uploads/H1aOTpmw1e.png) ## Design Considerations - The interface will maintain a touch-friendly design so that all the buttons and controls are of sufficient size to be easily accessible even on smaller screens. - **Consistency**: The transition between modes will be seamless to maintain a professional user experience. - **Performance**: The mode detection and interface adjustments will be lightweight to avoid performance issues. ## **Mockup Overview** A detailed mockup showcases: 1. The interface on a full screen (16-inch laptop) with all editing tools. 2. The play-only mode on a smaller screen (768px width, 500-600px height), highlighting the simplified layout with playback controls and language selection. ## **Implementation Plan** 1. **Frontend Development**: - Implement CSS media queries and JavaScript for dynamic screen size detection. - Create a play-only layout using responsive design principles. 2. **Testing**: - Test it thoroughly on a range of devices: mobile phones, tablets, laptops. - Validate usability of play-only mode on touchscreens. --- **In Full feature Mode:** ![image](https://hackmd.io/_uploads/rJuAX07PJg.png) --- **In Play Only Mode:** ![image](https://hackmd.io/_uploads/Bkd740XP1e.png) I have made most of the changes only partial changes in the navbar is left which will be completed soon. ## **Benefits** - **Improved User Experience**: This improves usability for the user on a smaller screen as it provides a clean, focused interface. - **Wider Accessibility**: It makes MusicBlocks more accessible on a range of devices, including smartphones. - **Simplification**: It reduces the complexity of the interface for casual users who only need playback functionality. ## **Conclusion** A play-only mode for MusicBlocks will greatly enhance the usability and accessibility of the platform on smaller devices. The simplified interface with the focus on essential functionality will give a seamless experience to users, thus making MusicBlocks a versatile tool for all screen sizes. ### **Prepared By**: Justin Charles ### **Github**: [justin212407](https://github.com/justin212407) ### **Mail**: charlesjustin2124@gmail.com