Compiling
v3 is written in Rust. Most people are better off with a prebuilt release; build from source to work on Spicetify itself, or to run it on a platform with no published build.
Requirements
Build
git clone https://github.com/spicetify/clicd clipnpm installpnpm build:payloadcargo build --release -p cli -p daemonThe binaries land in rust/target/release/ as spicetify and spicetify-daemon. Put that directory on your PATH.
Working on the daemon
The daemon is its own crate, so cargo build -p cli does not rebuild it, and apply leaves an already-running daemon alone when the version has not changed, which it will not have during local work. After touching the daemon, restart it explicitly:
cargo build --release -p cli -p daemonspicetify daemon stop && spicetify daemon startSkipping the restart means testing the previous build.
Building v2
v2 is written in Go and lives on the same repository’s main branch:
git clone https://github.com/spicetify/clicd cligo build -o spicetify