diff --git a/README.md b/README.md
index a5d33ad..a8e642f 100644
--- a/README.md
+++ b/README.md
@@ -1,2 +1,137 @@
-# waveboard
-A simple cross-platform soundboard
+This is a rewrite of the old [waveboard](https://github.com/x07x08/waveboard_go) project to make it cross-platform
+and easier to work with for the end-user.
+
+The application is now a command line interface with a web UI.
+
+Tested on Fedora 40 and Windows 10. Unsure about Mac support.
+
+# Installation
+
+1. Get a [binary](https://github.com/x07x08/waveboard/releases) or preferably compile one yourself
+2. Put the [`src/web`](https://github.com/x07x08/waveboard/tree/main/src/web) folder in the same directory as the binary
+
+# Features
+
+* Global keyboard hotkeys / shortcuts for sounds
+* In-memory playback
+* Source Engine chat commands
+* Whitelist and blacklist
+* Audio queue
+* Video downloader and converter
+* Text-To-Speech using [`SAPI`](https://learn.microsoft.com/en-us/previous-versions/windows/desktop/ms720592(v=vs.85)) on Windows
+* A barebones [JavaScript API](https://github.com/x07x08/waveboard/blob/a1e42206e7b4476b106a7ab0d544d91c0b422a61/src/web/index.html#L531)
+* Supported formats : .ogg (opus and vorbis), .mp3, .wav, .flac
+
+# Screenshots
+
+
+
+
+
+
+ Log tab
+
+ |
+
+
+
+ Audio tab
+
+ |
+
+
+
+
+
+ Downloader tab
+
+ |
+
+
+
+ Log watch tab
+
+ |
+
+
+
+
+
+ Queue tab
+
+ |
+
+
+
+ Text-To-Speech tab
+
+ |
+
+
+
+
+
+ Settings tab
+
+ |
+
+
+
+# Requirements
+
+1. A virtual audio cable ([`Virtual-Audio-Cable`](https://vac.muzychenko.net) or [`VB-Audio Cable`](https://vb-audio.com/Cable/))
+ - Follow [this](https://www.youtube.com/watch?v=fi5I6bzy2f8), [the text](https://github.com/fuck-shithub/STARK#how-to-set-up) tutorial or find another tutorial to install the drivers.
+ - You may need to disable ["Driver Signature Enforcement"](https://www.youtube.com/watch?v=71YAIw7_-kg) during the installation process.
+
+2. An audio directory (it is searched recursively)
+ - It will be used by the program to play tracks and download videos.
+
+3. *Optional* A log file within your Source Engine game using the [`con_logfile `](https://developer.valvesoftware.com/wiki/List_of_console_scripting_commands) command or the [`-condebug`](https://developer.valvesoftware.com/wiki/Command_line_options) launch option
+ - This is for the log watching feature, which allows interaction with the application using the game's chat.
+ - You can use an `autoexec.cfg` file for easier management.
+
+4. *Optional* [yt-dlp](https://github.com/yt-dlp/yt-dlp) and [ffmpeg](https://www.ffmpeg.org/download.html) binaries for video downloading and conversion
+
+ The yt-dlp binary needs to be named "ytdl" or "ytdl.exe"
+
+# Compiling
+
+You will need :
+
+* [Zig](https://github.com/ziglang/zig)
+
+
+ -
+ Windows :
+
+ -
+ Nothing else
+
+
+
+
+ -
+ Linux :
+
+ -
+ Check build.zig for the required dependencies
+
+
+
+# Credits and libraries
+
+* [STARK](https://github.com/axynos/STARK) - I've used it for a long time, but it is half broken and uses the disk to write raw audio data.
+
+---
+
+* [miniaudio](https://github.com/mackron/miniaudio)
+* [libuiohook](https://github.com/kwhat/libuiohook) - evdev branch
+* [nfd-extended](https://github.com/btzy/nativefiledialog-extended)
+* [ogg-container](https://github.com/xiph/ogg)
+* [opus](https://github.com/xiph/opus) and [opusfile](https://github.com/xiph/opusfile)
+* [vorbis](https://github.com/nothings/stb/tree/master)
+
+---
+
+* [webui](https://github.com/webui-dev/zig-webui)
+* [regex](https://github.com/tiehuis/zig-regex)