diff --git a/README.md b/README.md
index f600daa..4c3ffa0 100644
--- a/README.md
+++ b/README.md
@@ -13,4 +13,15 @@
cd detox && ./install.sh
detox -h
+#### linuxwave
+
+[Original repository & credits to the author](https://github.com/orhun/linuxwave/)
+
+- Version 0.1.5
+
+*produces arbitrary audio from entropy*
+
+ cd linuxwave && sudo install linuxwave /usr/local/bin/
+ linuxwave --help
+
diff --git a/linuxwave/CHANGELOG.md b/linuxwave/CHANGELOG.md
new file mode 100644
index 0000000..5cae69e
--- /dev/null
+++ b/linuxwave/CHANGELOG.md
@@ -0,0 +1,130 @@
+# Changelog π§π΅
+
+All notable changes to this project will be documented in this file.
+
+## [0.1.5] - 2023-07-21
+
+### π Documentation
+
+- *(readme)* Add Spotify link
+- *(readme)* Update table of contents
+
+### βοΈ Miscellaneous Tasks
+
+- *(deps)* Bump actions/upload-pages-artifact from 1 to 2
+
+## [0.1.4] - 2023-06-29
+
+### π Refactor
+
+- *(build)* Use Builder's fmt function to avoid using allocator
+- *(build)* Use built-in allocator
+
+### π Documentation
+
+- *(readme)* Add installation instruction for Void Linux
+- *(readme)* Simplify the Docker command
+
+## [0.1.3] - 2023-04-19
+
+### π΅ Features
+
+- *(cd)* Publish the signed source code which includes submodules
+
+### π Documentation
+
+- *(readme)* Add stdout playback example
+
+### βοΈ Miscellaneous Tasks
+
+- *(ci)* Use Zig 0.10.1 for CI/CD
+
+## [0.1.2] - 2023-04-17
+
+### π Bug Fixes
+
+- *(docker)* Scan the correct docker image
+
+### π Documentation
+
+- *(preset)* Add the "spooky_manor" preset
+
+### βοΈ Miscellaneous Tasks
+
+- *(deps)* Bump actions/configure-pages from 1 to 3
+- *(deps)* Bump actions/deploy-pages from 1 to 2
+
+## [0.1.1] - 2023-04-17
+
+### π Documentation
+
+- *(readme)* Add submodule update step for building from source
+- *(readme)* Add installation instructions for Arch Linux
+
+## [0.1.0] - 2023-04-17
+
+### π΅ Features
+
+- *(docs)* Add a man page
+
+### π Refactor
+
+- *(ci)* Remove unnecessary node options
+
+### π Documentation
+
+- *(readme)* Add demo link
+- *(readme)* Add motivation section
+- *(website)* Add demo link to website
+
+### π¨ Styling
+
+- *(readme)* Set the alignment to center for demo link
+- *(readme)* Center the demo text
+
+## [0.1.0-rc.4] - 2023-04-15
+
+### π΅ Features
+
+- *(website)* Add a landing page
+
+### π Refactor
+
+- *(ci)* Remove unnecessary OS from build matrixes
+- *(lib)* Extract reusable modules as packages
+
+### π Documentation
+
+- *(lib)* Support auto-generation of documentation with a build flag
+- *(readme)* Mention the API documentation
+- *(readme)* Add documentation build badge
+
+### π¨ Styling
+
+- *(readme)* Use HTML for the badges
+- *(readme)* Fix centering the badges
+- *(readme)* Center the badges
+
+### βοΈ Miscellaneous Tasks
+
+- *(ci)* Fix the grammar for the build job
+- *(pages)* Rename deploy step
+- *(pages)* Add workflow for deploying documentation
+
+## [0.1.0-rc.3] - 2023-04-15
+
+### π Bug Fixes
+
+- *(cd)* Use windows specific commands
+
+### βοΈ Miscellaneous Tasks
+
+- *(changelog)* Remove author names from changelog
+
+## [0.1.0-rc.2] - 2023-04-15
+
+### π΅ Features
+
+- *(cd)* Add different build targets
+
+
diff --git a/linuxwave/LICENSE b/linuxwave/LICENSE
new file mode 100644
index 0000000..39dcb83
--- /dev/null
+++ b/linuxwave/LICENSE
@@ -0,0 +1,19 @@
+Copyright (c) 2023 Orhun ParmaksΔ±z
+
+Permission is hereby granted, free of charge, to any person obtaining a
+copy of this software and associated documentation files (the "Software"),
+to deal in the Software without restriction, including without limitation
+the rights to use, copy, modify, merge, publish, distribute, sublicense,
+and/or sell copies of the Software, and to permit persons to whom the
+Software is furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+DEALINGS IN THE SOFTWARE.
diff --git a/linuxwave/README.md b/linuxwave/README.md
new file mode 100644
index 0000000..3b9c808
--- /dev/null
+++ b/linuxwave/README.md
@@ -0,0 +1,326 @@
+# `linuxwave` π§π΅
+
+
+
+
+
+
+
+
+
+
+
+
+Click here to watch the demo!
+Listen to "linuxwave" on Spotify!
+
+
+
+
+
+ Table of Contents
+
+
+
+- [Motivation β¨](#motivation-)
+- [Installation π€](#installation-)
+ - [Build from source](#build-from-source)
+ - [Prerequisites](#prerequisites)
+ - [Instructions](#instructions)
+ - [Binary releases](#binary-releases)
+ - [Arch Linux](#arch-linux)
+ - [Void Linux](#void-linux)
+ - [Docker](#docker)
+ - [Images](#images)
+ - [Usage](#usage)
+ - [Building](#building)
+- [Examples π΅](#examples-)
+- [Presets πΉ](#presets-)
+- [Usage π](#usage-)
+ - [`scale`](#scale)
+ - [`note`](#note)
+ - [`rate`](#rate)
+ - [`channels`](#channels)
+ - [`format`](#format)
+ - [`volume`](#volume)
+ - [`duration`](#duration)
+ - [`input`](#input)
+ - [`output`](#output)
+- [Funding π](#funding-)
+- [Contributing π±](#contributing-)
+- [License βοΈ](#license-)
+- [Copyright βοΈ](#copyright-)
+
+
+
+
+
+## Motivation β¨
+
+- [Bash One Liner - Compose Music From Entropy in /dev/urandom](https://web.archive.org/web/20230122184930/https://blog.robertelder.org/bash-one-liner-compose-music/)
+ - ['Music' from /dev/urandom](https://news.ycombinator.com/item?id=11238247)
+
+## Installation π€
+
+### Build from source
+
+#### Prerequisites
+
+- [Zig](https://ziglang.org/download/) (`0.10.1`)
+
+#### Instructions
+
+1. Clone the repository.
+
+```sh
+git clone https://github.com/orhun/linuxwave && cd linuxwave/
+```
+
+2. Update git submodules.
+
+```sh
+git submodule update --init --recursive
+```
+
+3. Build.
+
+```sh
+zig build -Drelease-safe
+```
+
+Binary will be located at `zig-out/bin/linuxwave`. You can also run the binary directly via `zig build run`.
+
+If you want to use `linuxwave` in your Zig project as a package, the API documentation is available [here](https://orhun.dev/linuxwave/docs).
+
+### Binary releases
+
+See the available binaries for different targets from the [releases page](https://github.com/orhun/linuxwave/releases). They are automated via [Continuous Deployment](.github/workflows/cd.yml) workflow.
+
+Release tarballs are signed with the following PGP key: [0xC0701E98290D90B8](https://keyserver.ubuntu.com/pks/lookup?search=0xC0701E98290D90B8&op=vindex)
+
+### Arch Linux
+
+`linuxwave` can be installed from the [community repository](https://archlinux.org/packages/community/x86_64/linuxwave/) using [pacman](https://wiki.archlinux.org/title/Pacman):
+
+```sh
+pacman -S linuxwave
+```
+
+### Void Linux
+
+`linuxwave` can be installed from official Void Linux package repository:
+
+```sh
+xbps-install linuxwave
+```
+
+### Docker
+
+#### Images
+
+Docker builds are [automated](./.github/workflows/docker.yml) and images are available in the following registries:
+
+- [Docker Hub](https://hub.docker.com/r/orhunp/linuxwave)
+- [GitHub Container Registry](https://github.com/orhun/linuxwave/pkgs/container/linuxwave)
+
+#### Usage
+
+The following command can be used to generate `output.wav` in the current working directory:
+
+```sh
+docker run --rm -v "$(pwd)":/app "orhunp/linuxwave:${TAG:-latest}"
+```
+
+#### Building
+
+Custom Docker images can be built from the [Dockerfile](./Dockerfile):
+
+```sh
+docker build -t linuxwave .
+```
+
+## Examples π΅
+
+**Default**: Read random data from `/dev/urandom` to generate a 20-second music composition in the A4 scale and save it to `output.wav`:
+
+```sh
+linuxwave
+```
+
+Or play it directly with [mpv](https://mpv.io/) without saving:
+
+```sh
+linuxwave -o - | mpv -
+```
+
+To use the A minor blues scale:
+
+```sh
+linuxwave -s 0,3,5,6,7,10 -n 220 -o blues.wav
+```
+
+Read from an arbitrary file and turn it into a 10-second music composition in the C major scale:
+
+```sh
+linuxwave -i build.zig -n 261.63 -d 10 -o music.wav
+```
+
+Read from stdin via giving `-` as input:
+
+```sh
+cat README.md | linuxwave -i -
+```
+
+Write to stdout via giving `-` as output:
+
+```
+linuxwave -o - > output.wav
+```
+
+## Presets πΉ
+
+Generate a **calming music** with a sample rate of 2000 Hz and a 32-bit little-endian signed integer format:
+
+```sh
+linuxwave -r 2000 -f S32_LE -o calm.wav
+```
+
+Generate a **chiptune music** with a sample rate of 44100 Hz, stereo (2-channel) output and 8-bit unsigned integer format:
+
+```sh
+linuxwave -r 44100 -f U8 -c 2 -o chiptune.wav
+```
+
+Generate a **boss stage music** with the volume of 65:
+
+```sh
+linuxwave -s 0,7,1 -n 60 -v 65 -o boss.wav
+```
+
+Generate a **spooky low-fidelity music** with a sample rate of 1000 Hz, 4-channel output:
+
+```sh
+linuxwave -s 0,1,5,3 -n 100 -r 1000 -v 55 -c 4 -o spooky_manor.wav
+```
+
+Feel free to [submit a pull request](CONTRIBUTING.md) to show off your preset here!
+
+Also, see [this discussion](https://github.com/orhun/linuxwave/discussions/1) for browsing the music generated by our community.
+
+## Usage π
+
+```
+Options:
+ -s, --scale Sets the musical scale [default: 0,2,3,5,7,8,10,12]
+ -n, --note Sets the frequency of the note [default: 440 (A4)]
+ -r, --rate Sets the sample rate [default: 24000]
+ -c, --channels Sets the number of channels [default: 1]
+ -f, --format Sets the sample format [default: S16_LE]
+ -v, --volume Sets the volume (0-100) [default: 50]
+ -d, --duration Sets the duration [default: 20]
+ -i, --input Sets the input file [default: /dev/urandom]
+ -o, --output Sets the output file [default: output.wav]
+ -V, --version Display version information.
+ -h, --help Display this help and exit.
+```
+
+### `scale`
+
+Sets the musical scale for the output. It takes a list of [semitones](https://en.wikipedia.org/wiki/Semitone) separated by commas as its argument.
+
+The default value is `0,2,3,5,7,8,10,12`, which represents a major scale starting from C.
+
+Here are other examples:
+
+- A natural minor scale: `0,2,3,5,7,8,10`
+- A pentatonic scale starting from G: `7,9,10,12,14`
+- A blues scale starting from D: `2,3,4,6,7,10`
+- An octatonic scale starting from F#: `6,7,9,10,12,13,15,16`
+- Ryukyuan (Okinawa) Japanese scale: `4,5,7,11`
+
+### `note`
+
+The `note` option sets the frequency of the note played. It takes a frequency in Hz as its argument.
+
+The default value is `440`, which represents A4. You can see the frequencies of musical notes [here](https://pages.mtu.edu/~suits/notefreqs.html).
+
+Other examples would be:
+
+- A3 (220 Hz)
+- C4 (261.63 Hz)
+- G4 (392 Hz)
+- A4 (440 Hz) (default)
+- E5 (659.26 Hz)
+
+### `rate`
+
+Sets the sample rate for the output in Hertz (Hz).
+
+The default value is `24000`.
+
+### `channels`
+
+Sets the number of audio channels in the output file. It takes an integer as its argument, representing the number of audio channels to generate. The default value is `1`, indicating mono audio.
+
+For stereo audio, set the value to `2`. For multi-channel audio, specify the desired number of channels.
+
+Note that the more audio channels you use, the larger the resulting file size will be.
+
+### `format`
+
+Sets the sample format for the output file. It takes a string representation of the format as its argument.
+
+The default value is `S16_LE`, which represents 16-bit little-endian signed integer.
+
+Possible values are:
+
+- `U8`: Unsigned 8-bit.
+- `S16_LE`: Signed 16-bit little-endian.
+- `S24_LE`: Signed 24-bit little-endian.
+- `S32_LE`: Signed 32-bit little-endian.
+
+### `volume`
+
+Sets the volume of the output file as a percentage from 0 to 100.
+
+The default value is `50`.
+
+### `duration`
+
+Sets the duration of the output file in seconds. It takes a float as its argument.
+
+The default value is `20` seconds.
+
+### `input`
+
+Sets the input file for the music generation. It takes a filename as its argument.
+
+The default value is `/dev/urandom`, which generates random data.
+
+You can provide _any_ type of file for this argument and it will generate music based on the contents of that file.
+
+### `output`
+
+Sets the output file. It takes a filename as its argument.
+
+The default value is `output.wav`.
+
+## Funding π
+
+If you find `linuxwave` and/or other projects on my [GitHub profile](https://github.com/orhun) useful, consider supporting me on [GitHub Sponsors](https://github.com/sponsors/orhun) or [becoming a patron](https://www.patreon.com/join/orhunp)!
+
+[](https://github.com/sponsors/orhun)
+[](https://patreon.com/join/orhunp)
+[](https://patreon.com/join/orhunp)
+
+## Contributing π±
+
+See our [Contribution Guide](./CONTRIBUTING.md) and please follow the [Code of Conduct](./CODE_OF_CONDUCT.md) in all your interactions with the project.
+
+## License βοΈ
+
+Licensed under [The MIT License](./LICENSE).
+
+## Copyright βοΈ
+
+Copyright Β© 2023, [Orhun ParmaksΔ±z](mailto:orhunparmaksiz@gmail.com)
diff --git a/linuxwave/linuxwave b/linuxwave/linuxwave
new file mode 100755
index 0000000..54d5e19
Binary files /dev/null and b/linuxwave/linuxwave differ
diff --git a/linuxwave/man/linuxwave.1 b/linuxwave/man/linuxwave.1
new file mode 100644
index 0000000..cfdb4f1
--- /dev/null
+++ b/linuxwave/man/linuxwave.1
@@ -0,0 +1,52 @@
+.\" Manpage for linuxwave.
+.TH linuxwave "1" "April 2023" "linuxwave" "User Commands"
+.SH NAME
+linuxwave \- generate music from the entropy of Linux
+.SH SYNOPSIS
+.B linuxwave
+[options]
+.SH DESCRIPTION
+linuxwave generates music compositions from the input data. The default input is /dev/urandom
+.SH OPTIONS
+.TP
+\fB\-s\fR, \fB\-\-scale\fR
+Sets the musical scale [default: 0,2,3,5,7,8,10,12]
+.TP
+\fB\-n\fR, \fB\-\-note\fR
+Sets the frequency of the note [default: 440 (A4)]
+.TP
+\fB\-r\fR, \fB\-\-rate\fR
+Sets the sample rate [default: 24000]
+.TP
+\fB\-c\fR, \fB\-\-channels\fR
+Sets the number of channels [default: 1]
+.TP
+\fB\-f\fR, \fB\-\-format\fR
+Sets the sample format [default: S16_LE]
+.TP
+\fB\-v\fR, \fB\-\-volume\fR
+Sets the volume (0\-100) [default: 50]
+.TP
+\fB\-d\fR, \fB\-\-duration\fR
+Sets the duration [default: 20]
+.TP
+\fB\-i\fR, \fB\-\-input\fR
+Sets the input file [default: /dev/urandom]
+.TP
+\fB\-o\fR, \fB\-\-output\fR
+Sets the output file [default: output.wav]
+.TP
+\fB\-V\fR, \fB\-\-version\fR
+Display version information.
+.TP
+\fB\-h\fR, \fB\-\-help\fR
+Display this help and exit.
+.SH BUGS
+No known bugs.
+Use "Issues" page for reporting bugs:
+.SH AUTHOR
+Written by Orhun ParmaksΔ±z
+.SH COPYRIGHT
+Copyright Β© 2023 Orhun ParmaksΔ±z
+.P
+The MIT License
diff --git a/linuxwave/output.wav b/linuxwave/output.wav
new file mode 100644
index 0000000..2e23f2c
Binary files /dev/null and b/linuxwave/output.wav differ