lowfi/README.md
2024-10-07 14:40:39 +02:00

86 lines
2.0 KiB
Markdown

# lowfi
lowfi is a tiny rust app that serves a single purpose: play lofi.
It'll do this as simply as it can: no albums, no ads, just lofi.
![example image](media/example1.png)
## Disclaimer
**All** of the audio files played in lowfi are from [Lofi Girl's](https://lofigirl.com/) website,
under their [licensing guidelines](https://form.lofigirl.com/CommercialLicense).
If god forbid you're planning to use this in a commercial setting, please
follow their rules.
## Why?
I really hate modern music platforms, and I wanted a small, "suckless"
app that would literally just play lofi without video so I could use it
whenever.
I also wanted it to be fairly resiliant to inconsistent networks,
so it buffers 5 whole songs at a time instead of parts of the same song.
Although, lowfi is yet to be properly tested in difficult conditions,
so don't rely on it too much until I do that. See [Scraping](#scraping) if
you're interested in downloading the tracks. Beware, there's a lot of them.
## Installing
You'll need Rust 1.74.0+.
If you're on linux, you also need the OpenSSL & Alsa headers.
Alsa can be installed with `alsa-lib` on Arch or `libasound2-dev` on Ubuntu.
### Cargo
The recommended installation method is to use cargo:
```sh
cargo install lowfi
```
and making sure `$HOME/.cargo/bin` is added to `$PATH`.
### AUR
If you're on Arch, you can also use the AUR:
```sh
yay -S lowfi
```
### Manual
```sh
git clone https://github.com/talwat/lowfi
cd lowfi
cargo build --release
./target/release/lowfi
```
## Usage
`lowfi`
Yeah, that's it. Controls are documented in the app.
### Extra Flags
If you have something you'd like to tweak about lowfi, you can run `lowfi help`
to view the available options.
### Scraping
lowfi also has a `scrape` command which is usually not relevant, but
if you're trying to download some files from Lofi Girls' website,
it can be useful.
An example of scrape is as follows,
`lowfi scrape --extension zip --include-full`
where more information can be found by running `lowfi help scrape`.