Zig 91.0%
Python 7.0%
Dockerfile 0.8%
Shell 0.8%
Just 0.4%
60 1 0

Clone this repository

https://tangled.org/zzstoatzz.io/music-atmosphere-feed
git@tangled.org:zzstoatzz.io/music-atmosphere-feed

For self-hosted knots, clone URLs may differ based on your setup.

README.md

music-atmosphere-feed#

bluesky feeds for music links.

feeds#

how it works#

connects to turbostream and indexes posts containing links to soundcloud, bandcamp, spotify, apple music, or plyr.fm. also catches posts that quote music posts. excludes posts with nsfw labels.

the following feed uses the viewer's JWT to identify them, fetches their follows via the AT Protocol API, and filters posts accordingly.

edit src/feed/filter.zig to change inclusion criteria.

development#

just setup  # install pre-commit hook (auto-updates zat dependency)
just build  # build
just test   # run tests

dashboard#

https://music-atmosphere-feed.plyr.fm/

running locally
export HANDLE=your.handle
export PASSWORD=your-app-password
export FEED_HOSTNAME=your-hostname.fly.dev
export PUBLISHER_DID=did:plc:your-did

zig build run
deploying to fly.io
fly launch --no-deploy
fly volumes create feed_data --region ord --size 1
fly secrets set PUBLISHER_DID=did:plc:your-did
fly secrets set FEED_HOSTNAME=your-app.fly.dev
fly deploy
publishing the feed
HANDLE=your.handle PASSWORD=your-app-password \
  FEED_HOSTNAME=your-app.fly.dev \
  ./scripts/publish.py