Aether — A music player for Windows, written in Rust
Sources The program Skin Studio Limits Docs
Installation Star on GitHub
Music player for Windows, written in Rust Rust · Tauri

A music player for Windows, written in Rust.

Aether plays the audio files already present on the disk. Starting from a playlist — exported from a Spotify archive, read from an M3U file or given as a link — it compares the tracks against the local library and retrieves the missing ones from the free-access catalogues: Internet Archive and Audius. Since 2.4.0 those catalogues can also be searched directly, a phrase at a time, from Explore, and a track found there can be listened to without ever being written to disk. Every track acquired keeps the licence of the source it came from. Tracks unavailable in any free catalogue are collected in a purchase list, with links to the shops that pay the authors.

Installation Star on GitHub FedericoBaratti/Aether
Version 3.0.0 · Windows · in developmentFLAC ALAC WAV AIFF MP3 AAC OGG OPUSEach track keeps the licence of its source
Aether
Albums935
Tracks1 465
Artists
Folders
Favourites
Settings
Playlists
Late shift
Vinyl rips 2019
Kitchen, loud
Ambient, long
Scan complete
1 465 tracks · 41 min ago
Library
Tracks
1 465 · 4 d 2 h
#TitleAlbumTime
{{ r.n }}
{{ r.t }}
{{ r.a }}
{{ r.al }}
{{ r.d }}
Weird Fishes / Arpeggi
Radiohead · In Rainbows
3:125:18
Up next
All I Need
Radiohead
Faust Arp
Radiohead

The screens on this page are a reproduction of the interface. The figures are those of the library used for the screenshots in the README: 935 albums, 1 465 tracks.

{{ m.t }}
01 — Overview

The files already present on the disk, and the catalogues that allow a copy.

{{ p.t }}

{{ p.b }}

02 — Where the music comes from

Six sources. Each one declares what it holds and whether a local copy is permitted.

SourceContentsLocal copy
{{ s.n }}
{{ s.c }}
{{ s.l }}
Audius: three distinct permissions

On Audius the permission is determined by the artist for each individual track. There are three distinct controls: the download switch and two gates, which can make access conditional on following the artist or on holding a token. Aether checks all three and considers permission granted only in the absence of prohibitions.

Jamendo: implemented, disabled

The module is implemented and covered by tests, but disabled in this version. The cause is not technical: the API is free for non-commercial uses only, and the terms define commercial use as «any monetary compensation». The module is already arranged for streaming playback alone — the terms prohibit caching and offline access — through aether-net::FlussoHttp, which plays a track without writing it to disk.

What no free source covers

No free-access source distributes the commercial catalogue. This is not a technical limit that can be worked around: it is the reason other programs carry out operations not permitted by the terms of the services they use. Aether covers what it can through lawful channels and, for the rest of the catalogue, indicates where to buy it.

Excluded sources

{{ e.t }}

{{ e.b }}

03 — The interface
Library Now playing Artists
{{ c.t }}

{{ c.b }}

{{ pt.t }}
Aether
Search…/
Albums
Tracks
Artists
Favourites
Albums
935 · sorted by date added
{{ c.t }}
{{ c.a }}
Now playing
Weird Fishes / Arpeggi
Radiohead · In Rainbows · 2007
FLAC 24/96 2 341 kbps Gapless
3:125:18
Spectrum analyser
The samples are taken after the equaliser and before the volume control: changes to the equalisation curve are visible in the bars, changes to the volume are not.
Artists
{{ ar.t }}
{{ ar.al }}
{{ ar.tr }}
Radiohead
9 albums · 118 tracks · 8 h 12 m
Albums
No biography, no similar-artist grid. Every figure on this screen is counted from the tags of the local files; nothing is downloaded in order to draw it.
04 — Personalisation

A skin redefines 101 components. It is not an alternation between a light theme and a dark one.

A skin is a validated data document, not a stylesheet: 73 tokens, 101 named parts, 12 effects with a declared cost and, since 3.0.0, motion on any part — ten states, five triggers, keyframes, and loops the compiler itself stops under reduced motion. The program parses it, reports its warnings and compiles it to deterministic CSS.

skin.json midnight.aeskin
valid
loading…
Token registry
73 tokens · 21 required
{{ t.k }}
Contrast and cost, computed before export
text.2 on bg 7.1:1
text.3 on bg 4.6:1
accent on ink 8.4:1
Effect budget 4 / 10
{{ p.n }}
{{ p.t }}

{{ p.b }}

05 — The format

A skin document cannot break the program: the format does not permit it.

0
{{ s.t }}
{{ s.b }}
06 — Known limits and planned work

What does not exist yet, and for what reason.

Two questions require a written clarification before publication: whether donations constitute commercial use for the purposes of Jamendo's terms, and of the Deezer API used for metadata. In the absence of an answer the Jamendo module stays behind a Cargo feature that can be switched off.

{{ p.n }} 0%
{{ p.s }}{{ p.d }}

Known limits

{{ l.t }}

{{ l.b }}

Windows — implementation order

13 items · 9 done · 1 in progress · 3 to go
{{ r.n }} {{ r.s }}
{{ r.t }}

Version 3.0.0, for Windows, unsigned.

The installer for Windows is available among the assets of the latest release: an NSIS executable. It is not signed with a code-signing certificate, so SmartScreen blocks its execution on first launch: «More info», then «Run anyway». The reasons for the absence of the signature are stated among the known limits.

Download 3.0.0 for Windows

The changes introduced by each version are listed in CHANGELOG.md. Migrations are not reversible, so every release that migrates the database names its migrations in its own entry and says what going back would cost: a copy of the database taken before the update.

What 3.0.0 changes

Released 13 October 2026 · three database migrations
{{ r.t }}
Read the full changelog
Reports and proposals

The program is released and still under development. Reports of failures and proposals for what it should do next are received at the same address. The procedure for reporting vulnerabilities is in SECURITY.md.

barattifederico@gmail.com
Free, and it stays free

There is no paid version and none is planned: two of the integrated sources, the Live Music Archive and Jamendo, are subject to non-commercial clauses that a paid version would violate. The constraint is stated explicitly in the terms of use.

Support the development