feat: add in-app update checker, enhance About page and project metadata

- Add AtlasUpdateChecker with GitHub Releases API integration
- Add AtlasVersionComparator for semantic version comparison
- Add AboutUpdateToolbarButton with popover update UI
- Enhance AboutFeatureView with social QR codes and layout refinements
- Add CHANGELOG.md and CODE_OF_CONDUCT.md
- Rebrand project files from Mole to Atlas for Mac
- Update build script to support version/build number injection
- Add installation guide to README
- Add bilingual localization strings for update feature
- Add unit tests for update checker and version comparator
This commit is contained in:
zhukang
2026-03-11 20:07:26 +08:00
parent 0a9d47027b
commit d3ca6d18dc
34 changed files with 1143 additions and 327 deletions

27
CHANGELOG.md Normal file
View File

@@ -0,0 +1,27 @@
# Changelog
All notable changes to Atlas for Mac will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/).
## [Unreleased]
### Added
- Native macOS app with 7 MVP modules: Overview, Smart Clean, Apps, History, Recovery, Permissions, Settings
- Recovery-first cleanup workflow — actions are reversible via Trash before permanent deletion
- Explainable recommendations — every suggestion shows reasoning before execution
- Bilingual UI: Simplified Chinese (default) and English, with persistent language preference
- AtlasDesignSystem shared design tokens: brand colors (teal/mint), typography, 4pt spacing grid, continuous corner radius
- Layered Swift Package architecture with strict dependency direction
- XPC worker architecture for sandboxed operations
- Privileged helper for elevated operations requiring administrator access
- Keyboard navigation and command shortcuts for the main shell
- Accessibility semantics and stable UI-automation identifiers
- Native packaging: `.app`, `.zip`, `.dmg`, `.pkg` artifact generation
- Go-based TUI tools inherited from upstream Mole: disk analyzer (`analyze`) and system monitor (`status`)
- CI/CD: GitHub Actions for formatting, linting, testing, CodeQL scanning, and release packaging
### Attribution
- Built in part on the open-source [Mole](https://github.com/tw93/mole) project (MIT) by tw93 and contributors