RSSHub is the world's largest open-source RSS feed generator, aggregating content from thousands of external websites into standardized RSS, Atom, JSON, and RSS3 feeds. It is a TypeScript application built on the Hono web framework, with a modular architecture where each source (news site, social platform, university notice board, government agency, etc.) is implemented as a self-contained 'route' module that fetches pages or APIs, parses HTML with Cheerio, and optionally renders rich descriptions using JSX. The project supports multiple deployment targets including Node.js, Docker, Vercel, and Cloudflare Workers, and integrates caching (Redis/LRU), middleware for access control, ETag/conditional requests, error tracking (Sentry, Honeybadger), and anti-hotlinking. The codebase is highly organized with consistent route definitions, extensive utility functions (date parsing, HTTP caching, header generation), and a strong emphasis on type safety. While the sheer volume of routes (thousands) introduces maintenance burden and some inconsistency (legacy `got` vs modern `ofetch`), the overall architecture is clean, well-tested for core infrastructure, and exhibits strong engineering practice. This is not a data-research repository; it is a production-grade web service for feed aggregation.
This repository is a Bilibili automation tool designed to automatically claim live stream rewards (drops) and complete watching time tasks. It features a dual-mode interface with both a PySide6-based GUI and a CLI entry point. The core functionality involves browser automation via Selenium to extract necessary credentials (cookies) and task information from Bilibili's web interface, followed by API interactions using signed requests (WBI) to claim rewards and report watch time via x25Kn heartbeat protocols. The application includes a notification system supporting multiple services (Gotify, Server酱, WeCom, Apprise) and persists configuration via JSON files and Qt settings. The architecture is modular, separating concerns into distinct modules for API client logic, worker management, GUI components, and utilities.
Agent Reach is a Python CLI tool that serves as a capability layer for AI agents, giving them one-click access to ~15 internet platforms (Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu, LinkedIn, etc.) without requiring manual setup. It does not wrap these platforms itself; instead, it selects, installs, health-checks, and routes to the most reliable upstream CLI tools (e.g., twitter-cli, yt-dlp, gh CLI, OpenCLI, mcporter) for each platform. The architecture is built around a multi-backend channel pattern: each platform has an ordered list of backends (primary + fallbacks), and the `doctor` command probes each candidate in order to determine the active backend. This design handles upstream tool instability gracefully by allowing fallback routing without code changes. The codebase demonstrates strong engineering practices: a clean Channel ABC with `check()` and `can_handle()` contracts, a robust probe system that distinguishes missing/broken/timeout/error by actual execution, security-hardened file operations (atomic private writes, symlink rejection, bounded reads), and SSRF protection in URL normalization. The CLI provides commands for installation (safe-by-default, read-only mode), diagnostics, configuration, and skill registration for agent environments (Claude Code, OpenClaw, Cursor, OpenCode). An optional MCP server exposes read-only status. Agent Reach is purely an application — there are no notebooks, data pipelines, or ML components. Its value lies in reducing the friction of giving agents internet access, with a focus on zero-config defaults for public platforms and cookie-based auth for login-required ones. The project is actively maintained, with documented responses to upstream API changes (e.g., Bilibili blocking yt-dlp, Twitter API pay-per-use).
MediaGo is a cross-platform media download manager that enables users to download videos from a wide range of sources, including HLS/m3u8 streams, YouTube, Bilibili, TikTok, Douyin, Xiaohongshu, and direct URLs. It is built as a monorepo with a Go backend (REST API + SSE events), an Electron desktop shell, a web UI (React 19), a mobile player UI, and a Chrome MV3 browser extension. The backend manages a download task queue that orchestrates external binaries (yt-dlp, BBDown, ffmpeg, aria2c, N_m3u8DL-RE) via PTY/exec runners, provides real-time progress through SSE, and includes an MCP server for AI agent integration. The Electron app embeds a Chromium webview for media source sniffing and supports share intents, ad blocking, and device mode. The browser extension detects media resources on pages and dispatches them to the local or remote MediaGo server via HTTP or a custom protocol.
yutto is a production-grade CLI application for downloading videos, subtitles, danmaku (bullet comments), and metadata from Bilibili. In production it resolves user-supplied URLs (UGC videos, bangumi anime, paid cheese courses, favourites, collections, watch-later lists) against Bilibili's private JSON APIs, normalizes responses into typed Pydantic download requests, and runs a planner/executor pipeline: immutable DownloadPlan construction (output paths, codec/quality selection), concurrent range-based downloading, FFmpeg muxing, and writing of NFO/SRT/ASS artifacts. It also ships an experimental WebSocket JSON-RPC server mode (`yutto serve`) for remote task submission, querying, cancellation, and live event streaming with token authentication.
Bilibili-Evolved is a powerful userscript (Tampermonkey/Greasemonkey) that enhances the Bilibili video platform with a modular component and plugin system. It injects into Bilibili pages and provides a wide range of features including video player enhancements (speed control, screenshot, remember progress), danmaku management (merging, downloading, conversion), UI customization (dark mode, custom navbar, home page redesign), feed filtering, live streaming tools, and video downloading with multiple output formats. The architecture is based on a core framework in `src/` that handles settings, DOM observation, style injection, toast notifications, and lifecycle management, while individual features are defined as components in `registry/lib/components/` using a metadata-driven pattern (`defineComponentMetadata`). Features can be installed, updated, and configured through a built-in settings panel. The project relies heavily on Bilibili's internal APIs and DOM structure, making it tightly coupled to the platform but also highly functional for power users. It uses Vue 2 for UI, TypeScript for type safety, and SCSS for styling, with a custom build pipeline using Webpack and pnpm.
Otter Music is a cross-platform music player application that aggregates multiple music sources (NetEase, QQ Music, Kuwo, Kugou, Migu, Bilibili, etc.) into a unified interface. It features music search, playback, playlist/favorites management, lyrics display, sleep timer, offline downloading, and cross-device synchronization via Cloudflare KV. The architecture combines a React/Vite frontend with Zustand state management, a Cloudflare Workers/Hono backend for API proxying and sync, and Capacitor for native Android integration. Key entry points include src/main.tsx (frontend root), functions/app.ts (backend), and android/app/src/main/java/com/otterhub/music/MainActivity.java (native). Data flows involve unified music API calls to platform-specific providers, audio URL resolution with caching, encrypted IndexedDB persistence for user state, and sync via Cloudflare KV. External dependencies include numerous music APIs, Capacitor, React, Zustand, Tailwind CSS, and Radix UI primitives.
YouDub WebUI is a full-stack video localization platform that enables users to import videos, transcribe speech via Whisper, translate via OpenAI-compatible APIs, clone voices with VoxCPM2, separate audio with Demucs, align subtitles with Qwen3 Forced Aligner, and export dubbed videos or subtitles. The architecture is plugin-based (Cordis framework) with a Node.js/TypeScript host orchestrating Python subprocesses for ML inference, a Next.js web frontend, and native desktop apps for macOS (Swift) and Windows (C#). The system features a task engine with queuing, cancellation, retry, and partial rerun; a worker protocol using NDJSON over stdin/stdout; and a comprehensive setup service that downloads and verifies model weights. While primarily an application, it includes research-grade model consumption and detailed validation records documenting real-media runs with SHA-256 hashes and human listening feedback. The codebase is actively maintained with recent commits, CI/CD pipelines, and extensive unit tests for contracts, protocols, and permissions.
Lux is a fast and simple video downloader CLI tool written in Go. It supports downloading videos, images, and audio from over 40 websites including YouTube, Bilibili, TikTok, Instagram, Twitter, and many Chinese streaming platforms. The tool operates as a single binary with a rich set of command-line options for selecting quality, downloading playlists, resuming interrupted downloads, multi-threaded downloading, and integration with aria2 for RPC-based downloads. Architecturally, Lux follows a plugin-based extractor pattern. Each supported website has its own extractor module under `extractors/`, registered via `init()` functions into a global map keyed by domain. The main entry point is `main.go`, which parses CLI flags via `urfave/cli` and dispatches to the appropriate extractor. Extracted video metadata (streams, quality, size) is passed to the downloader, which handles HTTP requests, progress bars, file merging via ffmpeg, and optional subtitle embedding. Key data flows: URL input → domain detection → extractor selection → HTML/API scraping → stream metadata extraction → downloader (single or multi-threaded) → file output. External dependencies include ffmpeg for merging and subtitle embedding, and various third-party Go libraries for HTTP requests, HTML parsing, JavaScript execution (for TikTok signing), and progress bars. The codebase is well-organized with clear separation of concerns, extensive test coverage for individual extractors, and CI workflows that run weekly to verify extractor functionality. While many extractors rely on fragile regex-based scraping of HTML pages, the overall architecture is solid and the downloader implements robust features like resume support and configurable retry logic.
BililiveRecorder is a multi-platform application for recording Bilibili (mikufans) live streams. It provides a desktop GUI (WPF), a cross-platform CLI, and a web interface (ASP.NET Core) with REST and GraphQL APIs. The core system manages room monitoring, stream capture via HTTP, danmaku (live chat) recording, and FLV file processing with a pipeline-based repair engine that fixes timestamp jumps, duplicate headers, and other stream corruption. It supports hierarchical configuration, user scripting (via embedded Jint JavaScript runtime), and webhook notifications. The application is modular: separate libraries for FLV parsing/writing (BililiveRecorder.Flv), core recording logic, toolbox utilities (fix, analyze, merge danmaku), and a web frontend with an embedded ArtPlayer-based video player. The codebase is well-structured with dependency injection, unit tests, and code generation for configuration models.
BiliReveal is a browser user script that enhances Bilibili's web interface by displaying IP location information in comment sections. The script detects which comment system is in use (Vue 2, Vue 3, or Lit-based web components) and hooks into the appropriate rendering mechanism to inject IP data fetched from Bilibili's APIs. It features a modular architecture with URL-based routing, separate injection strategies for different comment systems, and user-configurable text replacement rules. The project is actively maintained with recent updates, comprehensive end-to-end tests using Playwright, and a modern build setup using Vite and vite-plugin-monkey to generate both standard and Lite versions of the user script.
LiveAutoRecord is a multi-platform live stream recording application built on a TypeScript monorepo architecture. It supports three distinct deployment modes: a desktop client (Electron), a headless HTTP server (Express), and a CLI tool. The core functionality revolves around automatically detecting live streams from platforms like Bilibili, Douyu, Huya, and Douyin, resolving stream URLs, and capturing video via FFmpeg while simultaneously collecting metadata such as danmu and gift messages. The system uses a provider pattern to allow extensibility for new platforms. The architecture relies heavily on Node.js 22+ and Electron 40, indicating a commitment to bleeding-edge runtime versions. Data persistence is handled via LowDB with JSON file adapters, which serves the application's needs but introduces scalability limitations for large datasets. The codebase demonstrates solid engineering practices in its separation of concerns, with distinct packages for core logic, platform-specific adapters, and shared utilities. However, the reliance on platform-specific anti-crawl logic (e.g., VM execution for Huya, signature generation for Douyu) creates inherent fragility. A critical technical debt issue is the use of the `vm2` library in the Douyu recorder, which carries known critical security vulnerabilities (CVE-2023-37466). While a replacement plan exists in the documentation, the current state poses a significant security risk. Additionally, the high number of open issues (89) relative to the star count suggests accumulating technical debt and feature requests that may impact long-term stability.
这是一个大规模的社会科学资料聚合仓库,主要面向中文互联网用户。仓库以目录形式组织,包含大量知乎链接、B站视频、学术论文引用、书籍推荐以及个人评论和笔记。内容涵盖社会学、政治学、经济学、教育、性别研究、职场生存等多个领域,表现出强烈的批判性视角和对中国社会现实的关注。仓库不包含任何可执行代码或数据处理管道,其价值完全在于提供信息索引和研究指引。结构清晰但缺乏可复现性,没有依赖管理,数据源均为外部链接,随时可能失效。
The StreamVault repository currently contains only an archive notice, as the source code has been removed and the project discontinued. Originally, it was intended to be an application for recording and managing streams from platforms such as Bilibili and YouTube, as evidenced by the third-party licenses notice in the LICENSE file referencing bilibili-API-collect, f2, Light-Year-Admin-Template, and yt-dlp. However, with no source code present, the repository does not provide any functional application and serves solely as a historical record. Due to the absence of code, no architectural details, entry points, or data flows can be determined. The project is marked as deprecated, indicating long-term abandonment, and exhibits high technical drift as it is no longer maintained or updated to keep pace with its ecosystem. There are no reusable components to highlight, as the repository lacks any source code beyond standard licensing and documentation files.