diff --git a/README.md b/README.md
index 523d550..27c9941 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,5 @@
-

+

# KeyVibe
@@ -43,41 +43,43 @@ KeyVibe listens to your keyboard events and plays high‑quality switch sounds w
- libevdev-dev
- libudev-d
-## 🛠️ Build
+## 🚀 Installation
+
+### Arch Linux
```bash
-make -j$(nproc)
+yay -S keyvibe-git
+```
+
+### 🛠️ Build From Source
+
+```bash
+git clone https://github.com/S4NKALP/KeyVibe.git
+cd KeyVibe
+make
sudo make install
```
## 💡 Usage
-```bash
-./keyvibe --list # List available sound packs (system + user)
+ Usage: keyvibe [OPTIONS]
-./keyvibe # Run with defaults
+ Options:
+ -S, --sound SOUND_NAME Select sound pack (default: eg-oreo)
+ -V, --volume VOLUME Set volume [0-100] (default: 50)
+ -c --override-config Use CLI values for this run
+ -d --daemon Run as a background daemon
+ -s --stop Stop the background daemon
+ -m --mute Mute sound
+ -u --unmute Unmute sound
+ -l, --list List available sound packs
+ -h, --help Show this help message
+ -v, --verbose Enable verbose output
-./keyvibe -c -s `sound_pack` -V 60 # Select pack and volume, override persisted config for this run
+Notes:
-./keyvibe --daemon # Background daemon mode
-
-./keyvibe --stop # Stop daemon
-
-```
-
-> config file will be create at `$HOME` as `.keyvibe.json`
-
-```
-
-Flags:
-
-- `-s, --sound
`: sound pack name
-- `-V, --volume <0-100>`: volume percent
-- `-c, --override-config`: use CLI values for this run
-- `-l, --list`: list sound packs
-- `--daemon | --stop | --reload`
-- `-v, --verbose`
-```
+- First run creates `~/.keyvibe.json`. Subsequent runs use it unless `-c` is supplied.
+- In daemon mode, editing `~/.keyvibe.json` will automatically reload.
## 🎵 Sound Packs
@@ -97,81 +99,6 @@ Resolution order when selecting `-s `:
List shows `(user)` or `(system)` source next to each pack.
-### config.json structure (custom packs)
-
-KeyVibe supports two modes via `key_define_type`: `single` and `multi`.
-
-- `single`: one long audio file; per-key plays a segment `[start_ms, duration_ms]`.
-- `multi`: separate audio files; per-key maps to its own press/release files; also supports a set of generic press sounds and a generic release.
-
-Minimal schemas and examples:
-
-```json
-// Single mode (one audio file, sliced by key)
-{
- "key_define_type": "single",
- "sound": "purple.ogg", // relative to the pack dir
- "defines": {
- "30": [120, 80], // key_code 30: start_ms=120, duration_ms=80
- "48": [300, 100]
- }
-}
-```
-
-```json
-// Multi mode (separate files, optional generic patterns)
-{
- "key_define_type": "multi",
- // Generic press sound(s): can be one file, a printf-like pattern, or a {0-4} pattern
- // Examples:
- // "GENERIC.mp3"
- // "GENERIC_R%d.mp3" // expands R0..R4 if files exist
- // "GENERIC_R{0-4}.mp3" // also expands to R0..R4
- "sound": "GENERIC_R{0-4}.mp3",
-
- // Optional generic release sound
- "soundup": "release/GENERIC.mp3",
-
- // Per-key overrides (key codes from libinput/libevdev)
- // For release-specific files, append "-up" to the key code string
- "defines": {
- "57": "press/SPACE.mp3", // SPACE press
- "57-up": "release/SPACE.mp3", // SPACE release
- "28": "press/ENTER.mp3",
- "14": "press/BACKSPACE.mp3"
- }
-}
-```
-
-Notes:
-
-- All paths in `config.json` are relative to the sound pack directory.
-- In multi mode, if a key press isn’t mapped, a random generic press file is chosen if provided.
-- In multi mode, if a key release isn’t mapped, `soundup` is used if provided.
-- In single mode, only presses are played; releases are ignored.
-
-## Available Sound Packs:
-
-- nk-cream
-- cherrymx-black-abs
-- cherrymx-red-pbt
-- cherrymx-blue-abs
-- eg-oreo
-- cherrymx-brown-pbt
-- eg-crystal-purple
-- cherrymx-brown-abs
-- topre-purple-hybrid-pbt
-- cream-travel
-- holy-pandas
-- mxbrown-travel
-- cherrymx-red-abs
-- mxblack-travel
-- cherrymx-black-pbt
-- turquoise
-- cherrymx-blue-pbt
-- mxblue-travel
-- banana-split-lubed
-
## 🤝 Contributing
PRs welcome. Please keep code modular and readable, and prefer small, focused changes.
diff --git a/assets/logo.png b/assets/logo.png
new file mode 100644
index 0000000..89d9361
Binary files /dev/null and b/assets/logo.png differ
diff --git a/assets/sample-logo-470x235.png b/assets/sample-logo-470x235.png
deleted file mode 100644
index 27c186f..0000000
Binary files a/assets/sample-logo-470x235.png and /dev/null differ