Sign in

Tsiry Sandratraina 🦀

@tsiry-sandratraina.com
365 followers 676 following 205 posts

Building @rocksky.app, @atradio.fm and github.com/tsirysndr/rockboxd Support my work → github.com/sponsors/tsirysndr Tangled → tangled.org/tsiry-sandratraina.com GitHub → github.com/tsirysndr

PostsRepliesMedia
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 27/09/2026
021
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 23/09/2026
I wanted a simple way to collect and explore @rocksky.app's OpenTelemetry data, so I built my own: "otelview", so I can spot and resolve Rocksky API issues quickly. Single binary, built-in storage (DuckDB), simple web ui. tangled.org/tsiry-sandra...
opentelemetry
010
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 15/09/2026
Music player (atproto-native app) → internet radio → ICY metadata → enriched with Rocksky metadata → scrobbled to @rocksky.app
internet radio scrobbling
161
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 10/09/2026
Turned Codex into my DJ, forked Mixxx + added an MCP server: tangled.org/tsiry-sandra... Built a DJ skill: tangled.org/tsiry-sandra... Now it searches my local library, matches BPM + key, queues tracks, and mixes.
mixxx ai dj
010
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 08/09/2026
Probably my favorite thing I've built into @rocksky.app : 'Explore', every track anyone has scrobbled, queryable with RSQL rocksky.app/explore
Rocksky RSQL
061
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 06/09/2026
an atproto-native music player: one rust binary, native gui in @slint.dev , skins included. likes from @rocksky.app , radio favorites from @atradio.fm, now playing published to your PDS, scrobbles back. tangled.org/tsiry-sandra...
58314
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 03/09/2026
mixxx + subsonic support (my fork) + @rocksky.app navidrome = DJing straight from my self-hosted library. it just works
mixxx + subsonic
4183
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 28/08/2026
playing with NFC + ATProto in @rocksky.app desktop. the card stores an AT URI pointing to a playlist or album, tap it -> Rocksky resolves the record and starts playback
2191
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 23/08/2026
@rocksky.app now supports playlists. app.rocksky.playlist holds the collection, app.rocksky.playlist.song holds each entry, strong-ref'd to the song record so the link stays content-addressed. Open lexicons, so any player can read or build on them.
042
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 23/08/2026
@rocksky.app stores EQ, tone, crossfade and replay gain as records on ATProto. Any other player can reuse them and stay in sync, your sound follows you across apps.
162
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 23/08/2026
working on a desktop (tauri) version of @rocksky.app
0121
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 22/08/2026
gave @rocksky.app's now playing screen a refresh
031
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 22/08/2026
asked attie to dig through a week of @rocksky.app scrobbles
011
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 21/08/2026
one @rocksky.app feature I use every day besides scrobbling: I have the CLI running on a few machines, stream my private music library, and switch playback between devices right from the mini player on rocksky.app
041
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 18/08/2026
tried triggering a tangled workflow manually and running it locally in a microvm, very experimental still tangled.org/tsiry-sandra...
0121
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 31/07/2026
Hey @aly.codes , I noticed some repository names don't seem to resolve correctly (e.g. b6vv5hhlayy56 instead of the actual repo name)
200
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 26/07/2026
playing with Rocksky.match_song/2 from the @rocksky.app SDK. Handy for cleaning up scrobble data or building a music app without wrangling multiple APIs yourself.
361
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 21/07/2026
Streaming my music library from @rocksky.app's Navidrome-compatible API with the Rocksky CLI (powered by rockbox-ffi) on an Orange Pi Zero 3W. npmx.dev/package/@roc... npmx.dev/package/rock...
010
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 17/07/2026
"Spotify Connect", but on the AT Protocol Every device signed into your @atradio.fm account: web, terminal, even a Raspberry Pi by the speakers, shows up and can control playback on any of the others. All keyed to your DID.
082
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 14/07/2026
Another AT Protocol project: @atradio.fm Save, discover, and listen to internet radio stations with your portable identity. tangled.org/atradio.fm/a...
173
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 10/07/2026
an fzf-like fuzzy finder for searching thousands of internet radio stations, directly from the terminal. tangled.org/tsiry-sandra...
000
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 07/07/2026
fin 0.4.0 Your terminal is now a UPnP/DLNA renderer. Cast music or videos from Jellyfin, Kodi, BubbleUPnP, and more, directly to your machine. tangled.org/tsiry-sandra...
000
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 06/07/2026
'Fin' is a Jellyfin & Navidrome client, and it works perfectly with Rocksky's Navidrome-compatible music server. tangled.org/tsiry-sandra...
2252
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 28/06/2026
I replaced Spotify with a Radxa Zero 3W (ARM64, 1 GB RAM, 512 GB micro SD Card storage) running Linux. It hosts: 1. rockboxd for music streaming tangled.org/tsiry-sandra... 2. @tailscale.com for secure access from anywhere My entire music library is now self-hosted, and completely under my control.
110
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 16/06/2026
Yes, I use AT Protocol to sync my Rockbox audio settings. Well, my modified version of Rockbox. 😅 EQ, crossfade, tone controls, and other preferences are stored as an ATProto record under a @rocksky.app NSID and synced across devices.I'm tired of reconfiguring everything every time I switch devices.
141
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 04/06/2026
Passed 44,000 scrobbles on my @rocksky.app profile today 📈
083
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 03/06/2026
Tired of remembering every command in the @rocksky.app monorepo, so I centralized everything into one Clojure REPL. Bonus: autocomplete and syntax highlighting included
130
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 30/05/2026
Hey @popfeed.social, I think there might be a duration unit mismatch. @rocksky.app expects track durations in milliseconds. A track with duration 232533 is showing as 3875:33, which suggests it's being interpreted as seconds instead of milliseconds. Could you check? Thanks
020
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 30/05/2026
When I started @rocksky.app, I wasn't sure if anyone would use it. Today we hit a new record: 2,354 scrobbles in a single day. Thanks to everyone using Rocksky, testing new features, reporting bugs, and helping shape the platform. Still just getting started.
3173
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 26/05/2026
Psysonic Navidrome Client + @rocksky.app
082
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 23/05/2026
late night coding with rockbox + @rocksky.app
040
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 23/05/2026
any rockbox app can now control any other rockbox app on your local network tangled.org/tsiry-sandra... #SelfHosted #MusicPlayer
050
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 22/05/2026
111
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 15/05/2026
Cooking a better way to browse music ... tangled.org/tsiry-sandra...
0250
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 09/05/2026
rockboxd: a single-binary music player daemon with 20+ statically linked codecs, DSP, Perceptual Bass Enhancement, ReplayGain, a parametric equalizer, compressor and more. librockboxd.a: a static library for building your own music player on top of Rockbox. github.com/tsirysndr/rockbox-zig
020
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 09/05/2026
the quickest way to try my Rockbox fork is now with Docker github.com/tsirysndr/ro... rockboxzig.mintlify.app
000
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 01/05/2026
My music is scattered across a macbook, pi, and old laptop. I wanted spotify, but for my own files on my own wifi. So I forked Rockbox and added a gpui frontend, airplay, snapcast, squeezelite, UPnP/DLNA, bluetooth, mpd, http streaming. Runs on Pi, Debian/Ubuntu, macOS. github.com/tsirysndr/ro...
2222
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 18/03/2026
Yes, you can easily bring your Git repo into a @pocketenv.io Sandbox. Add: - SSH keys - environment variables - secrets - files - @tailscale.com VPN Spin up your environment in seconds
051
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 18/03/2026
Look Ma! A @pocketenv.io sandbox definition living inside an AT Protocol record: type: io.pocketenv.sandbox repo envs secrets volumes vcpus memory
152
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 13/03/2026
Wait… @cloudflare.social sandbox supports nested virtualization?!
010
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 27/02/2026
Another peaceful sunset over Tana
000
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 15/02/2026
I was 6 when I discovered Gorillaz. Clint Eastwood changed everything for me. And somehow, after all these years, I still listen to it almost every day
000
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 29/01/2026
@rocksky.app now requires granular permissions
010
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 27/01/2026
clawdbot + Rocksky MCP
000
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 19/01/2026
@rocksky.app CLI pulling scrobbles in real time locally, as I listen
020
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 31/12/2025
Haha yeah, I actually predicted this already, I've been checking the firehose data every day 😄 @baileytownsend.dev @nickthesick.com @isabelroses.com
091
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 31/12/2025
091
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 18/12/2025
Porting Rockbox to desktop 💿 Rockbox recompiled as librockbox.a, running inside a native SwiftUI macOS app. Full audio stack working: codecs, equalizer, crossfading... github.com/tsirysndr/ro...
020
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 06/12/2025
Trying to work but @xata.io says “no more connection slots for you” 🙈 Hope it's back soon!
030
Tsiry Sandratraina 🦀 @tsiry-sandratraina.com · 04/11/2025
FreeBSD VM in one line: deno run -A jsr:@tsiry/freebsd-up
020