├── .gitignore ├── AppStore_com.apps-fab.exercism.Exercism.mobileprovision ├── CONTRIBUTING.md ├── Exercism.xcodeproj ├── project.pbxproj ├── project.xcworkspace │ ├── contents.xcworkspacedata │ └── xcshareddata │ │ ├── IDEWorkspaceChecks.plist │ │ └── swiftpm │ │ └── Package.resolved └── xcshareddata │ └── xcschemes │ └── Exercism.xcscheme ├── Exercism ├── AsyncModel.swift ├── Authentication │ ├── AuthenticationViewModel.swift │ └── LoginView.swift ├── Color.xcassets │ └── lightGold.colorset │ │ └── Contents.json ├── Common │ ├── ExercismButton.swift │ ├── ExercismTextField.swift │ ├── RoundedView.swift │ └── TestRunExt.swift ├── EmptyStateView.swift ├── ExerciseList │ ├── CustomPicker.swift │ ├── ExerciseGridView.swift │ ├── ExerciseListViewModel.swift │ ├── ExercisesList.swift │ └── ExercisesListViewModel.swift ├── Exercises │ ├── CompleteSolutionContentView.swift │ ├── EditorActionsViewModel.swift │ ├── ExerciseEditorView.swift │ ├── ExerciseEditorWindowView.swift │ ├── ExerciseRightSidebarView.swift │ ├── ExerciseViewModel.swift │ ├── InstructionView.swift │ ├── Results │ │ ├── CollapsibleTestDetailView.swift │ │ ├── NoTestRunView.swift │ │ ├── ResultView.swift │ │ ├── TestErrored.swift │ │ ├── TestGroup.swift │ │ ├── TestGroupedByTaskList.swift │ │ ├── TestPassed.swift │ │ ├── TestRunProgress.swift │ │ ├── TestRunResultView.swift │ │ └── TestRunSummaryHeader.swift │ ├── TestsView.swift │ └── model │ │ ├── ExerciseFile.swift │ │ ├── ExerciseItem.swift │ │ └── ExerciseModelResponse.swift ├── Exercism.entitlements ├── ExercismSettings.swift ├── Info.plist ├── Models │ ├── AlertModel.swift │ ├── AppSettings.swift │ ├── Fetcher.swift │ ├── NavigationModel.swift │ ├── SettingsData.swift │ └── SettingsModel.swift ├── Preview Content │ └── Preview Assets.xcassets │ │ └── Contents.json ├── ProfileTableView.swift ├── SideBar.swift ├── Streak │ ├── Streak.swift │ ├── StreakManager.swift │ ├── StreakPersistence.swift │ └── StreakView.swift ├── SyntaxHighlighter │ ├── SplashCodeSyntaxHighlighter.swift │ └── TextOutputFormat.swift ├── TrackRowView.swift ├── Tracks │ ├── FilterTableView.swift │ ├── FilterView.swift │ ├── TrackGridView.swift │ ├── TrackViewModel.swift │ └── TracksListView.swift └── Util │ ├── AppDelegate.swift │ ├── Assets.xcassets │ ├── AccentColor.colorset │ │ └── Contents.json │ ├── AppIcon.appiconset │ │ ├── Contents.json │ │ ├── icon_1024@2x 1.png │ │ ├── icon_1024@2x.png │ │ ├── icon_128@2x.png │ │ ├── icon_16@2x.png │ │ ├── icon_256@2x 1.png │ │ ├── icon_256@2x.png │ │ ├── icon_32@2x 1.png │ │ ├── icon_32@2x.png │ │ ├── icon_512@2x 1.png │ │ ├── icon_512@2x.png │ │ └── resized_icon_64x64_high_quality.png │ ├── Contents.json │ ├── concept.imageset │ │ ├── Contents.json │ │ └── concepts-982e268a7b685697712765d69d08e624c07a611a.png │ ├── exercise.imageset │ │ ├── Contents.json │ │ └── exercises-8a7df249fbfb76cc18efbbee844d9bd742830404.png │ ├── exercodeLogo.imageset │ │ ├── Contents.json │ │ ├── Exercode Logo.jpg │ │ ├── Exercode Logo@2x 1.png │ │ └── Exercode Logo@2x.png │ ├── mainLogo.imageset │ │ ├── Contents.json │ │ └── mainLogo.png │ ├── publishImage.imageset │ │ ├── Contents.json │ │ └── publishImage.svg │ ├── publishMan.imageset │ │ ├── Contents.json │ │ └── publishMan.svg │ ├── stars.imageset │ │ ├── Contents.json │ │ └── stars-177307daf819c6853a74d5ba1d0c681f5b8f7ca3.png │ └── trackImages.imageset │ │ ├── Contents.json │ │ └── trackImages.png │ ├── Color.xcassets │ ├── Contents.json │ ├── appAccent.colorset │ │ └── Contents.json │ ├── appDarkBackground.colorset │ │ └── Contents.json │ ├── appLightGold.colorset │ │ └── Contents.json │ ├── appOffBlackShadow.colorset │ │ └── Contents.json │ ├── appOffWhiteShadow.colorset │ │ └── Contents.json │ └── appPrimaryBackground.colorset │ │ └── Contents.json │ ├── ContentView.swift │ ├── CustomTabView.swift │ ├── Date+Exercism.swift │ ├── ExercismApp.swift │ ├── Images.swift │ ├── KeychainHelper.swift │ ├── Localizable.xcstrings │ ├── MainWindow.swift │ ├── NSNotification.swift │ ├── PreviewData.swift │ ├── SelectedTab.swift │ ├── Strings.swift │ ├── Tags.json │ ├── ViewUtils.swift │ └── WindowCommands │ ├── ExercismCommands.swift │ ├── MainCommands.swift │ ├── ViewCommands.swift │ └── WindowCommands.swift ├── ExercodeTests ├── AuthTests.swift ├── EditorActionsTests.swift ├── ExerciseEditorTests.swift ├── ExerciseListViewModelTests.swift ├── MockExercismClient.swift ├── MockFetcher.swift ├── StreakManagerTests.swift └── TrackViewModelTests.swift ├── LICENSE ├── README.md ├── doc └── 01-dependencies.md └── project.xcconfig /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/.gitignore -------------------------------------------------------------------------------- /AppStore_com.apps-fab.exercism.Exercism.mobileprovision: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/AppStore_com.apps-fab.exercism.Exercism.mobileprovision -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /Exercism.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /Exercism.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /Exercism.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /Exercism.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved -------------------------------------------------------------------------------- /Exercism.xcodeproj/xcshareddata/xcschemes/Exercism.xcscheme: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism.xcodeproj/xcshareddata/xcschemes/Exercism.xcscheme -------------------------------------------------------------------------------- /Exercism/AsyncModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/AsyncModel.swift -------------------------------------------------------------------------------- /Exercism/Authentication/AuthenticationViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Authentication/AuthenticationViewModel.swift -------------------------------------------------------------------------------- /Exercism/Authentication/LoginView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Authentication/LoginView.swift -------------------------------------------------------------------------------- /Exercism/Color.xcassets/lightGold.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Color.xcassets/lightGold.colorset/Contents.json -------------------------------------------------------------------------------- /Exercism/Common/ExercismButton.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Common/ExercismButton.swift -------------------------------------------------------------------------------- /Exercism/Common/ExercismTextField.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Common/ExercismTextField.swift -------------------------------------------------------------------------------- /Exercism/Common/RoundedView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Common/RoundedView.swift -------------------------------------------------------------------------------- /Exercism/Common/TestRunExt.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Common/TestRunExt.swift -------------------------------------------------------------------------------- /Exercism/EmptyStateView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/EmptyStateView.swift -------------------------------------------------------------------------------- /Exercism/ExerciseList/CustomPicker.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/ExerciseList/CustomPicker.swift -------------------------------------------------------------------------------- /Exercism/ExerciseList/ExerciseGridView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/ExerciseList/ExerciseGridView.swift -------------------------------------------------------------------------------- /Exercism/ExerciseList/ExerciseListViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/ExerciseList/ExerciseListViewModel.swift -------------------------------------------------------------------------------- /Exercism/ExerciseList/ExercisesList.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/ExerciseList/ExercisesList.swift -------------------------------------------------------------------------------- /Exercism/ExerciseList/ExercisesListViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/ExerciseList/ExercisesListViewModel.swift -------------------------------------------------------------------------------- /Exercism/Exercises/CompleteSolutionContentView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Exercises/CompleteSolutionContentView.swift -------------------------------------------------------------------------------- /Exercism/Exercises/EditorActionsViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Exercises/EditorActionsViewModel.swift -------------------------------------------------------------------------------- /Exercism/Exercises/ExerciseEditorView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Exercises/ExerciseEditorView.swift -------------------------------------------------------------------------------- /Exercism/Exercises/ExerciseEditorWindowView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Exercises/ExerciseEditorWindowView.swift -------------------------------------------------------------------------------- /Exercism/Exercises/ExerciseRightSidebarView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Exercises/ExerciseRightSidebarView.swift -------------------------------------------------------------------------------- /Exercism/Exercises/ExerciseViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Exercises/ExerciseViewModel.swift -------------------------------------------------------------------------------- /Exercism/Exercises/InstructionView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Exercises/InstructionView.swift -------------------------------------------------------------------------------- /Exercism/Exercises/Results/CollapsibleTestDetailView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Exercises/Results/CollapsibleTestDetailView.swift -------------------------------------------------------------------------------- /Exercism/Exercises/Results/NoTestRunView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Exercises/Results/NoTestRunView.swift -------------------------------------------------------------------------------- /Exercism/Exercises/Results/ResultView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Exercises/Results/ResultView.swift -------------------------------------------------------------------------------- /Exercism/Exercises/Results/TestErrored.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Exercises/Results/TestErrored.swift -------------------------------------------------------------------------------- /Exercism/Exercises/Results/TestGroup.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Exercises/Results/TestGroup.swift -------------------------------------------------------------------------------- /Exercism/Exercises/Results/TestGroupedByTaskList.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Exercises/Results/TestGroupedByTaskList.swift -------------------------------------------------------------------------------- /Exercism/Exercises/Results/TestPassed.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Exercises/Results/TestPassed.swift -------------------------------------------------------------------------------- /Exercism/Exercises/Results/TestRunProgress.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Exercises/Results/TestRunProgress.swift -------------------------------------------------------------------------------- /Exercism/Exercises/Results/TestRunResultView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Exercises/Results/TestRunResultView.swift -------------------------------------------------------------------------------- /Exercism/Exercises/Results/TestRunSummaryHeader.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Exercises/Results/TestRunSummaryHeader.swift -------------------------------------------------------------------------------- /Exercism/Exercises/TestsView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Exercises/TestsView.swift -------------------------------------------------------------------------------- /Exercism/Exercises/model/ExerciseFile.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Exercises/model/ExerciseFile.swift -------------------------------------------------------------------------------- /Exercism/Exercises/model/ExerciseItem.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Exercises/model/ExerciseItem.swift -------------------------------------------------------------------------------- /Exercism/Exercises/model/ExerciseModelResponse.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Exercises/model/ExerciseModelResponse.swift -------------------------------------------------------------------------------- /Exercism/Exercism.entitlements: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Exercism.entitlements -------------------------------------------------------------------------------- /Exercism/ExercismSettings.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/ExercismSettings.swift -------------------------------------------------------------------------------- /Exercism/Info.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Info.plist -------------------------------------------------------------------------------- /Exercism/Models/AlertModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Models/AlertModel.swift -------------------------------------------------------------------------------- /Exercism/Models/AppSettings.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Models/AppSettings.swift -------------------------------------------------------------------------------- /Exercism/Models/Fetcher.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Models/Fetcher.swift -------------------------------------------------------------------------------- /Exercism/Models/NavigationModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Models/NavigationModel.swift -------------------------------------------------------------------------------- /Exercism/Models/SettingsData.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Models/SettingsData.swift -------------------------------------------------------------------------------- /Exercism/Models/SettingsModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Models/SettingsModel.swift -------------------------------------------------------------------------------- /Exercism/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Preview Content/Preview Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /Exercism/ProfileTableView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/ProfileTableView.swift -------------------------------------------------------------------------------- /Exercism/SideBar.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/SideBar.swift -------------------------------------------------------------------------------- /Exercism/Streak/Streak.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Streak/Streak.swift -------------------------------------------------------------------------------- /Exercism/Streak/StreakManager.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Streak/StreakManager.swift -------------------------------------------------------------------------------- /Exercism/Streak/StreakPersistence.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Streak/StreakPersistence.swift -------------------------------------------------------------------------------- /Exercism/Streak/StreakView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Streak/StreakView.swift -------------------------------------------------------------------------------- /Exercism/SyntaxHighlighter/SplashCodeSyntaxHighlighter.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/SyntaxHighlighter/SplashCodeSyntaxHighlighter.swift -------------------------------------------------------------------------------- /Exercism/SyntaxHighlighter/TextOutputFormat.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/SyntaxHighlighter/TextOutputFormat.swift -------------------------------------------------------------------------------- /Exercism/TrackRowView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/TrackRowView.swift -------------------------------------------------------------------------------- /Exercism/Tracks/FilterTableView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Tracks/FilterTableView.swift -------------------------------------------------------------------------------- /Exercism/Tracks/FilterView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Tracks/FilterView.swift -------------------------------------------------------------------------------- /Exercism/Tracks/TrackGridView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Tracks/TrackGridView.swift -------------------------------------------------------------------------------- /Exercism/Tracks/TrackViewModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Tracks/TrackViewModel.swift -------------------------------------------------------------------------------- /Exercism/Tracks/TracksListView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Tracks/TracksListView.swift -------------------------------------------------------------------------------- /Exercism/Util/AppDelegate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/AppDelegate.swift -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/AccentColor.colorset/Contents.json -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/AppIcon.appiconset/icon_1024@2x 1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/AppIcon.appiconset/icon_1024@2x 1.png -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/AppIcon.appiconset/icon_1024@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/AppIcon.appiconset/icon_1024@2x.png -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/AppIcon.appiconset/icon_128@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/AppIcon.appiconset/icon_128@2x.png -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/AppIcon.appiconset/icon_16@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/AppIcon.appiconset/icon_16@2x.png -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/AppIcon.appiconset/icon_256@2x 1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/AppIcon.appiconset/icon_256@2x 1.png -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/AppIcon.appiconset/icon_256@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/AppIcon.appiconset/icon_256@2x.png -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/AppIcon.appiconset/icon_32@2x 1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/AppIcon.appiconset/icon_32@2x 1.png -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/AppIcon.appiconset/icon_32@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/AppIcon.appiconset/icon_32@2x.png -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/AppIcon.appiconset/icon_512@2x 1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/AppIcon.appiconset/icon_512@2x 1.png -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/AppIcon.appiconset/icon_512@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/AppIcon.appiconset/icon_512@2x.png -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/AppIcon.appiconset/resized_icon_64x64_high_quality.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/AppIcon.appiconset/resized_icon_64x64_high_quality.png -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/concept.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/concept.imageset/Contents.json -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/concept.imageset/concepts-982e268a7b685697712765d69d08e624c07a611a.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/concept.imageset/concepts-982e268a7b685697712765d69d08e624c07a611a.png -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/exercise.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/exercise.imageset/Contents.json -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/exercise.imageset/exercises-8a7df249fbfb76cc18efbbee844d9bd742830404.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/exercise.imageset/exercises-8a7df249fbfb76cc18efbbee844d9bd742830404.png -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/exercodeLogo.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/exercodeLogo.imageset/Contents.json -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/exercodeLogo.imageset/Exercode Logo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/exercodeLogo.imageset/Exercode Logo.jpg -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/exercodeLogo.imageset/Exercode Logo@2x 1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/exercodeLogo.imageset/Exercode Logo@2x 1.png -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/exercodeLogo.imageset/Exercode Logo@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/exercodeLogo.imageset/Exercode Logo@2x.png -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/mainLogo.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/mainLogo.imageset/Contents.json -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/mainLogo.imageset/mainLogo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/mainLogo.imageset/mainLogo.png -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/publishImage.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/publishImage.imageset/Contents.json -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/publishImage.imageset/publishImage.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/publishImage.imageset/publishImage.svg -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/publishMan.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/publishMan.imageset/Contents.json -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/publishMan.imageset/publishMan.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/publishMan.imageset/publishMan.svg -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/stars.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/stars.imageset/Contents.json -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/stars.imageset/stars-177307daf819c6853a74d5ba1d0c681f5b8f7ca3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/stars.imageset/stars-177307daf819c6853a74d5ba1d0c681f5b8f7ca3.png -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/trackImages.imageset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/trackImages.imageset/Contents.json -------------------------------------------------------------------------------- /Exercism/Util/Assets.xcassets/trackImages.imageset/trackImages.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Assets.xcassets/trackImages.imageset/trackImages.png -------------------------------------------------------------------------------- /Exercism/Util/Color.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Color.xcassets/Contents.json -------------------------------------------------------------------------------- /Exercism/Util/Color.xcassets/appAccent.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Color.xcassets/appAccent.colorset/Contents.json -------------------------------------------------------------------------------- /Exercism/Util/Color.xcassets/appDarkBackground.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Color.xcassets/appDarkBackground.colorset/Contents.json -------------------------------------------------------------------------------- /Exercism/Util/Color.xcassets/appLightGold.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Color.xcassets/appLightGold.colorset/Contents.json -------------------------------------------------------------------------------- /Exercism/Util/Color.xcassets/appOffBlackShadow.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Color.xcassets/appOffBlackShadow.colorset/Contents.json -------------------------------------------------------------------------------- /Exercism/Util/Color.xcassets/appOffWhiteShadow.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Color.xcassets/appOffWhiteShadow.colorset/Contents.json -------------------------------------------------------------------------------- /Exercism/Util/Color.xcassets/appPrimaryBackground.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Color.xcassets/appPrimaryBackground.colorset/Contents.json -------------------------------------------------------------------------------- /Exercism/Util/ContentView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/ContentView.swift -------------------------------------------------------------------------------- /Exercism/Util/CustomTabView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/CustomTabView.swift -------------------------------------------------------------------------------- /Exercism/Util/Date+Exercism.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Date+Exercism.swift -------------------------------------------------------------------------------- /Exercism/Util/ExercismApp.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/ExercismApp.swift -------------------------------------------------------------------------------- /Exercism/Util/Images.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Images.swift -------------------------------------------------------------------------------- /Exercism/Util/KeychainHelper.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/KeychainHelper.swift -------------------------------------------------------------------------------- /Exercism/Util/Localizable.xcstrings: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Localizable.xcstrings -------------------------------------------------------------------------------- /Exercism/Util/MainWindow.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/MainWindow.swift -------------------------------------------------------------------------------- /Exercism/Util/NSNotification.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/NSNotification.swift -------------------------------------------------------------------------------- /Exercism/Util/PreviewData.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/PreviewData.swift -------------------------------------------------------------------------------- /Exercism/Util/SelectedTab.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/SelectedTab.swift -------------------------------------------------------------------------------- /Exercism/Util/Strings.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Strings.swift -------------------------------------------------------------------------------- /Exercism/Util/Tags.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/Tags.json -------------------------------------------------------------------------------- /Exercism/Util/ViewUtils.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/ViewUtils.swift -------------------------------------------------------------------------------- /Exercism/Util/WindowCommands/ExercismCommands.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/WindowCommands/ExercismCommands.swift -------------------------------------------------------------------------------- /Exercism/Util/WindowCommands/MainCommands.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/WindowCommands/MainCommands.swift -------------------------------------------------------------------------------- /Exercism/Util/WindowCommands/ViewCommands.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/WindowCommands/ViewCommands.swift -------------------------------------------------------------------------------- /Exercism/Util/WindowCommands/WindowCommands.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/Exercism/Util/WindowCommands/WindowCommands.swift -------------------------------------------------------------------------------- /ExercodeTests/AuthTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/ExercodeTests/AuthTests.swift -------------------------------------------------------------------------------- /ExercodeTests/EditorActionsTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/ExercodeTests/EditorActionsTests.swift -------------------------------------------------------------------------------- /ExercodeTests/ExerciseEditorTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/ExercodeTests/ExerciseEditorTests.swift -------------------------------------------------------------------------------- /ExercodeTests/ExerciseListViewModelTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/ExercodeTests/ExerciseListViewModelTests.swift -------------------------------------------------------------------------------- /ExercodeTests/MockExercismClient.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/ExercodeTests/MockExercismClient.swift -------------------------------------------------------------------------------- /ExercodeTests/MockFetcher.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/ExercodeTests/MockFetcher.swift -------------------------------------------------------------------------------- /ExercodeTests/StreakManagerTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/ExercodeTests/StreakManagerTests.swift -------------------------------------------------------------------------------- /ExercodeTests/TrackViewModelTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/ExercodeTests/TrackViewModelTests.swift -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/README.md -------------------------------------------------------------------------------- /doc/01-dependencies.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/doc/01-dependencies.md -------------------------------------------------------------------------------- /project.xcconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/apps-fab/exercism-app/HEAD/project.xcconfig --------------------------------------------------------------------------------