Counselling session · Drishti Khan · Mar 19, 2026
Drishti Khan:** Honestly, more pressure now. Dad keeps saying CA and Commerce is the safe path. Mom is more
Postgres full-text search over counselling reports, ranked by relevance. Filter by school, grade, or report kind.
Drishti Khan:** Honestly, more pressure now. Dad keeps saying CA and Commerce is the safe path. Mom is more
Drishti Khan (Grade 11). Discussion focused on design as a pathway and the family's view on time
Drishti Khan (Grade 11). Discussion focused on civil services as a pathway and the family's view on stream
Every reports.text and counsellor_note is indexed by Postgres tsvector (english config). One GIN index, refreshed on insert.
Search box runs plainto_tsquery + ts_rank_cd. Filter chips (school, grade, RIASEC, kind) compose into the same SQL — no client-side filtering.
ts_headline wraps matches in <mark> tags so counsellors see the evidence in context.
Top 30 sorted by rank × recency. The aim is < 200 ms server-side on the full corpus, no Elasticsearch needed.