Skip to content

Future Plans

Mundo edited this page Apr 8, 2026 · 2 revisions

Future Plans

Vector Search for GitHub Trending

The github_trending table stores repos with summaries and tags as plain PostgreSQL rows. The plan is to add vector embeddings later for semantic search capabilities.

Approach Options

Option A: pgvector on Neon (recommended)

Neon natively supports the pgvector extension. Add an embedding column to the existing table:

CREATE EXTENSION IF NOT EXISTS vector;
ALTER TABLE github_trending ADD COLUMN embedding vector(1536);

Then backfill embeddings from existing summaries and query by similarity:

SELECT repo_name, summary, tags
FROM github_trending
ORDER BY embedding <=> $1  -- cosine distance
LIMIT 10;

Hybrid search — combine vector similarity with tag filtering:

SELECT repo_name, summary
FROM github_trending
WHERE 'ai' = ANY(tags)
ORDER BY embedding <=> $1
LIMIT 10;

Option B: Export to dedicated vector DB

Export existing data and import into a free-tier vector database:

  • Pinecone — free tier available
  • Qdrant — open-source, free cloud tier
  • Weaviate — open-source, free sandbox

Embedding Model Options

Model Cost Dimensions
OpenAI text-embedding-3-small ~$0.02/1M tokens 1536
Voyage AI Free tier available 1024
HuggingFace transformers.js Free (runs locally) Varies

Potential Use Cases

  • "What trending repos were related to AI this month?" — hybrid search using tags + embeddings
  • Trend detection — cluster similar repos to spot emerging patterns
  • Personal knowledge base — search your curated trending history naturally
  • Weekly digest — aggregate the week's trending repos into a summary report

Other Ideas

  • Weekly summary email — aggregate the week's repos into a single report
  • Slack integration — send digest to a Slack channel instead of/alongside Telegram
  • More languages — add Python, Rust, Go trending pages for broader coverage
  • Read tracking — mark repos as bookmarked/starred via Telegram inline buttons
  • Star history — track how repos' star counts change over time

Clone this wiki locally