Crop Picker Platform

Hub for the Crop Picker platform at crops.every.farm, a public crop screener that scores alternative crops for a region and indexes all documents describing how it works end to end.

Public crop-screener at crops.every.farm. This hub indexes every document that describes how the Crop Picker platform works — end to end, from ingestion to cache to the user's browser.

🏠 Status: Live in production. Data coverage: Lake Erie region (expanding). 🧱 Stack: Nuxt 3 · Vue 3 · Supabase (Postgres + PostGIS) · Vercel

#What it is

Crop Picker helps farmers, researchers, and buyers explore alternative or underutilized crops for a given region. Each crop is scored across five snowflake axes (market fit, climate fit, infrastructure fit, financial return, risk profile) out of 30 total. Users can:

  • Browse the full catalog with rich filters (category, revenue bounds, insurance availability, etc.)
  • Dive into a single crop's economics, soil/climate preferences, market channels, risks, and price history
  • Compare 2–6 crops side by side
  • Find local buyers who purchase a given crop (PostGIS-backed proximity search)

Every data point in the catalog carries a source citation and appears in an append-only audit log — a core design principle of the platform.

#Relationship to Every.Farm

Crop Picker is a focused spinoff project that will integrate into the wider Every.Farm ecosystem. Today it runs independently at its own domain with its own Supabase project. The farm_* tables (see Data Model & Schema) are scaffolded for future user-owned data that will sync with Every.Farm's authenticated farmer profiles.

See Integration with Every.Farm for the planned merger path.

#Where to start

Doc For
Data Model & Schema Every table, every join, the snowflake model, regional pattern
Crops API Public REST surface at /api/v1/*
Caching & Performance Edge SWR, region handling, invalidation
Security Access model, data provenance, reporting issues
Integration with Every.Farm Spinoff → ecosystem integration plan
Platform Hosting, release process, availability, integrating with the API

#Fast facts

  • 10 public API endpoints under /api/v1/* — fully documented, cached at the edge.
  • 5 snowflake axes × 6 checks = 30 scoring points per crop per region.
  • RLS enabled on every public table; anon key is read-only, service role is server-only.
  • 1-hour edge cache on crop detail pages, 10 min on the screener, 24 h on static enums.
  • Public read-only today; authenticated, per-farm features are part of the Every.Farm integration roadmap.

#Current scope

The Lake Erie Concord Grape Belt is the only region with complete data today. The platform is architected so adding a region is a DB-only task: populate crop_snowflake_scores.region = '<new-region>', insert a row into public.regions, and the picker picks it up automatically within the edge cache TTL. See Caching & Performance for why no code change is needed.

#In this section

Updated

Something missing or out of date? Tell us — the docs are updated with every release.