├── .gitignore ├── AltStore.json ├── BitClient.xcodeproj ├── project.pbxproj ├── project.xcworkspace │ ├── contents.xcworkspacedata │ └── xcshareddata │ │ ├── IDEWorkspaceChecks.plist │ │ └── swiftpm │ │ └── Package.resolved └── xcshareddata │ └── xcschemes │ └── BitClient.xcscheme ├── BitClient ├── Assets.xcassets │ ├── AppIcon.appiconset │ │ ├── Contents.json │ │ ├── icon-1024.png │ │ ├── icon-20-ipad.png │ │ ├── icon-20@2x-ipad.png │ │ ├── icon-20@2x.png │ │ ├── icon-20@3x.png │ │ ├── icon-29-ipad.png │ │ ├── icon-29.png │ │ ├── icon-29@2x-ipad.png │ │ ├── icon-29@2x.png │ │ ├── icon-29@3x.png │ │ ├── icon-40.png │ │ ├── icon-40@2x.png │ │ ├── icon-40@3x.png │ │ ├── icon-60@2x.png │ │ ├── icon-60@3x.png │ │ ├── icon-76.png │ │ ├── icon-76@2x.png │ │ └── icon-83.5@2x.png │ ├── Contents.json │ └── logo.imageset │ │ ├── Contents.json │ │ ├── Icon-1.png │ │ ├── Icon-2.png │ │ └── Icon.png ├── Assets │ └── Illustration │ │ └── empty.svg ├── BitClientApp.swift ├── Colors.xcassets │ ├── Contents.json │ └── lightGreyColor.colorset │ │ └── Contents.json ├── Info.plist ├── Manager │ ├── Message.swift │ ├── NetworkApi.swift │ ├── NetworkManager.swift │ └── UtilsManager.swift ├── Model │ ├── BitService.swift │ ├── Maindata.swift │ └── PreferenceData.swift ├── Preview Content │ └── Preview Assets.xcassets │ │ └── Contents.json ├── Resources │ └── Localization │ │ ├── Constants.swift │ │ ├── Constants │ │ ├── en.lproj │ │ │ └── Constants_Localizable.strings │ │ ├── ru.lproj │ │ │ └── Constants_Localizable.strings │ │ ├── zh-Hans.lproj │ │ │ └── Constants_Localizable.strings │ │ └── zh-Hant.lproj │ │ │ └── Constants_Localizable.strings │ │ └── Localize.swift ├── View │ ├── About │ │ ├── AboutNavigationBar.swift │ │ └── AboutView.swift │ ├── AddTorrent │ │ └── AddTorrentView.swift │ ├── Home │ │ ├── HomeNavigationBar.swift │ │ ├── HomeView.swift │ │ └── TorrentItem.swift │ ├── Login │ │ └── LoginView.swift │ ├── Service │ │ ├── ServiceEditView.swift │ │ ├── ServiceNavigationBar.swift │ │ └── ServiceView.swift │ └── Tips │ │ ├── ListEmptyTipView.swift │ │ ├── LoadingSkeletonView.swift │ │ ├── NoServiceTipView.swift │ │ └── ServiceOfflineTipView.swift └── ViewModel │ ├── AddTorrentLinkFormModel.swift │ ├── AppState.swift │ ├── BitClientAppViewModel.swift │ └── ServiceEditViewModel.swift ├── CHANGELOG.md ├── CLAUDE.md ├── LICENSE └── README.md /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/.gitignore -------------------------------------------------------------------------------- /AltStore.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/AltStore.json -------------------------------------------------------------------------------- /BitClient.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /BitClient.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /BitClient.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /BitClient.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved -------------------------------------------------------------------------------- /BitClient.xcodeproj/xcshareddata/xcschemes/BitClient.xcscheme: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient.xcodeproj/xcshareddata/xcschemes/BitClient.xcscheme -------------------------------------------------------------------------------- /BitClient/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /BitClient/Assets.xcassets/AppIcon.appiconset/icon-1024.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Assets.xcassets/AppIcon.appiconset/icon-1024.png -------------------------------------------------------------------------------- /BitClient/Assets.xcassets/AppIcon.appiconset/icon-20-ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Assets.xcassets/AppIcon.appiconset/icon-20-ipad.png -------------------------------------------------------------------------------- /BitClient/Assets.xcassets/AppIcon.appiconset/icon-20@2x-ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Assets.xcassets/AppIcon.appiconset/icon-20@2x-ipad.png -------------------------------------------------------------------------------- /BitClient/Assets.xcassets/AppIcon.appiconset/icon-20@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Assets.xcassets/AppIcon.appiconset/icon-20@2x.png -------------------------------------------------------------------------------- /BitClient/Assets.xcassets/AppIcon.appiconset/icon-20@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Assets.xcassets/AppIcon.appiconset/icon-20@3x.png -------------------------------------------------------------------------------- /BitClient/Assets.xcassets/AppIcon.appiconset/icon-29-ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Assets.xcassets/AppIcon.appiconset/icon-29-ipad.png -------------------------------------------------------------------------------- /BitClient/Assets.xcassets/AppIcon.appiconset/icon-29.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Assets.xcassets/AppIcon.appiconset/icon-29.png -------------------------------------------------------------------------------- /BitClient/Assets.xcassets/AppIcon.appiconset/icon-29@2x-ipad.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Assets.xcassets/AppIcon.appiconset/icon-29@2x-ipad.png -------------------------------------------------------------------------------- /BitClient/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Assets.xcassets/AppIcon.appiconset/icon-29@2x.png -------------------------------------------------------------------------------- /BitClient/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Assets.xcassets/AppIcon.appiconset/icon-29@3x.png -------------------------------------------------------------------------------- /BitClient/Assets.xcassets/AppIcon.appiconset/icon-40.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Assets.xcassets/AppIcon.appiconset/icon-40.png -------------------------------------------------------------------------------- /BitClient/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Assets.xcassets/AppIcon.appiconset/icon-40@2x.png -------------------------------------------------------------------------------- /BitClient/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Assets.xcassets/AppIcon.appiconset/icon-40@3x.png -------------------------------------------------------------------------------- /BitClient/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Assets.xcassets/AppIcon.appiconset/icon-60@2x.png -------------------------------------------------------------------------------- /BitClient/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Assets.xcassets/AppIcon.appiconset/icon-60@3x.png -------------------------------------------------------------------------------- /BitClient/Assets.xcassets/AppIcon.appiconset/icon-76.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Assets.xcassets/AppIcon.appiconset/icon-76.png -------------------------------------------------------------------------------- /BitClient/Assets.xcassets/AppIcon.appiconset/icon-76@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Assets.xcassets/AppIcon.appiconset/icon-76@2x.png -------------------------------------------------------------------------------- /BitClient/Assets.xcassets/AppIcon.appiconset/icon-83.5@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Assets.xcassets/AppIcon.appiconset/icon-83.5@2x.png -------------------------------------------------------------------------------- /BitClient/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /BitClient/Assets.xcassets/logo.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Assets.xcassets/logo.imageset/Contents.json -------------------------------------------------------------------------------- /BitClient/Assets.xcassets/logo.imageset/Icon-1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Assets.xcassets/logo.imageset/Icon-1.png -------------------------------------------------------------------------------- /BitClient/Assets.xcassets/logo.imageset/Icon-2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Assets.xcassets/logo.imageset/Icon-2.png -------------------------------------------------------------------------------- /BitClient/Assets.xcassets/logo.imageset/Icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Assets.xcassets/logo.imageset/Icon.png -------------------------------------------------------------------------------- /BitClient/Assets/Illustration/empty.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Assets/Illustration/empty.svg -------------------------------------------------------------------------------- /BitClient/BitClientApp.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/BitClientApp.swift -------------------------------------------------------------------------------- /BitClient/Colors.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Colors.xcassets/Contents.json -------------------------------------------------------------------------------- /BitClient/Colors.xcassets/lightGreyColor.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Colors.xcassets/lightGreyColor.colorset/Contents.json -------------------------------------------------------------------------------- /BitClient/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Info.plist -------------------------------------------------------------------------------- /BitClient/Manager/Message.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Manager/Message.swift -------------------------------------------------------------------------------- /BitClient/Manager/NetworkApi.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Manager/NetworkApi.swift -------------------------------------------------------------------------------- /BitClient/Manager/NetworkManager.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Manager/NetworkManager.swift -------------------------------------------------------------------------------- /BitClient/Manager/UtilsManager.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Manager/UtilsManager.swift -------------------------------------------------------------------------------- /BitClient/Model/BitService.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Model/BitService.swift -------------------------------------------------------------------------------- /BitClient/Model/Maindata.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Model/Maindata.swift -------------------------------------------------------------------------------- /BitClient/Model/PreferenceData.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Model/PreferenceData.swift -------------------------------------------------------------------------------- /BitClient/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Preview Content/Preview Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /BitClient/Resources/Localization/Constants.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Resources/Localization/Constants.swift -------------------------------------------------------------------------------- /BitClient/Resources/Localization/Constants/en.lproj/Constants_Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Resources/Localization/Constants/en.lproj/Constants_Localizable.strings -------------------------------------------------------------------------------- /BitClient/Resources/Localization/Constants/ru.lproj/Constants_Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Resources/Localization/Constants/ru.lproj/Constants_Localizable.strings -------------------------------------------------------------------------------- /BitClient/Resources/Localization/Constants/zh-Hans.lproj/Constants_Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Resources/Localization/Constants/zh-Hans.lproj/Constants_Localizable.strings -------------------------------------------------------------------------------- /BitClient/Resources/Localization/Constants/zh-Hant.lproj/Constants_Localizable.strings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Resources/Localization/Constants/zh-Hant.lproj/Constants_Localizable.strings -------------------------------------------------------------------------------- /BitClient/Resources/Localization/Localize.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/Resources/Localization/Localize.swift -------------------------------------------------------------------------------- /BitClient/View/About/AboutNavigationBar.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/View/About/AboutNavigationBar.swift -------------------------------------------------------------------------------- /BitClient/View/About/AboutView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/View/About/AboutView.swift -------------------------------------------------------------------------------- /BitClient/View/AddTorrent/AddTorrentView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/View/AddTorrent/AddTorrentView.swift -------------------------------------------------------------------------------- /BitClient/View/Home/HomeNavigationBar.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/View/Home/HomeNavigationBar.swift -------------------------------------------------------------------------------- /BitClient/View/Home/HomeView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/View/Home/HomeView.swift -------------------------------------------------------------------------------- /BitClient/View/Home/TorrentItem.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/View/Home/TorrentItem.swift -------------------------------------------------------------------------------- /BitClient/View/Login/LoginView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/View/Login/LoginView.swift -------------------------------------------------------------------------------- /BitClient/View/Service/ServiceEditView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/View/Service/ServiceEditView.swift -------------------------------------------------------------------------------- /BitClient/View/Service/ServiceNavigationBar.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/View/Service/ServiceNavigationBar.swift -------------------------------------------------------------------------------- /BitClient/View/Service/ServiceView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/View/Service/ServiceView.swift -------------------------------------------------------------------------------- /BitClient/View/Tips/ListEmptyTipView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/View/Tips/ListEmptyTipView.swift -------------------------------------------------------------------------------- /BitClient/View/Tips/LoadingSkeletonView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/View/Tips/LoadingSkeletonView.swift -------------------------------------------------------------------------------- /BitClient/View/Tips/NoServiceTipView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/View/Tips/NoServiceTipView.swift -------------------------------------------------------------------------------- /BitClient/View/Tips/ServiceOfflineTipView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/View/Tips/ServiceOfflineTipView.swift -------------------------------------------------------------------------------- /BitClient/ViewModel/AddTorrentLinkFormModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/ViewModel/AddTorrentLinkFormModel.swift -------------------------------------------------------------------------------- /BitClient/ViewModel/AppState.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/ViewModel/AppState.swift -------------------------------------------------------------------------------- /BitClient/ViewModel/BitClientAppViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/ViewModel/BitClientAppViewModel.swift -------------------------------------------------------------------------------- /BitClient/ViewModel/ServiceEditViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/BitClient/ViewModel/ServiceEditViewModel.swift -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /CLAUDE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/CLAUDE.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/AlanLang/BitClient/HEAD/README.md --------------------------------------------------------------------------------