Overview
MYMUSICK features a fully responsive design that adapts seamlessly to different screen sizes. The layout transforms from a desktop experience with a fixed sidebar to a mobile-friendly single-column layout.CSS Variables
The design system uses CSS custom properties for consistent theming:estilooriginal.css:11-16
CSS variables enable consistent color usage across components and make theme customization easy.
Color Palette
Primary
#04CDA8 - Teal/cyan used for header and footer backgrounds
Accent
#FF5757 - Coral red used for borders, buttons, and highlights
Background
#111 - Near-black used for sidebar and card backgrounds
Viewport Configuration
The HTML includes proper viewport settings for mobile devices:index.html:6
Breakpoint System
MYMUSICK uses a single breakpoint for mobile devices:estilooriginal.css:293
Why 600px?
- Covers most smartphones in portrait mode
- Below this width, the sidebar becomes impractical
- Standard breakpoint for mobile-first responsive design
Common Device Widths
Common Device Widths
- iPhone SE: 375px
- iPhone 12/13/14: 390px
- iPhone 12/13/14 Pro Max: 428px
- Small Android phones: 360px
- Large Android phones: 412px
- Tablets (portrait): 768px+
Desktop Layout
Header Design
The desktop header uses flexbox for horizontal alignment:estilooriginal.css:37-45
Fixed Sidebar
The sidebar is positioned fixed on the left side:estilooriginal.css:106-120
The sidebar is fixed from
top: 150px (below header) to bottom: 0, creating a full-height navigation panel.Main Content Area
The results container has a left margin to account for the sidebar:estilooriginal.css:162-163
Mobile Adaptations
The responsive design makes several key changes for screens ≤600px:1. Header Transformation
estilooriginal.css:295-299
- Layout: Switches from row to column (
flex-direction: column) - Spacing: Adds 15px gap between elements
- Padding: Uniform 20px padding on all sides
Desktop vs Mobile Header
Desktop vs Mobile Header
Desktop Layout:Mobile Layout:
2. Sidebar Removal
estilooriginal.css:301-303
- Navigation links become less practical on small screens
- More vertical space needed for scrollable content
- Prevents overcrowding of the interface
3. Full-Width Results
estilooriginal.css:305-308
- Margin: Removes left margin (no sidebar to account for)
- Padding: Reduces padding from 20px to 10px for more content space
4. Scaled Title
estilooriginal.css:310-312
5. Responsive Search Input
estilooriginal.css:314-317
- Takes full available width
- Capped at 300px maximum
- No width change on focus (already at max)
6. Player Layout Reflow
estilooriginal.css:319-322
7. Scaled Now Playing Text
estilooriginal.css:324-326
Flexible Components
Song Cards
Song cards adapt naturally without specific media queries:estilooriginal.css:190-202
Using
min-width instead of fixed width allows cards to maintain consistent sizing across devices while being scrollable horizontally.Image Aspect Ratio
estilooriginal.css:210-215
width: 100%makes images responsive to container sizeaspect-ratio: 1/1ensures perfect squares regardless of original image dimensionsobject-fit: coverprevents distortion
Scroll Behavior
Horizontal Scrolling
The results container uses modern CSS scroll features:estilooriginal.css:162-172
Scroll Snap Points
estilooriginal.css:200
Scroll Snap Behavior
Scroll Snap Behavior
x mandatory: Horizontal snapping that always snaps to a pointstart: Cards snap when their left edge reaches the container’s left edge- Benefit: Prevents cards from being cut off mid-scroll
Custom Scrollbar
The horizontal scrollbar is styled for better aesthetics:estilooriginal.css:174-185
The scrollbar uses the accent color (
#FF5757) for the thumb, maintaining visual consistency with the design system.Transition Animations
Smooth transitions enhance the responsive experience:Search Input Expansion
estilooriginal.css:77
Button Hover Effects
estilooriginal.css:94
Song Card Animations
estilooriginal.css:201
Sidebar Link Hover
estilooriginal.css:129,145
Typography Scaling
Desktop Sizes
- Title: 40px (Gyanko font)
- Intro Text: 25px (Gyanko font)
- Now Playing: 18px (Segoe UI)
- Search Input: 16px
- Button Text: 16px
- Song Title: 14px
- Song Artist: 12px
Mobile Adjustments
- Title: 28px (↓30%)
- Now Playing: 14px (↓22%)
Flexbox Architecture
MYMUSICK uses flexbox extensively for responsive layouts:Header
display: flex with justify-content: space-aroundSidebar
flex-direction: column for vertical navigationResults
display: flex with horizontal overflow scrollingPlayer
Centered flex container with gap spacing
Best Practices Implemented
Testing Recommendations
Devices to Test
Devices to Test
- Mobile: iPhone SE (375px), iPhone 14 (390px), Galaxy S21 (360px)
- Tablet: iPad (768px), iPad Pro (1024px)
- Desktop: 1920×1080, 1366×768
- Ultra-wide: 2560×1440
Related Features
Music Search
See how the search interface adapts to mobile layouts
YouTube Player
Learn how player controls reflow on small screens
