Skip to content
<- ~/projects
farsight/

Farsight

I spend a lot of time in the YouTube creator community. I wanted to know why some videos blow up and others don't. So I built a research app that answers that.

TauriReactTypeScriptRustSQLite

> cat farsight/problem.md

## THE PROBLEM

I spend a lot of time in the YouTube creator community, and one question keeps coming up: why do some videos blow up while others don't? Trying to figure this out meant bouncing between YouTube search, spreadsheets, and way too many browser tabs. I wanted one tool that could search videos, tell me which ones are actually outperforming, track channels over time, and let me read transcripts. Nothing like that existed.

> cat farsight/approach.md

## THE APPROACH

  • -Built a native desktop app with Tauri (Rust backend, React frontend) and a local SQLite database
  • -The core idea is an outlier score: pull a channel's recent uploads, calculate an age-normalized median view count, then see how far each video lands above or below that baseline
  • -A 5x outlier means the video got 5x more views than normal for that channel, with video age factored out
  • -Rust handles transcript fetching and keeps the YouTube API key secure. React handles the UI with TanStack Query for caching

> cat farsight/build.md

## THE BUILD

  • -Discover: search YouTube with outlier scores on every result
  • -Library: save videos with tags and filters
  • -Channels: follow channels and see their upload cadence, growth trends, engagement rates, best-performing duration buckets
  • -Transcripts: searchable transcript viewer with PDF export through the Rust backend
  • -Freemium model through Polar.sh ($9/mo Pro tier) with license key validation and a 7-day offline grace period
  • -Locked down: CSP headers, parameterized SQL, scoped plugin permissions, YouTube API key compiled into the Rust binary

> cat farsight/outcome.md

## THE OUTCOME

Farsight is live at getfarsight.app. The outlier score normalizes for channel size and video age, so a 50K-view video on a small channel ranks higher than a 500K-view video on a massive one. Everything runs locally on your machine -- the only external call is the YouTube API.