{"adoption": {"forks": 175, "observed_at": "2026-08-28T04:03:34.143921+00:00", "stars": 1095}, "canonical_url": "https://ross.abutalabs.com/products/teriteri-client", "card": {"archived": false, "artifact_type": "application", "description": "一个基于 vue3 搭建的视频网站平台客户端", "domain": ["web-development", "frontend", "media", "education"], "enriched": true, "function": ["web-framework", "http-client", "search-engine", "websocket", "ui-components", "state-management", "video-processing"], "health_score": 20, "homepage": null, "language": "Vue", "license": "MIT", "license_family": "permissive", "maturity": "maintenance", "member_repos": ["xunlu129/teriteri-client"], "name": "xunlu129/teriteri-client", "platform": [], "pushed_at": "2024-05-20T20:28:23+00:00", "repo": "xunlu129/teriteri-client", "stars": 1095, "tags": ["video-sharing", "bilibili-clone", "danmaku", "vue3", "element-plus", "graduation-project", "self-hosted", "web-server", "nodejs", "vue"], "topics": [], "urls": [], "use_cases": ["self-host a bilibili-like video sharing site", "study a full-stack vue3 + springboot video platform", "learn how danmaku bullet comments are implemented", "deploy a video website with comments and messaging", "clone a video platform for learning purposes", "explore vue3 + element-plus frontend architecture"], "what_it_is": "Teriteri is a Vue3-based web client for a Bilibili-style danmaku (bullet comment) video sharing platform, built as a graduation project with a SpringBoot backend. It implements video browsing, uploads, comments, likes, favorites, danmaku playback, user messaging, and search across a three-part frontend/backend/admin architecture.", "when_to_avoid": ["you need a production-ready video platform with support and active development", "you want features like recommendations, watch history, or hot rankings (paused)", "you cannot provide Alibaba Cloud OSS for video storage", "you need commercial licensing beyond MIT for a bilibili clone"], "when_to_choose": ["you want a reference implementation of a bilibili-style video site", "you are learning vue3, springboot, redis, and elasticsearch integration", "you need a study project covering video upload, playback, danmaku, and chat"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/teriteri-client", "repo": "xunlu129/teriteri-client", "role": "main", "score": 29}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:34.143921+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T06:47:26.227416+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "738a6d64cc1953c566c9114278945fad36df628e2d5659fd6327d4420e228783", "fetched_at": "2026-08-28T04:03:34.143921+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xunlu129/teriteri-client"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:34.143921+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T06:47:26.227416+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "738a6d64cc1953c566c9114278945fad36df628e2d5659fd6327d4420e228783", "fetched_at": "2026-08-28T04:03:34.143921+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xunlu129/teriteri-client"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T06:47:26.227416+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "738a6d64cc1953c566c9114278945fad36df628e2d5659fd6327d4420e228783", "fetched_at": "2026-08-28T04:03:34.143921+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xunlu129/teriteri-client"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:03:34.143921+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:34.143921+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:34.143921+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T06:47:26.227416+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "738a6d64cc1953c566c9114278945fad36df628e2d5659fd6327d4420e228783", "fetched_at": "2026-08-28T04:03:34.143921+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xunlu129/teriteri-client"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:34.143921+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:34.143921+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T06:47:26.227416+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "738a6d64cc1953c566c9114278945fad36df628e2d5659fd6327d4420e228783", "fetched_at": "2026-08-28T04:03:34.143921+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xunlu129/teriteri-client"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:34.143921+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:34.143921+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:34.143921+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T06:47:26.227416+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "738a6d64cc1953c566c9114278945fad36df628e2d5659fd6327d4420e228783", "fetched_at": "2026-08-28T04:03:34.143921+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xunlu129/teriteri-client"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:34.143921+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:34.143921+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T06:47:26.227416+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "738a6d64cc1953c566c9114278945fad36df628e2d5659fd6327d4420e228783", "fetched_at": "2026-08-28T04:03:34.143921+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xunlu129/teriteri-client"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T06:47:26.227416+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "738a6d64cc1953c566c9114278945fad36df628e2d5659fd6327d4420e228783", "fetched_at": "2026-08-28T04:03:34.143921+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xunlu129/teriteri-client"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T06:47:26.227416+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "738a6d64cc1953c566c9114278945fad36df628e2d5659fd6327d4420e228783", "fetched_at": "2026-08-28T04:03:34.143921+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xunlu129/teriteri-client"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T06:47:26.227416+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "738a6d64cc1953c566c9114278945fad36df628e2d5659fd6327d4420e228783", "fetched_at": "2026-08-28T04:03:34.143921+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xunlu129/teriteri-client"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 82, "rhythm": 35}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 1148, "days_push": 835, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 29, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}