Melodify is a next-generation music player app that combines stunning visual design with powerful audio features. Built with SwiftUI and MVVM architecture, it delivers a fluid, immersive music experience with its 3D carousel interface, glassmorphic design elements, and smart playback capabilities.
- 3D Album Carousel: Swipe, tap, or use controls to browse albums with fluid 3D animations
- Immersive Full-screen Player: Dynamic album art rotation that responds to playback state
- Background Playback Support: Keep the music going while using other apps
- Comprehensive Playback Controls:
- Play/Pause with smooth transitions
- Previous/Next track navigation
- 10-second rewind for revisiting favorite moments
- Smart shuffle algorithm that prioritizes fresh content
- Real-time Progress Tracking: Visualize your position in the current track
- Mini-player: Access controls without interrupting your browsing experience
- Glassmorphic Interface: Stunning translucent elements with depth effects
- Dynamic Animations: Fluid transitions and responsive UI elements
- Adaptive Layout: Beautiful experience across all iOS devices and orientations
- Dark Mode Optimized: Designed for low-light environments
- Powerful Search: Find tracks, artists, and albums instantly
- Trending Section: Discover popular music through the Deezer API
- Responsive Results: Fast-loading content with elegant loading states
Melodify.Live.Demo.mov
Melodify is engineered with modern best practices and follows a clean MVVM architecture:
Melodify/
├── Core/ # Core application logic
│ ├── Models/ # Data structures
│ ├── Services/ # Network and audio services
│ └── ViewModels/ # Business logic and state management
├── Features/ # Feature-specific views
│ ├── Home/ # Home screen experience
│ └── Player/ # Playback interface
├── UI/ # Reusable UI components
│ └── Components/ # Custom UI controls
└── Resources/ # Assets and supporting files
- Swift Concurrency: Uses async/await for efficient network operations
- Combine Framework: Reactive data binding for UI updates
- AVFoundation: Professional audio handling with precise control
- SwiftUI Animations: GPU-accelerated animations for fluid experience
- Clean API Integration: Structured network layer with Deezer API
- iOS: 16.0 or later
- Xcode: 14.0 or later
- Swift: 5.5 or later
- Device: Compatible with iPhone and iPad
- Deezer API: Powers music discovery and streaming
- SF Symbols: Used for consistent iconography
- Clone this repository
git clone https://github.com/yourusername/Melodify.git
- Open
Melodify.xcodeprojin Xcode - Select your target device or simulator
- Build and run (⌘+R)
- Browse through the album carousel by swiping left or right
- Tap on an album to select and play it
- Use the navigation dots below the carousel for quick access
- Access full player by tapping on the mini-player
- Tap the search bar at the top
- Enter artist, album, or track name
- Browse and play from search results
- Use the central play/pause button for playback control
- Swipe down to minimize to mini-player
- Use rewind button to go back 10 seconds
- Tap shuffle to enable smart shuffle mode
Melodify is designed for extensibility. Here are some areas for potential enhancement:
- Offline Caching: Add persistent storage for offline playback
- User Playlists: Enable custom playlist creation and management
- Social Sharing: Implement music sharing capabilities
- Audio Effects: Add equalizer and audio enhancement features
- Cross-device Sync: Enable continuity across user's devices
Contributions are welcome and appreciated! Here's how you can contribute:
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
Please ensure your code follows the project's coding standards and includes appropriate tests.
- User accounts and personalization
- Offline mode with download management
- Enhanced visualizations and animations
- CarPlay integration
- Siri shortcuts support
- Apple Watch companion app
For questions, suggestions, or support requests, please:
- Open an issue in this repository
- Contact the maintainer at sakshamshrey@gmail.com
