LeetaoGoooo/RSSAid
62.6
Adequate · 19 September 2026
2.8k
lines of production code
Dart
primary language
1
measurement over time
What this system is
RSSAid is a cross-platform companion application for RSSHub, designed to help users discover, subscribe to, and manage RSS feeds through a unified interface. It features a rule-based detection engine that automatically identifies RSS sources from URLs, with specific support for platforms like Weibo, and allows users to configure detailed filtering and subscription parameters. The system supports multiple platforms including Android, macOS, and web (as a PWA), and integrates with external services via share intents and clipboard operations.
How it got here
2020 — RSSAid initial release and Flutter 3.0 migration
11 changes.
This period marks the initial public release of RSSAid, a Flutter-based companion app for RSSHub, rebuilt on Flutter 3.0 with Material Design 3 theming. The work involved a complete architectural shift from the previous codebase, including the removal of iOS support and legacy Redux state management, while introducing new data models, utility functions, and a fully internationalized user interface.
2021–2024 — multi-platform expansion and localization
6 changes.
The project expanded its reach by adding native macOS and web (PWA) support to the Flutter application, alongside comprehensive English and Chinese localization. Concurrently, the Radar module was enhanced with a rule-based detection engine for Weibo, and new UI components were introduced to improve access control and error handling. Initial CI/CD automation via Fastlane was also established to streamline Android releases.
Features
Add macOS platform support for the Flutter application
This change introduces the macOS target for the app, adding the necessary Xcode project structure, Swift entry points (AppDelegate and MainFlutterWindow), and configuration files. It registers core Flutter plugins—including in-app web view, package info, path provider, share, shared preferences, and URL launcher—ensuring the application can build and run on macOS with appropriate sandbox entitlements and build settings.
macos · high confidence
Added English and Chinese language support
The application now supports English and Chinese (Simplified and Traditional) locales. This change introduces the localization infrastructure (ARB files and generated Dart localizations) and provides translated strings for core UI elements, including configuration settings, rule management, clipboard operations, and general navigation.
lib/l10n · high confidence
Added web entry point and PWA manifest for the rssaid app
The web build now includes the necessary \index.html\ and \manifest.json\ files to serve the Flutter application. The HTML file configures the base path, sets up iOS-specific meta tags and icons, and registers the service worker to enable Progressive Web App (PWA) functionality. The manifest defines the app name, theme colors, and icon assets required for installation on mobile devices.
web · high confidence
Initial application structure with Material 3 theming and localization
The application has been replaced with a new Flutter implementation (RSSAidApp) that initializes shared preferences, applies a custom Material 3 color scheme (defined in theme.dart) for both light and dark modes, and enables internationalization for English and Chinese. The entry point now sets up the OKToast library and configures system UI overlays, replacing the previous generic Flutter demo scaffold.
lib · high confidence
Initial fastlane configuration for Android automation
Added fastlane configuration files (Appfile and Fastfile) to enable automated Android build and release workflows. The setup defines lanes for running tests, submitting beta builds via Crashlytics, and deploying new versions to the Google Play Store, establishing the foundation for CI/CD integration.
fastlane · high confidence
Initial release of RSSAid with Flutter 3.0 and Material Design 3
This entry marks the initial public release of RSSAid, a Flutter-based companion app for RSSHub that helps users discover and subscribe to RSS feeds. The application has been rebuilt on Flutter 3.0.0 (upgraded from the previous 1.22.4 version) and now features a Material Design 3 interface. Key capabilities include detecting RSSHub sources from URLs, supporting mobile-only URL expansion, importing URLs from the clipboard, quick subscription, customizable general parameters and RSSHub servers, automatic updates of RSSHub Radar rules, and support for Weibo and RSS+ rules. The app is available on F-Droid and GitHub releases, with full English and Chinese documentation provided.
(repo-wide) · high confidence
Initial release of the RSSAid Flutter application UI
This change introduces the core user interface for the RSSAid application, adding the main views for configuration, home, rules, and settings. Users can now access a settings page to manage RSSHub domains and view app version information, a home page that detects URLs from share intents or clipboard to fetch RSS feeds via Radar rules, a configuration dialog to filter content (by title, author, time, etc.) and adjust options like case sensitivity and Sci-Hub link inclusion, and a rules viewer to inspect and refresh the underlying parsing rules. The UI is fully internationalized using AppLocalizations and persists user preferences via SharedPrefs.
lib/views · high confidence
New UI components for access control, 404 handling, and radar cards
Added three new view components to the application: AccessControlWidget, which provides a toggleable switch and input field for managing access keys stored in shared preferences; NotFound, a dedicated 404 page displaying localized error messages and buttons to submit new RSS rules or contact support; and RadarCards, which renders individual radar items with a popup menu allowing users to copy subscription URLs to the clipboard or share them directly.
lib/views/components · high confidence
New common utilities for network proxying, rule fetching, and link handling
Added lib/common/common.dart and lib/common/link\_helper.dart to provide core utility functions. common.dart introduces automatic system proxy detection for HTTP requests, a multi-source fallback strategy for fetching RSSHub radar rules (network, local cache, bundled assets), and in-memory caching to optimize rule parsing performance. link\_helper.dart adds URL normalization by removing duplicate slashes and helper methods for verifying and constructing subscription URLs based on user preferences.
lib/common · high confidence
New rule-based RSS detection and Weibo support in Radar
The radar module now includes a new rule-based detection engine (lib/radar) that supports RSSHub-style path matching and specific handling for Weibo (detecting hot searches and user feeds). This change introduces new classes for parsing rules (Rule, PageInfo, Rules), a SourceParser for URL transformation, and a WeiboStrategy, enabling the app to automatically discover RSS feeds on Weibo and other sites using configurable rules rather than only static HTML link scanning.
lib/radar · high confidence
Removals
Removal of legacy Redux state and store files
The \radar\_state.dart\ and \store.dart\ files within the \lib/redux\ directory have been deleted. This change removes the previously defined Redux state and store implementations, indicating a shift away from this specific state management structure in the application.
lib/redux · high confidence
iOS project structure removed
The entire iOS native project directory has been deleted, including the Xcode project file, workspace, build configurations, app icon assets, launch screens, and source code. This indicates the application is no longer supported on iOS or has been migrated to a different platform.
ios · high confidence
Behavioural changes
Android app renamed to Rssaid with share-intent support
The Android application package and label have been changed from 'rssbud' to 'rssaid', and the main activity has been updated to handle incoming share intents (SEND action with text/\* MIME type), allowing users to share text content directly into the app. Additionally, the READ\_EXTERNAL\_STORAGE permission was added, and the AndroidManifest was updated to include the required queries block for text processing compatibility.
android/app · high confidence
Refactored data models for Radar and configuration handling
The application's data layer has been restructured to support more granular configuration and rule-based processing. The previous monolithic \Config\ model was removed and replaced with a new \RadarConfig\ class that supports detailed filtering (by title, description, author, time), case sensitivity, output limits, and RSS format selection. A new \Rule\ model was introduced to define source-to-target mapping logic, including position replacement rules. Additionally, the \Radar\ model was updated to use the \equatable\ package for value-based equality and now explicitly tracks whether a source is an RSSHub instance, while the old \Config\ fields like \tgiv\ were dropped.
lib/models · high confidence
Test coverage
Added tests for SourceParser and removed default widget test
Added a new test file \test/radar/test\_source\_parser.dart\ that includes test cases for the \SourceParser\ class (specifically verifying \getPosition\ with a GitHub URL) and for the \RssHub\ class (including a test for translating GitHub addresses with a comprehensive set of rules). Removed the default Flutter \widget\_test.dart\ which previously tested a counter increment in \MyApp\.
test · high confidence
Dependencies
Android build toolchain upgraded to AGP 8.x and Kotlin 2.x with Flutter plugin migration
The Android build configuration has been modernized to support Android Gradle Plugin 8.9.1 and Kotlin 2.1.0, migrating from the legacy \apply plugin\ DSL to the plugins block and adopting the new \dev.flutter.flutter-gradle-plugin\. This upgrade requires a namespace declaration in the app module, sets Java/Kotlin compilation to version 17, and introduces product flavors for GitHub and F-Droid deployments with distinct signing configurations. Additionally, the project's Dart dependencies have been significantly updated, including \share\_plus\ to v10.1.4, \intl\ to v0.20.2, and the addition of packages like \clipboard\, \linkify\, and \any\_link\_preview\, while the app name and package ID have been updated to reflect the 'rssaid' identity.
(dependencies) · high confidence
Gradle build toolchain upgraded to version 8.11.1
The Android build system now uses Gradle 8.11.1 (upgraded from 5.6.2) via the wrapper configuration. This update ensures compatibility with modern Android development tools and may require a fresh Gradle download on first build.
android/gradle · high confidence
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
How this codebase got here
Baseline
- First survey — no prior run to compare against. CAI 63.
Lenses
- Code Health 95
- Architecture 93
- Maturity 54
- Readiness 55
- Security 72
- Domain Modelling 100
Changes since last survey
- 163 commits — 129 feature/other, 34 fixes
By area
- (root) — 74 commits
- .github/workflows — 18 commits
- android/app — 14 commits
- (repo) — 10 commits
- assets/js — 9 commits
- lib/radar — 8 commits
- ios/Runner — 7 commits
- fastlane/metadata — 6 commits
- lib/views — 4 commits
- lib/main.dart — 3 commits
- android/build.gradle — 2 commits
- lib/redux — 2 commits
- .vscode/launch.json — 1 commit
- android/gradle — 1 commit
- changelogs/3.0.2.txt — 1 commit
- changelogs/3.0.9.txt — 1 commit
- lib/common — 1 commit
- lib/l10n — 1 commit
Notable commits
- fix: Fix some UI errors (#1)
- fix: Minor fix
- fix: chore: release v3.0.6+16 with share_plus migration and system_proxy fix
- fix: chore: release v3.0.8+18 to fix F-Droid bot metadata alignment
- fix: chore: release v3.0.9+19 - fix settings gray screen and update build toolchain
- fix: feat 支持微博三方客户端 see && fix #10
- fix: fix #12 支持微博博主&&热搜
- fix: fix #13
- fix: fix #14
- fix: fix #29 remove duplicated slashes (#49)
- fix: fix #45 material design 3 refactor (#48)
- fix: fix #56 new theme for RSSAid (#57)
- fix: fix #66
- fix: fix Android下设置页面布局异常
- fix: fix build error
- fix: fix build error
- fix: fix github action
- fix: fix 代理问题
- fix: fix 修复代理问题&&支持语雀、tg等link
- fix: fix 修复链接问题 feat 完善 rss + 规则
- …and 143 more
Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.
Survey your own repository
LeetaoGoooo/RSSAid was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.
About this page
- The score is its most recent published measurement, taken on 19 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
- Measured at commit 35a156275f3b90f09a88b6d5405a9750856f90a2 — the exact code this score is about.
- Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
- Measured by watchdog.canine.dev using codehealth-analyzer preprod-13a154b7f5d1.