Releases: AmintaCCCP/GithubStarsManager
v0.6.4
What's Changed
New Features
- Configurable Release Sources: Added Release Sources modal to toggle sources (starred, watched, custom repos), view per-source counts, manage custom/watch repos with add/remove and pagination, and sync watched GitHub repos. Source settings are included in export/import backups and backend auto-sync. (PR #215)
Bug Fixes
- README Fallback: Added direct GitHub API fallback for README content when the backend proxy fails but a frontend GitHub token is available, covering both single and multilingual README scenarios. (PR #214)
- Lint/Build/Typecheck Cleanup: Resolved React hook and Fast Refresh lint warnings; cleaned Vite build warning noise by aligning bundle warning thresholds and Rolldown options; fixed TypeScript errors across store types, backup/import panels, diagnostic log rendering, and markdown code block typing. (PR #217)
Improvements
- Prevent disabling all release sources with a clear error message; custom/watch repos are properly deduplicated and removed consistently. (PR #215)
- Automatic update check on startup that surfaces available updates. (PR #217)
- Fixed backup restore to properly handle backups without encrypted keys. (PR #217)
- Improved diagnostic logs display to correctly show all HTTP-related information. (PR #217)
Full Changelog: v0.6.3...v0.6.4
0.6.3
GitHub Stars Manager 0.6.3
What's new
- Added pre-built backend Docker images published to GHCR, including semantic version tags and
latest, so users can deploy without building locally. The Docker Compose and deployment docs now point to the registry image. (PR #190) - Docker images now support both
linux/amd64andlinux/arm64, making Apple Silicon Macs and ARM servers easier to run. (PR #191) - Added official DeepSeek and MiMo AI provider options, improved endpoint handling, disabled thinking output where appropriate, increased the analysis token budget, and prevented reasoning chains from leaking into repository summaries. (PR #193)
- Added multilingual README detection and switching, including README variant discovery, cached switching, backend proxy support, and a language selector in the README modal. (PR #205)
- Added standardized GitHub issue templates for bug reports and feature requests. (PR #204)
- Added an optional backup/export toggle for including sensitive keys. Keys are excluded by default, masked exports preserve existing secrets on import, and the UI warns when imported data contains masked secrets. (PR #209)
Fixes and improvements
- Reduced UI jank when running AI analysis on repository cards by narrowing state subscriptions, adding immediate local loading state, avoiding redundant repository updates, idle-scheduling persisted-state serialization, and optimizing category filtering. Thanks to external contributor @xinvxueyuan for PR #199.
- Fixed stale search state after manually clearing the repository search input, so sorting and filtering no longer keep using the old query. (PR #202)
- Fixed tooltips remaining visible over README preview modals across repository, discovery, and trending cards. (PR #203)
- Improved AI summary validation so prompt-like or invalid summaries are rejected and retried before being saved. Thanks to external contributor @Chenpeel for PR #208.
- Fixed Markdown code block rendering so inline code and block code are detected more reliably, code blocks preserve layout without unwanted wrapping, and translated code tags keep their attributes. (PR #210)
- Added organization fork support with owner discovery, an owner selector, owner-scoped refresh, filtered counts/search/pagination, better empty states, and tests. (PR #211)
- Fixed AI category sync and README proxy behavior by normalizing nullable custom categories, persisting GitHub tokens for backend README requests, surfacing README proxy errors clearly, restoring code block line numbers, and stripping client Authorization headers from WebDAV proxy requests. (PR #212)
Downloads
- Windows:
GitHub.Stars.Manager.Setup.0.6.3.exe - macOS Intel:
GitHub.Stars.Manager-0.6.3.dmg - macOS Apple Silicon:
GitHub.Stars.Manager-0.6.3-arm64.dmg - Linux:
GitHub.Stars.Manager-0.6.3.AppImage
v0.6.2
v0.6.2 Release Notes
New Features
- Remote RPC Download: Added aria2 remote download integration in Settings > Network. Configure RPC host, port, and optional secret to route release asset downloads to a remote aria2 instance, with connection testing and SSRF protection. (PR #186)
Bug Fixes
- Proxy toggle persistence: Fixed proxy switch in Network Settings reverting after navigating away. Changes are now immediately synced to Zustand store, backend, and Electron process. (PR #185)
- Encryption key normalization: Fixed AI config sync returning 422 when ENCRYPTION_KEY is a 32-char hex string. Keys are now auto-normalized to 32 bytes via SHA-256 derivation. (PR #187)
- AI tag sync preservation: Fixed AI tags disappearing after backend sync. Empty arrays no longer overwrite existing AI analysis data during repository updates. (PR #187)
- RPC secret persistence: Fixed RPC download secret (aria2 --rpc-secret) being lost after app restart by including it in Zustand's IndexedDB persistence. (PR #189)
Downloads
| Platform | File |
|---|---|
| Windows | .exe installer |
| macOS | .dmg installer |
| Linux | .AppImage portable |
v0.6.1
What's Changed
Features
- Diagnostic Logs Panel: Added a dedicated "Diagnostic Logs" settings tab with an in-app log viewer and debug capture mode, replacing the old embedded log export section. Includes frontend/backend debug toggles, event type filtering, real-time log updates, HTTP request details with color-coded status codes, and log management (search, filter, clear, export). (PR #176)
Bug Fixes
- Diagnostic Logs — AI Details & Event Mapping: AI analysis logs now capture detailed request/response content (headers, body preview) across OpenAI, Claude, and Gemini providers. Fixed debug log event type classification with proper operationTag mapping. Level filter pills now show a checkmark when selected. Debug indicator click correctly navigates to the logs tab. (PR #177)
- Release Page Unread Filter: Fixed empty-state icon not centered due to missing space in className. Items in unread-only mode no longer disappear immediately after marking as read — introduced a snapshot-based filtering mechanism that preserves items until the view is refreshed. (PR #178)
- Tooltip Behavior: Fixed tooltips getting stuck on hover by adding a pointermove listener with debounce to detect when the pointer leaves both the trigger and tooltip areas. Fixed two tooltips showing simultaneously on the Trends page by splitting the shared hide timer into independent timers for description and AI summary tooltips. (PR #179)
Full Changelog: v0.6.0...v0.6.1
v0.6.0
v0.6.0 Release Notes
New Features
-
Network Proxy Settings (HTTP/SOCKS5): Added proxy configuration in Settings for Electron client and backend-connected browser modes. Supports HTTP and SOCKS5 protocols with optional username/password authentication. Proxy applies to all external requests (GitHub API, AI providers, WebDAV) but not to backend communication. Includes Electron IPC bridge for session-level proxy via
session.setProxy, and backend proxy config API endpoints (GET/PUT/test). (PR #163) -
Release Filter & Mark All as Read: Replaced the top paginator on the Releases page with a "Show All / Unread Only" dropdown filter. Added a "Mark All as Read" button with local state and backend persistence. Unread mode shows unread count badges, and empty state provides a quick "View All" shortcut. (PR #171)
-
Structured Logging System: Added centralized frontend and backend logging with automatic sensitive data sanitization (tokens, API keys, passwords, emails). Replaced ~100
console.*calls across 17 files with structuredlogger.*calls. New "Log Export" UI in Settings > Data Management allows exporting logs as JSON for AI-powered debugging, with scope and level filters. (PR #172)
Bug Fixes
-
AI API Error Details: AI API error responses (4xx/5xx) now include the full response body for better diagnostics. Backend proxy path correctly extracts nested error messages (e.g., DeepSeek's
error.message). (PR #158) -
AI JSON Parse Errors: Added
sanitizeForPrompt()to clean README and repo description content before inserting into AI prompts. Removes null bytes, control characters, and lone surrogates that caused 400 errors from DeepSeek and similar models. (PR #159) -
AI Config Test CORS Fix: Fixed "Test Connection" button failing with network error for
openai-compatibleendpoints. Form tests now route through the backend proxy when available, even without a saved config ID. (PR #161) -
AI Config Lookup Failure: Fixed "AI config not found" error when testing AI connection from the service list page or using AI analysis in backend mode. Always uses inline config data to avoid configId lookup failures due to sync debounce. (PR #167)
-
AI/WebDAV Config Sync Hardening: Hardened config sync to prevent data loss. Individual encryption failures no longer roll back the entire transaction. All-skipped configs return 422 instead of silently clearing the database. Added retry logic consistent with other sync operations. (PR #168)
-
Tooltip Improvements: Removed unreliable truncation detection - tooltips now always show on hover for repository descriptions. Added description and AI summary tooltips to the Trending page's SubscriptionRepoCard. (PR #170)
-
Default AI Prompt Optimization: Optimized the default AI analysis prompt to reduce models returning their thinking process. Enforced JSON-only output, standardized platform classification with explicit enum values, and added platform detection hints from Dockerfile/CLI markers. (PR #175)
Improvements
- Dockerfile Node.js Upgrade: Upgraded frontend Dockerfile from Node 18 to Node 22 to satisfy Vite's version requirement (20.19+ or 22.12+). (PR #162)
v0.5.9
v0.5.9
New Features
- Show AI analysis failure reason on hover — when analysis fails, a tooltip icon now displays the specific error message (e.g.
AI API error: 401 Unauthorized) (PR #154)
Bug Fixes
- Fix AI search not triggering and no feedback shown when search returns empty results (PR #146 by @hych0317)
- Preserve local repository metadata during backend sync — AI analysis info (summary, tags, platforms) no longer gets overwritten when syncing from backend (PR #147 by @hych0317)
- Add
subscribed_to_releasesto local fields list and fix hash loop write issue from PR #147 (PR #148) - Disable macOS code signing to prevent "app is damaged" Gatekeeper error (PR #152)
- Fix empty
CSC_LINKcausing macOS CI build failure with "not a file" error (PR #155)
CI / Build
- Upgrade GitHub Actions to Node 24-compatible versions (
actions/checkout@v5,setup-node@v5,upload-artifact@v5,download-artifact@v5) (PR #145)
Acknowledgements
Thanks to external contributor @hych0317 for PRs #146 and #147!
Full Changelog: v0.5.8...v0.5.9
v0.5.8
GithubStarsManager v0.5.8
What's Changed
New Features
- Translation skip support: Added
data-translateattribute support to skip specific elements during AI translation. (PR #134 by @SummerRay160)
Bug Fixes
- SQL placeholder crash: Fixed releases sync INSERT statement missing one placeholder (
14 values for 15 columns), causing sync failures. (PR #140 by @iamvicliu) - Settings serialization: Fixed
better-sqlite3RangeError when saving AI/WebDAV config objects — complex values are now properly JSON-serialized. (PR #140 by @iamvicliu) - Gemini thinking model support: Raised
maxTokensto 2048 for Gemini connection tests, extended timeout to 30s for thinking models, and filtered outthought: trueparts from responses. (PR #140 by @iamvicliu) - Sync data loss on refresh: Fixed starred repos disappearing if the page was refreshed within 2 seconds of sync — data is now pushed to backend immediately after fetching. (PR #142 by @iamvicliu)
- Empty backend overwrites local cache: Guard against backend returning empty array silently wiping locally-cached repos — local data is now preserved when backend has nothing. (PR #142 by @iamvicliu)
- MiMo thinking chain: Disabled thinking chain (
thinking: { type: 'disabled' }) for Xiaomi MiMo models to prevent reasoning content from leaking into analysis results. Fixes #127. (PR #143) - Docker sync ERR_CONNECTION_RESET: Added automatic retry with exponential backoff (1s/2s/4s, up to 3 attempts) for transient network errors, increased frontend sync timeout from 30s to 120s, and bumped nginx proxy timeouts to 300s with
proxy_buffering off. Fixes #133. (PR #144)
Acknowledgements
Special thanks to external contributors:
- @SummerRay160 (PR #134) — for the translation skip feature
- @iamvicliu (PR #140, #142) — for the SQL fix, settings serialization, Gemini thinking model support, and sync data-loss guard
Full Changelog: v0.5.7...v0.5.8
v0.5.7
Desktop Application Release v0.5.7
This release includes desktop applications for multiple platforms.
Available Downloads:
- Windows:
.exeinstaller - macOS:
.dmginstaller (Universal + ARM64) - Linux:
.AppImageportable executable
What is New in v0.5.7:
New Forks View (PR #132)
- Added a new "Forks" tab in the top navigation bar between Releases and Trending
- Fork list sorted by upstream repository last update time (descending)
- Refresh button checks for upstream updates and shows unread badge
- Unread badge disappears when user clicks on the repository card or performs any operation
- "Sync Upstream" button calls GitHub merge upstream API to sync Fork with upstream
- Expandable workflows per fork with status indicators, Run actions, and per-fork running indicators
- Sync upstream action with progress and localized success/error notifications
Full Changelog: v0.5.6...v0.5.7
v0.5.6
Changelog
Bug Fixes
-
Fix: Gemini channel API endpoint URL display issue — selecting Gemini type now auto-fills the official default endpoint and constructs the correct
v1beta/models/{model}:generateContentpath automatically. (PR #123) -
Fix: Complete Release sync mechanism — incremental sync for existing repos, paginated fetching of up to 30 releases per repo, rate limit handling with automatic wait, pre-release toggle with persisted preference, and failure count summary after refresh. (PR #129)
Feature
-
Feat: UI refactor with light mode improvements — enhanced focus rings, textarea scrolling/resize behavior, mobile typography, custom scrollbars, and improved tooltip readability in light mode. Added configurable font sizes for rendered content. (PR #128, contribution by @SummerRay160)
-
Feat: Bilingual README viewer with translate/revert controls — three display modes (original/translated/bilingual), per-heading translation support, auto-translate option, retry/abort flows, and robust handling for large documents. (PR #130, contribution by @SummerRay160)
Special Thanks
- Special thanks to @SummerRay160 for their outstanding contributions to this release!
Full Changelog: v0.5.5...v0.5.6
0.5.5
Desktop Application Release
This release includes desktop applications for multiple platforms.
Available Downloads:
- Windows:
.exeinstaller - macOS:
.dmginstaller - Linux:
.AppImageportable executable
Note: Some platform builds may not be available if they failed during the build process.
Changelog
Bug Fixes
-
Update Dialog Portal Fix: Fixed the update dialog backdrop mask being trapped inside the overflow container. The dialog now renders via React Portal at the document body level with proper z-index stacking. Added click-on-mask-to-dismiss behavior for better UX.
-
Banner Layout Improvements: Fixed banner button wrapping on narrow viewports. Removed invalid Tailwind classes and improved responsive layout with proper flex behavior, ensuring buttons stay on a single line and text truncates gracefully.
-
Electron Focus Hijacking Fix: Replaced native
alert()/confirm()dialogs with custom React components (Toast and ConfirmDialog). This resolves the focus trapping issue in Electron where clicking "OK" to close dialogs would leave input elements unfocusable until Alt+Tab window switching. -
Category Lock Toggle Visibility: Improved the category lock toggle color differentiation in dark mode. Unlocked state now uses a visible gray-600 color, while locked state remains in amber. Both states are now clearly distinguishable in both light and dark modes.
Improvements
-
AI Connection Test Enhancements: AI connection test now returns detailed, user-facing results including status and guidance messages.
-
AI Configuration Error Handling: AI analysis now properly blocks execution when API keys are empty or cannot be decrypted, preventing failed runs. Bulk AI config import now gracefully skips entries without usable keys and logs skipped items with reasons.
-
Unified Error Messages: Consolidated and clarified error messages for AI configuration failures across the UI.
-
UI Polish: Tweaks to markdown image error/loading states and GitHub link dark-mode styling.
Special Thanks
We want to extend a huge thank you to @SummerRay160 for their outstanding contributions to this release! Their work on AI configuration error handling and UI improvements has significantly enhanced the user experience.
Full Changelog: v0.5.4...v0.5.5