A small, opinionated film picker for Omarchy.
Five mood questions, a public Letterboxd watchlist, or one blind wager for tonight.
A bilingual Omarchy / Quickshell panel powered by mood-watch.app. It answers one question without becoming a tracker, social feed, or recommendation dashboard:
What should I watch tonight?
These are captures from the running plugin on an Omarchy desktop, not mockups.
Home: mood test, surprise pick, public Letterboxd watchlist.
Quiz: short, focused questions with compact controls.
Letterboxd: public watchlist connection, no login or password.
Results: live posters, complete overviews, English presentation titles where appropriate, and localized descriptions.
The real bar context with the film icon.
- Quick mood test — five questions covering energy, appetite, time, tone, and aftertaste.
- Letterboxd watchlist — enter a public username and pick only from your own watchlist. The public
@callmeoutaccount was used for the real sync check with 466 titles. - Surprise me — one curated blind pick without a questionnaire.
- Useful film cards — poster, title, year, director, runtime, complete overview, where-to-watch link, and Letterboxd link.
- Presentation rule — titles and posters stay in English unless the film is Spanish-language; overviews and genres follow the system language.
- Bilingual UI — English or Spanish according to the system locale.
- Privacy by default — no account, no password, no API key, and no watchlist data written to disk.
omarchy plugin add https://github.com/brm-src/omawatch.git --enable --yesNo administrator privileges are required. The plugin needs Omarchy / Hyprland, Quickshell, Python 3, and an internet connection.
- Click the film icon in the Omarchy bar.
- Choose Quick mood test, Connect watchlist, or Surprise me.
- For Letterboxd, enter a public username, wait for the sync, and answer the quiz.
- Read the picks and open where to watch or Letterboxd when useful.
Press Escape, Super + W, or click outside the panel to close it.
Omawatch.qmlrenders the panel using Omarchy's own primitives, fonts, colors, borders, separators, action rows, and compact controls.omawatch.pyis a stateless HTTPS helper for the public mood-watch API.- Anonymous answers are mapped to the same editorial routes used by the web product.
- Spanish presentation fetches the English title/poster variant in parallel while keeping the overview in Spanish.
- Letterboxd sync starts and polls a public read-only job; its short-lived token stays in memory only.
- No text, username, or watchlist data is written to disk.
- Only a public Letterboxd watchlist is read; there is no login flow.
- Requests go to
moodwatch-api.brmcl.workers.devthrough HTTPS. - See the mood-watch privacy notes.
omarchy plugin remove io.github.brm-src.omawatch --yesOr disable it first:
omarchy plugin disable io.github.brm-src.omawatchRun from the repository root:
python3 -m unittest discover -s tests -v
python3 -m py_compile omawatch.py
qmllint -I /usr/share/omarchy/shell BarButton.qml Omawatch.qml
omarchy plugin validate .MIT. See LICENSE.





