How valentynkit/awesome-jev-typesafe works
Awesome Jev is a curated, multilingual directory of projects and resources built around TypeSafe Jev. Visitors browse categories, search and rerank projects, inspect ecosystem insights, and consume machine-readable exports; contributors add entries through the repository list. The graph separates curation data, shared data/search logic, browse experiences, and exports/integrations. Evidence includes the README, tree, and sampled site sources; unsampled page wiring is represented only where supported by documented capabilities.
Main entry points: data.ts Directory model · trending.ts Trend rankings · index.astro Directory search · rerank.ts Rerank endpoint
Components 28
Directory data
- Curated entries
readme.md - Project index
data/projects.json - GitHub metadata
data/github.json - Jev tags
data/jev.json - Entry history
data/history.json - Star snapshots
data/stars
Site logic
- Directory model
site/src/lib/data.ts - Search ranking
site/src/scripts/search.ts - Jev reranking
site/src/lib/rerank-core.mjs - Trend rankings
site/src/lib/trending.ts
Browse experiences
- Directory search
site/src/pages/[...lang]/index.astro - Project browsing
site/src/pages/[...lang]/projects.astro - Category pages
site/src/pages/[...lang]/c/[slug].astro - Project details
site/src/pages/[...lang]/p/[id].astro - Ecosystem insights
site/src/pages/[...lang]/insights.astro - Ecosystem radar
site/src/pages/[...lang]/radar.astro - Trending board
site/src/pages/[...lang]/trending.astro - Submission guide
site/src/pages/[...lang]/submit.astro
Feeds and integrations
- Rerank endpoint
site/src/pages/api/rerank.ts - Search index
site/src/pages/search-index.[lang].json.ts - Project export
site/src/pages/projects.json.ts - LLM text exports
site/src/pages/llms.txt.ts - Full list export
site/src/pages/llms-full.txt.ts - Recent additions feed
site/src/pages/feed.xml.ts
Other components
- Visitor
- Contributor
- TypeSafe Jev API
- GitHub API
Connections 41
- Contributor → Curated entries: adds entries
- Curated entries → Project index: curated into
- Project index → Directory model: loads entries
- GitHub metadata → Directory model: enriches entries
- Jev tags → Directory model: adds tags
- Entry history → Directory model: adds dates
- Visitor → Directory search: searches
- Visitor → Project browsing: browses
- Visitor → Category pages: opens category
- Visitor → Project details: opens project
- Visitor → Ecosystem insights: explores
- Visitor → Ecosystem radar: explores
- Visitor → Trending board: checks trends
- Visitor → Submission guide: finds guidance
- Directory search → Directory model: reads entries
- Project browsing → Directory model: reads entries
- Category pages → Directory model: reads category
- Project details → Directory model: reads details
- Ecosystem insights → Directory model: reads metrics
- Ecosystem radar → Directory model: reads tags
- Trending board → Trend rankings: requests rankings
- Trend rankings → Project index: reads projects
- Trend rankings → GitHub metadata: reads metadata
- Trend rankings → Entry history: reads history
- Trend rankings → Star snapshots: reads snapshots
- Directory search → Search ranking: filters results
- Search ranking → Search index: loads index
- Search index → Directory model: builds documents
- Directory search → Rerank endpoint: requests reranking
- Rerank endpoint → Jev reranking: validates and ranks
- Rerank endpoint → TypeSafe Jev API: scores candidates
- Rerank endpoint → Project index: reads candidates
- Visitor → Project export: fetches export
- Visitor → LLM text exports: fetches guide
- Visitor → Full list export: fetches full list
- Visitor → Recent additions feed: subscribes
- Project export → Directory model: serializes projects
- LLM text exports → Directory model: renders directory
- Full list export → Directory model: renders entries
- Recent additions feed → Directory model: reads additions
- Directory model → GitHub API: fetches repo stars