Stacks / Sync
Maloja
Scrobbles you host. Maloja is GPL-3.0 — Last.fm without the hosted charts seat.
The problem
Last.fm is a hosted scrobble diary and social graph. You wanted plays, charts, and a history you can export. Maloja is GPL-3.0 (krateng/maloja; last push 17 Oct 2026). Navidrome is the music library — already on /replace/spotify — not a Last.fm chart box. This is not Last.fm Pro, radio, or the old neighbour graph. You still own the scrobble files.
Replaces
Last.fm
Estimated SaaS saved
$1,200
per year, small team, before lock-in
Start on RailwayNavidrome if this is a music library, not scrobble charts
Placeholder: Maloja plus a volume for the scrobble database as the project docs require. Bind HTTP to 0.0.0.0:$PORT. No one-click template in this repo yet — Start on Railway. A music library stays on /stacks/navidrome-music.
The stack
- Maloja
GPL-3.0 scrobble database and charts — the published Last.fm path
Cost table
| You stop paying | Typical / year | Self-host instead |
|---|---|---|
| Last.fm / hosted scrobbles (household) | $1,200 | Maloja + a volume |
Agent setup prompt
Replace Last.fm with Maloja (https://maloja.krateng.ch). - Official image. Persist the scrobble database. Submit one scrobble. Do not claim Last.fm radio or neighbours. - Navidrome if the job is a music library — /stacks/navidrome-music. - Write AGENT_PROMPT.md.
Also as markdown: /stacks/maloja-scrobble.md
FAQ
- Maloja or Navidrome?
- Maloja if the product is charts from scrobbles (the published Last.fm path). Navidrome if the product is files you play — /replace/spotify.
- Is this Spotify?
- No. A music library stays on /replace/spotify. This page is a scrobble diary.
- Are these free?
- Maloja is GPL-3.0. You pay hosting. Template users never pay c17.