How guochen-thlg/ai-fullstack-entrance-exam works
This repository contains two AsterVision products: an AI-visibility analytics dashboard and a product knowledge center. The dashboard workflow runs from overview or question analysis in the React app through its hooks and API client to Koa, which reads summary/question data and serves filtered results or computed mock insights. The knowledge center serves product/FAQ content, supports rule-based knowledge Q&A and product administration, and exposes read-only tools to browser agents. README documentation supplies several unsampled capabilities; those are represented at their documented source paths, with uncertain implementation wiring omitted.
Main entry points: App.tsx Dashboard app · data.ts Knowledge data layer · WebMcpTools.tsx WebMCP tools · app.ts Koa API app
Components 30
Dashboard interface
- Dashboard app
apps/project1-dashboard/web/src/App.tsx - Filter state
apps/project1-dashboard/web/src/hooks/useQuestionFilters.ts - Summary loading
apps/project1-dashboard/web/src/hooks/useSummary.ts - Question loading
apps/project1-dashboard/web/src/hooks/useQuestionList.ts - Insight state
apps/project1-dashboard/web/src/hooks/useInsight.ts - Dashboard visuals
apps/project1-dashboard/web/src/components/dashboard/TrendChart.tsx - Question views
apps/project1-dashboard/web/src/components/questions/QuestionTable.tsx - Dashboard API client
apps/project1-dashboard/web/src/api/dashboard.ts
Dashboard API
- Koa API app
apps/project1-dashboard/server/src/app.ts - Cached data source
apps/project1-dashboard/server/src/dataSource.ts - Question queries
apps/project1-dashboard/server/src/services/questionService.ts - Insight rules
apps/project1-dashboard/server/src/services/insightService.ts - Dashboard JSON data
Knowledge experience
- Knowledge home
apps/project2-knowledge/src/app/page.tsx - Product pages
apps/project2-knowledge/src/app/products/page.tsx - Product detail
apps/project2-knowledge/src/app/products/[slug]/page.tsx - FAQ page
apps/project2-knowledge/src/app/faq/page.tsx - Product admin
apps/project2-knowledge/src/app/admin/products/page.tsx - Ask AI widget
apps/project2-knowledge/src/components/AskAIWidget.tsx - WebMCP tools
apps/project2-knowledge/src/components/WebMcpTools.tsx - SEO metadata
apps/project2-knowledge/src/app/sitemap.ts
Knowledge API
- Ask endpoint
apps/project2-knowledge/src/app/api/ask/route.ts - Product endpoints
apps/project2-knowledge/src/app/api/products/route.ts - Product detail endpoint
apps/project2-knowledge/src/app/api/products/[slug]/route.ts
Knowledge services
- Knowledge data layer
apps/project2-knowledge/src/lib/data.ts - Knowledge retrieval
apps/project2-knowledge/src/lib/ask.ts - Tool definitions
apps/project2-knowledge/src/lib/webmcp.ts - Knowledge JSON files
Other components
- Site visitor
- Browser AI agent
Connections 33
- Site visitor → Dashboard app: uses
- Dashboard app → Summary loading: loads
- Dashboard app → Filter state: updates
- Dashboard app → Question loading: loads
- Dashboard app → Insight state: requests insight
- Dashboard app → Dashboard visuals: renders
- Dashboard app → Question views: renders
- Filter state → Question loading: provides filters
- Summary loading → Dashboard API client: requests summary
- Question loading → Dashboard API client: requests questions
- Insight state → Dashboard API client: requests insight
- Dashboard API client → Koa API app: HTTP requests
- Koa API app → Cached data source: loads summary/questions
- Koa API app → Question queries: queries questions
- Koa API app → Insight rules: generates insight
- Cached data source → Dashboard JSON data: reads
- Knowledge home → Knowledge data layer: reads content
- Product pages → Knowledge data layer: reads products
- Product detail → Knowledge data layer: reads detail
- FAQ page → Knowledge data layer: reads FAQs
- Product admin → Product endpoints: manages products
- Ask AI widget → Ask endpoint: asks question
- Ask endpoint → Knowledge retrieval: retrieves answer
- Knowledge retrieval → Knowledge data layer: searches knowledge
- Product endpoints → Knowledge data layer: reads/writes products
- Product detail endpoint → Knowledge data layer: reads/updates product
- Knowledge data layer → Knowledge JSON files: reads/writes
- WebMCP tools → Tool definitions: registers tools
- Browser AI agent → WebMCP tools: invokes tools
- WebMCP tools → Product detail endpoint: fetches product
- WebMCP tools → Product endpoints: searches products
- WebMCP tools → Ask endpoint: asks knowledge
- Knowledge home → SEO metadata: publishes site metadata