Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/shreyazh/shrudio
My OwnAudio App
https://github.com/shreyazh/shrudio
Last synced: 22 days ago
JSON representation
My OwnAudio App
- Host: GitHub
- URL: https://github.com/shreyazh/shrudio
- Owner: shreyazh
- License: apache-2.0
- Created: 2024-12-15T08:49:59.000Z (about 2 months ago)
- Default Branch: main
- Last Pushed: 2024-12-15T09:28:59.000Z (about 2 months ago)
- Last Synced: 2024-12-15T09:31:07.981Z (about 2 months ago)
- Language: TypeScript
- Size: 0 Bytes
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# [π΅ Shrudio: Your Ultimate Audio Lab](https://shrudio-by-shreyash.vercel.app/)
**Author: Shreyash Srivastva**
## Shrudio is your all-in-one audio tool: play music, generate melodies, create sound effects, and tune instrumentsβall in a sleek, intuitive interface powered by the Web Audio API. πΆβ¨
## Inspiration
Shrudio was inspired by the desire to create an all-in-one audio tool that allows musicians, creators, and sound enthusiasts to generate, play, and experiment with different audio features in a seamless environment. We wanted to bring together the power of music creation, sound effects, and real-time pitch detection into one platform.---
## π Features
- **Music Player**
- Upload and play local audio files.
- Seek through tracks, adjust volume, and control playback.- **Music Generator**
- Generate melodies using customizable parameters (scale, tempo, octave, and instrument).- **Sound Effects**
- Play various effects like laser, explosion, power-up, and more.- **Tuner**
- Tune your instrument with real-time pitch and note detection using your microphone.---
## π Getting Started
1. Clone the repository:
```bash
git clone https://github.com/shreyazh/shrudio.git
```2. Install dependencies:
```bash
npm install
```3. Start the development server:
```bash
npm run dev
```4. Open the app in your browser at `http://localhost:3000`.
---
## π οΈ Technologies Used
- **Frontend:** React, TypeScript
- **Audio API:** Web Audio API
- **UI Components:** Tailwind CSS---
## π€ How It Works
1. **Music Player:**
Upload an audio file to play. Use intuitive controls for seeking and adjusting volume.2. **Music Generator:**
Select a scale, tempo, and instrument to generate unique melodies.3. **Sound Effects:**
Instantly play sound effects with predefined settings.4. **Tuner:**
Use your microphone to detect pitch and tune instruments with ease.---
## What it does
Shrudio is a versatile audio application offering four main features:
- **Music Player**: Upload and play local audio files with intuitive controls.
- **Music Generator**: Create melodies by customizing scale, tempo, octave, and instrument.
- **Sound Effects**: Play a variety of sound effects like laser, explosion, and power-up instantly.
- **Tuner**: Tune your instrument in real-time using your microphone for pitch and note detection.---
## How we built it
Shrudio was developed using:
- **Frontend**: React and TypeScript to create a dynamic and responsive interface.
- **Audio API**: The Web Audio API powers all audio functionalities, enabling sound manipulation and real-time tuning.
- **UI Components**: Tailwind CSS was used to build a clean and minimalist design that provides a smooth user experience.---
## Challenges we ran into
- Integrating real-time audio manipulation with the Web Audio API required deep understanding and careful implementation to ensure a seamless user experience.
- Handling various audio formats in the music player and ensuring compatibility across devices posed some challenges.
- Fine-tuning the pitch detection algorithm for the tuner was tricky, but we managed to get it working accurately.---
## Accomplishments that we're proud of
- Successfully integrating multiple audio features into one platform, allowing users to seamlessly generate, play, and explore sounds.
- Creating an easy-to-use and aesthetically pleasing interface that enhances user experience.
- Building a functional real-time pitch tuner that works across a variety of instruments.---
## What we learned
- The Web Audio API is incredibly powerful but requires careful management of resources for smooth performance.
- Tailwind CSS significantly streamlines UI development, enabling rapid design iteration without sacrificing quality.
- Fine-tuning real-time features like pitch detection can be more complex than expected, but itβs immensely rewarding when it works.---
## What's next for Shrudio
- Implementing additional sound effects and audio manipulation tools.
- Adding a cloud sync feature for music files, enabling users to access their audio library across devices.
- Enhancing the music generator with more customizable features, like advanced harmony and rhythm options.
- Expanding the tuner to support more instruments and provide additional tuning modes.---
## π€ Contributing
Feel free to open issues or submit pull requests for any features or improvements you'd like to add.
---
## π License
This project is licensed under the MIT License.
---