Something went wrong. Try again.
A social internet radio platform built on AT Protocol. atradio.fm
atproto radio
Something went wrong. Try again.
README.md
tools/console #
A single place to run every command in the atradio.fm monorepo, two ways:
- Interactive REPL — a Clojure + rebel-readline console where each command is a function.
- Babashka tasks — the same commands as fast
bbtasks for scripting/CI.
Setup #
The toolchain (Java, Clojure, Babashka) is pinned in the root mise.toml:
mise install # installs java, clojure, babashka (+ node, bun)
Interactive console (rebel REPL) #
From the repo root:
./console # launches the rebel REPL with all commands preloaded
Then call commands as functions:
(help) ; list everything
(dev) ; run every app in dev
(api-consumer) ; run only the Jetstream consumer
(migrate) ; apply Drizzle migrations
(gen-lexicons) ; regenerate lexicon JSON from Pkl
(gen-icons) ; regenerate PWA icons
Babashka tasks #
From tools/console/:
bb tasks # list tasks
bb dev # turbo dev
bb db:migrate # apply migrations
bb lexicons:gen # pkl -> lexicon JSON
bb repl # launch the rebel REPL
Both frontends shell out to the underlying bun / turbo / drizzle-kit /
pkl commands from the repo root, so they stay in sync with the workspace
scripts — nothing is duplicated.