jacob@nyc: ~/projects/tzelem

$ cat projects/tzelem.md

Tzelem

iPhone · iPad · Mac · webby Jacob Relkin

A private, self-hosted photo and video library: indexed in place, served over mutual TLS, natural-language search, and SwiftUI apps at parity with the web. 6,700+ automated tests.

$ architecture

server
Standard-library Python. Indexes media in place into a column-encrypted SQLite database.
access
Mutual TLS from its own certificate authority; devices enroll with a one-time QR link.
clients
A vanilla-JS web app and SwiftUI apps on one Swift 6 core package, kept in step by shared golden fixtures.
search
Optional CLIP search, run locally with ONNX: no cloud, no vector database.
tests
7,000+ across Vitest, pytest and Swift Testing; TestFlight builds from CI.

$ stack

  • Python
  • SQLite
  • Swift 6
  • SwiftUI
  • ONNX Runtime

$ ls projects/

  • Runout

    The edge for serious pool players: AI scouting reports on any FargoRate-rated opponent, head-to-head odds verified against FargoRate to five decimal places, and live brackets that update mid-event, all in one daily app. In private release.

  • Pardes

    A source-based case for veganism in Jewish tradition: five chapters and 251 sources, every classical one linked to its page on Sefaria. The bibliography is generated from the source data, so the two cannot disagree.

  • Posty

    An editorial agent for X drafts: each claim fact-checked against live web search with a verdict and sources, then grammar, style notes, and a rewrite.

  • jacobrelkin.me

    This site: homepage, CV, and PDF rendered from one data file by a custom build. Claude Code in the loop, headless-Chrome tests on every change.

  • cuescope

    Computer-vision analysis of pool match video: every shot with its start and end, which game it belonged to, who won, and clip ranges ready to cut.

  • CodexBar Sigma

    A menu bar watchdog for Claude Code usage: reads CodexBar’s history, scores the burn rate against a median and MAD baseline, and notifies the moment it spikes.

  • Reclaim

    Where the disk space went, and how to get it back: treemap, size-versus-age chart, duplicate finder, build-cache cleanup. Everything goes to the Trash and can be undone.

  • Trove

    Save anything from any app’s share sheet into one private, searchable library that syncs across iPhone, iPad, and Mac. In development.

# everything else, with the work behind it: the CV

$ contact

Hiring, building, or advising?

If you think I could help, I’d love to hear about it.