New
Apps 1,571Makers 1,569This week 1,570
Promote your app−30%
SK Music screenshot 1
0views in
the last 30 days

SK Music

A fast, kosher, filtered YouTube music web client — search and stream a whitelisted catalog....

Built with Claude Code

by shalom-karr · Unclaimed · added Oct 29, 2026
no ratings0 comments

A fast, kosher, filtered YouTube music web client — search and stream a whitelisted catalog of Jewish music, filtered by construction. It ships as a static site on Cloudflare Workers: the browser does the searching over a prebuilt index, and playback runs through the official YouTube IFrame player.

Live: https://skmusic.shalomkarr.com


What it is

  • Whitelisted catalog — every song comes from a pre-approved artist, so the app is "accurate by construction." The catalog is fetched at build time and baked into the deploy; it is not committed here.
  • Client-side search — the whole index is interned into one compressed dataset and searched in the browser (Hebrew-aware, fuzzy), off the main thread via a Web Worker. No search backend to run.
  • Static-first — dist/ (the SPA + the search engine + the baked catalog + assets) is served by a thin Cloudflare Worker that adds only what can't be static: live playlist contents, trending, server-rendered link previews, and anonymous play analytics.
  • PWA — installable, with a service worker that caches the shell for fast repeat loads.

Layout

engine/    the Cloudflare Worker (index.mjs) + the client-side search engine (ES modules → dist/lib) +
           the build: fetch-corpus.mjs (pull the catalog snapshot) → build-static.mjs (bake dist/),
           and store.mjs (reads the SQLite catalog, build-time only)
assets/    the SPA (ui.html) + analytics.html (admin) + connectivity.html + taggers, plus logo, PWA
           icons, web manifest, OG image
supabase/  schema.sql + tag/pin SQL (the backend: analytics, parental controls, artist tags)
docs/      architecture, filters + parental controls, backend, credentials

Run & build

npm install          # one native dep: better-sqlite3 (prebuilt for your platform)
npm run build        # fetch the catalog snapshot, then bake dist/
npm run dev          # wrangler dev — serves dist/ + the Worker locally

npm run build downloads the latest public catalog snapshot (CORPUS_REPO) and generates dist/. See .env.example for the (optional) configuration — everything has a working default.

Deploy

Deploys to Cloudflare Workers Static Assets via GitHub Actions on every push to main (and daily, to pick up catalog updates). Add a CLOUDFLARE_API_TOKEN repository secret to enable auto-deploy. To deploy from your machine instead:

npm run deploy       # build + wrangler deploy

Worker name and account live in wrangler.jsonc.

Credits

The whitelisted music catalog and artist whitelist that SK Music streams come from Zemer by alltechdev — the zemer-app and zemer-search projects. SK Music is an independent web client with its own search engine; full credit and thanks to alltechdev for the catalog that makes this possible.

Acknowledgments

A big thank you to alltechdev (ars18 on jtechforums) for a lot of advice and tips throughout the build.

Thanks also to the community at jtechforums.org — pleasesmiletoday for ideas on what to build out and for tagging singers, and jask, ys770, flippy, and the-curious for help tagging singers.

Disclaimer

SK Music is an independent, non-commercial project for personal and educational use. It is not affiliated with, endorsed by, or sponsored by YouTube or Google. Playback uses the official YouTube IFrame Player API; the app does not host, download, or re-encode any audio or video. Respect YouTube's Terms of Service. Use at your own risk.

License

SK Music is free software under the GNU General Public License v3.0 — see LICENSE.

Copyright © 2026 Shalom Karr. Portions derive from zemer-search by alltechdev, also licensed GPL-3.0.

The GPL permits commercial use. As a personal request — not a condition of the license — please contact the author before using SK Music, or substantial parts of it, in a paid or commercial product.

Description taken from the repository README.

Ratings

–
0 ratings
5 0
4 0
3 0
2 0
1 0

Rate this app

Sign in to rate

Comments 0

Sign in to comment

No comments yet.

Related apps

#music · #youtube · #filtered