Skip to content

moazamtech/Remixify

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Remixify Banner

🎡 Remixify

Transform Your Music with Professional Studio Effects

Next.js TypeScript Tailwind CSS Web Audio API

β€’ Report Bug β€’ Request Feature


🌟 Overview

Remixify is a powerful, browser-based audio studio that lets you transform your favorite tracks with professional-grade effects. Built with Next.js and the Web Audio API, it delivers a premium Spotify-inspired experience with real-time audio processingβ€”no server required!

✨ Key Features

  • 🎚️ Slowed + Reverb - Create atmospheric, dreamy lo-fi vibes
  • ⚑ Nightcore Mode - Speed up tracks for high-energy remixes
  • πŸ”Š Bass Booster - Add powerful sub-bass (Β±20dB range)
  • 🎼 Pitch Control - Shift pitch Β±12 semitones with lock option
  • 🌊 Advanced Reverb - Customizable decay and mix controls
  • πŸ“Š Real-time Waveform - Visual feedback with interactive scrubbing
  • 🎹 Multi-Track Support - Upload and manage multiple songs
  • ⌨️ Keyboard Controls - Spacebar to play/pause
  • πŸ“± Fully Responsive - Works on desktop, tablet, and mobile
  • πŸ’Ύ Export Options - Download as WAV or MP3

🎨 UI Design

Remixify features a premium Spotify-inspired dark theme with:

  • Glassmorphism effects
  • Smooth animations and transitions
  • Progressive blur on scroll
  • Live audio visualizations
  • Intuitive drag-and-drop interface

πŸš€ Quick Start

Prerequisites

  • Node.js 18+ and npm/yarn/pnpm
  • Modern browser with Web Audio API support

Installation

# Clone the repository
git clone https://github.com/moazamtech/Remixify.git

# Navigate to project directory
cd Remixify

# Install dependencies
npm install
# or
yarn install
# or
pnpm install

# Run development server
npm run dev
# or
yarn dev
# or
pnpm dev

Open http://localhost:3000 in your browser to see the app.


πŸ“ Project Structure

Remixify/
β”œβ”€β”€ app/                      # Next.js app directory
β”‚   β”œβ”€β”€ layout.tsx           # Root layout
β”‚   β”œβ”€β”€ page.tsx             # Home page
β”‚   └── globals.css          # Global styles
β”œβ”€β”€ components/
β”‚   β”œβ”€β”€ audio-converter.tsx  # Main audio processing component
β”‚   β”œβ”€β”€ download-modal.tsx   # Export modal
β”‚   β”œβ”€β”€ processing-modal.tsx # Upload progress modal
β”‚   β”œβ”€β”€ layout/
β”‚   β”‚   β”œβ”€β”€ sidebar.tsx      # Track library sidebar
β”‚   β”‚   └── player-bar.tsx   # Bottom playback controls
β”‚   β”œβ”€β”€ elevenlabs/
β”‚   β”‚   β”œβ”€β”€ waveform.tsx     # Audio waveform visualizer
β”‚   β”‚   └── matrix.tsx       # VU meter visualization
β”‚   └── ui/                  # Shadcn UI components
β”œβ”€β”€ lib/
β”‚   β”œβ”€β”€ audio-processor.ts   # Web Audio API processing logic
β”‚   └── utils.ts             # Utility functions
β”œβ”€β”€ public/
β”‚   β”œβ”€β”€ og.png              # Open Graph image
β”‚   └── logo.jpg            # App logo
└── README.md

πŸŽ›οΈ How It Works

Audio Processing Pipeline

  1. Upload - Files are decoded using Web Audio API
  2. Processing - Effects are applied in real-time:
    Source β†’ Bass Filter β†’ Dry/Wet Gain β†’ Reverb β†’ Master Gain β†’ Output
    
  3. Playback - Processed audio plays with visual feedback
  4. Export - Offline rendering creates downloadable files

Effect Chain

// Bass Booster (Low-shelf filter at 200Hz)
bassFilter.type = "lowshelf";
bassFilter.gain.value = settings.bassGain; // -10 to +20 dB

// Reverb (Convolver with custom impulse response)
reverb.buffer = generateImpulseResponse(decay, duration);

// Tempo & Pitch (Playback rate manipulation)
source.playbackRate.value = tempo * Math.pow(2, pitch / 12);

🎹 Usage Guide

Basic Workflow

  1. Upload Audio - Click the upload zone or drag & drop files
  2. Select Preset - Choose "Slowed + Reverb" or "Nightcore"
  3. Fine-tune - Adjust tempo, pitch, reverb, and bass
  4. Play - Click play or press Spacebar
  5. Export - Download your remix as WAV or MP3

Keyboard Shortcuts

Key Action
Space Play/Pause
↑ Increase volume
↓ Decrease volume

πŸ› οΈ Tech Stack


🎯 Features in Detail

🎚️ Slowed + Reverb

Perfect for creating lo-fi, chill vibes:

  • Tempo: 0.85x (customizable 0.5x - 2.0x)
  • Pitch: -2 semitones
  • Reverb: 40% mix, 3s decay
  • Bass: +5dB boost

⚑ Nightcore

High-energy, fast-paced remixes:

  • Tempo: 1.25x
  • Pitch: +4 semitones
  • Reverb: 10% mix, 1s decay
  • Bass: +2dB boost

πŸ”Š Bass Booster

Professional low-end enhancement:

  • Frequency: 200Hz (low-shelf)
  • Range: -10dB to +20dB
  • Real-time adjustment
  • Visual dB indicator

πŸ“± Responsive Design

Remixify is fully responsive across all devices:

  • Desktop (1024px+): Full sidebar, 3-column grid layout
  • Tablet (768px - 1023px): Collapsible sidebar, 2-column grid
  • Mobile (< 768px): Slide-in sidebar, single column, touch-optimized

🀝 Contributing

Contributions are welcome! Please follow these steps:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/AmazingFeature)
  3. Commit your changes (git commit -m 'Add some AmazingFeature')
  4. Push to the branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

πŸ“ License

This project is licensed under the MIT License - see the LICENSE file for details.


πŸ™ Acknowledgments

  • Inspired by Spotify's premium dark UI
  • Built with the amazing Shadcn UI component library
  • Audio processing powered by the Web Audio API
  • Special thanks to the Next.js and React communities

πŸ“§ Contact

Moazam Butt - @moazamtech

Project Link: https://github.com/moazamtech/Remixify


⭐ Star this repo if you found it helpful!

Made with ❀️ by moazamtech

About

Make Music slowed reverb bass boosted and editing controls on top of spotify ui

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published