93 Commits
Author SHA1 Message Date
javier af34d435ba Documented the visionOS E2E recording demo within the README file. 2026-07-10 18:51:42 +02:00
javier 0fac2bf2fe Documented the macOS end-to-end recording demo within the README file in the project. 2026-07-09 20:14:37 +02:00
javier 1e11c4ae5a Updated the Sample app and Widget targets in the Xcode project to make the app works for visionOS. 2026-07-09 19:31:44 +02:00
javier 80bffd7aae Updated the Sample app and Widget targets in the Xcode project to make the app works for macOS. 2026-07-09 18:57:46 +02:00
javier 14f91a08a9 Refreshed the documentation of the README file in the project one last time. 2026-07-09 18:22:00 +02:00
javier 5c05eeb318 Updated the documentation of the README file in the project. 2026-07-07 01:12:20 +02:00
javier 3dc5b2b7fc Added the "navigationTitle" property to the ContentViewModel view model in the Sample app target to update the navigation title to show the selected locale. 2026-07-07 00:59:40 +02:00
javier d27e5fb38f Updated the "name(for:)" method for the ContentViewModel view model in the Sample app target to append the region flag emoji to the locale name. 2026-07-07 00:46:16 +02:00
javier f463c60b35 Updated the RecordingButtonStyle button style in the Recording feature target to tint the round background color. 2026-07-07 00:38:07 +02:00
javier dfd4829980 Refined the recording Live Activity presentation in the Widget target. 2026-07-07 00:11:39 +02:00
javier 9e431c8e7a Shared the recording intents of theWidget target with the Attendi app target. 2026-07-07 00:05:40 +02:00
javier 55e9ebbe03 Changed the ActionButtonStyle from a PrimitiveButtonStyle to a ButtonStyle in the Attendi widget target so that SwiftUI and WidgetKit keep firing the button intents from the Live Activity. 2026-07-07 00:04:19 +02:00
javier 7ec938ceb3 Implemented the sync between feature and live activity timers for the ActivityReporting service in the Sample app target. 2026-07-06 23:33:57 +02:00
javier b3f0826122 Added the "reset()" method to the Reporting protocol in the Recording feature target to discard leftover Live Activities at launch and set a stale date on recording activities. 2026-07-06 23:05:24 +02:00
javier f443d434f2 Removed boilerplated widget source code from the Attendi widget target. 2026-07-06 22:03:49 +02:00
javier 0f889e22e4 Refined the Recording Live Activity presentation in the Attendi widget target. 2026-07-06 04:07:14 +02:00
javier a1a27a51c2 Updated the documentation of the README in the Xcode project. 2026-07-06 03:48:37 +02:00
javier 874de398d2 Implemented the (first version of the) Recording Live Activity in the Attendi widget target. 2026-07-06 03:43:25 +02:00
javier ffa80d3b58 Added a process command for recording processing on the RecordingCommand enum in the Commanding package target. 2026-07-06 03:34:21 +02:00
javier 380ffc39b3 Implemented the ActivityReporting service in the Sample app target to surface the recording flow in Live Activities. 2026-07-05 22:06:45 +02:00
javier cfe6b1b408 Added the recording flow reporting and command listening on the RecordingViewModel view model in the Recording package target. 2026-07-05 22:00:43 +02:00
javier d473504d75 Created the Commanding package target in the Features package for controlling the recording flow from Live Activities. 2026-07-05 21:58:20 +02:00
javier cbb5703751 Implemented the Persisting the selected locale across launches on the ContentView view in the Sample app target. 2026-07-05 21:04:29 +02:00
javier 58a6ec217f Reshuffle the position of the action buttons on the RecordingView view in the Recording package target. 2026-07-05 19:05:03 +02:00
javier 3ac5d527cd Created the Sample app widget target in the Xcode project. 2026-07-05 18:55:32 +02:00
javier d8e496ce51 Added the audio background mode to the Sample app target to continue recording audio when on background. 2026-07-05 17:16:13 +02:00
javier 0aaa257533 Updated the documentation on the README file in the project. 2026-07-05 17:03:24 +02:00
javier a0d83b7962 Added the app icon image to the AppIcon asset catalog in the Attendi app target. 2026-07-05 16:45:44 +02:00
javier f1e4b59809 Extracted the PreviewPreinstalling service in the Sample app target into its own file and declared it as development asset. 2026-07-05 16:29:28 +02:00
javier 83ac1cf4e4 Reformatted the tests for the Notifying package tests. 2026-07-05 16:21:30 +02:00
javier c2ac476257 Implemented the resumed interrupted recordings and allowed processing discards on the RecordingViewModel view model in the Recording package target. 2026-07-05 16:16:53 +02:00
javier 8576d6bac6 Restructured the Sample app target in the Xcode project and added its unit tests target as well. 2026-07-05 15:45:09 +02:00
javier 21d86cdc33 Made visual improvements to the RecordingView view in the Recording package target. 2026-07-05 14:30:48 +02:00
javier ee212cb6e3 Integrated the Notifier and the AssetPreinstalling to the ContentView view model in the Sample app target. 2026-07-05 13:43:49 +02:00
javier d22a8dda13 Implemented the AssetPreinstalling service in the Recording package target. 2026-07-05 13:37:04 +02:00
javier 59b0237638 Extracted the in-app notifications from the Sample app target into its own Notifying package target. 2026-07-05 13:33:07 +02:00
javier 6bcb88c944 Added accessibility support to in-app notifications on the ContentViewModel view model in the Sample app. 2026-07-05 13:06:43 +02:00
javier 6373fad0cd Implemented in-app download notifications on the ContentView view in the Sample app target. 2026-07-05 12:39:58 +02:00
javier 88262a7dee Implemented the NotificationLabelStyle label style in the Sample app target. 2026-07-05 11:54:05 +02:00
javier 480a0c80e1 Implemented the reinstallation of speech assets in a cancellable task with notifications on the ContentViewModel view model in the Sample app target. 2026-07-05 11:51:39 +02:00
javier 9949c94490 Extracted the error types in the Recording package target into the Errors folder. 2026-07-04 19:17:18 +02:00
javier beb4f7b4cc Updated the README file of the project. 2026-07-04 16:00:13 +02:00
javier b0c6e25639 Added a discard button and error handling to the RecordingView view in the Recording package target. 2026-07-04 15:59:30 +02:00
javier 7ec49264e6 Implemented the pre-installation of speech model assets for the selected locale for the ContentViewModel view model in the Sample app target. 2026-07-04 15:41:53 +02:00
javier 0ca948272b Surfaced recording flow errors to the user through an alert in the Recording package target. 2026-07-04 15:40:03 +02:00
javier 088c4c757e Added the "id" parameter to the initializer of the Transcription model in the Recording package target. 2026-07-04 15:37:36 +02:00
javier 1f1ac630f3 Improved the Capturing protocol in the Recording package target to capture interruptions and pause any active capture process. 2026-07-04 15:19:26 +02:00
javier 6a0e7698a5 Updated the Capturing procotol in the Recording package target to pass captured audio as a file URL instead of data. 2026-07-04 15:06:55 +02:00
javier 2fe240de1a Added default locale fallback when loading supported locales on the ContentViewModel view model in the Sample app target. 2026-07-04 14:58:14 +02:00
javier ed9d1e86fa Serialized the capturing service calls for the RecordingViewModel view model in the Recording package target. 2026-07-04 14:55:49 +02:00
javier 702333038c Move the recording side effects into the RecordingViewModel view model in the Recording package target. 2026-07-04 14:50:41 +02:00
javier 5e102f21e1 Fixed the size of the timer label for the ContentView view in the Sample app target. 2026-07-04 13:52:40 +02:00
javier be130eb05f Renamed the RecordingService protocol in the Recording package target as Capturing. 2026-07-04 13:41:56 +02:00
javier 69e30a9947 Improve the recording time with a monotonic clock to avoid timer drift on the RecordingViewModel view model in the Recording package target. 2026-07-04 13:25:15 +02:00
javier 3c542ee033 Implemented an unavailable view for empty transcriptions on the ContentView view in the Sample app target. 2026-07-04 13:23:42 +02:00
javier 0d0705c95a Added a toolbar locale picker to the ContentView view in the Sample app target. 2026-07-04 12:59:24 +02:00
javier 20cbda7b27 Propagated the Transcription type and locale binding through the RecordingView view and its view model in the Recording package target. 2026-07-04 12:11:24 +02:00
javier 68c070948e Made the transcribing callable and per-call for the transcribing protocol in the Recording package target. 2026-07-04 12:03:19 +02:00
javier 8b46c4e7d1 Implemented the Transcription model in the Recording package target. 2026-07-04 10:53:33 +02:00
javier d7dc32d7f7 Reorganized the Sample app target into folders and also, extracted the ContentViewModel view model from the ContentView view. 2026-07-04 10:32:59 +02:00
javier 2b62de5154 Added the "locale" parameter to the initializer for the AudioTranscribingService service in the Recording package target. 2026-07-04 10:15:18 +02:00
javier 9c366b98cb Adopted Liquid Glass effect for the buttons of the RecordingView view in the Recording package target. 2026-07-04 10:10:24 +02:00
javier a9eff33e3e Adopted Liquid Glass effect for the RecordingButtonStyle button style in the Recording package target. 2026-07-04 10:04:41 +02:00
javier aa9ec01611 Reorganized the Recording package target into folders. 2026-07-04 00:07:42 +02:00
javier fe08548b08 Presented transcribed recordings from the RecordingView view into the ContentView view in the Sample app target as a modal sheet. 2026-07-03 23:48:16 +02:00
javier f56ca3d8ff Added the "onTranscription" closure to the RecordingView view in the Recording package target. 2026-07-03 23:45:25 +02:00
javier d7d50492e6 Implemented the AudioTranscribingService service in the Sample app target. 2026-07-03 22:13:16 +02:00
javier 64f85277cb Configured microphone access and hardened runtime for the Sample app target in the Xcode project. 2026-07-03 22:01:54 +02:00
javier a02d5ce52f Implemented the AudioRecordingService service in the Sample app target. 2026-07-03 22:01:17 +02:00
javier 376be4940b Integrated the RecordingService and the TranscribingService protocols into the RecordingView view in the Recording package target. 2026-07-03 21:37:40 +02:00
javier 31b778a36e Defined the RecordingService and the TranscribingService protocols in the Recording package tracker. 2026-07-03 21:33:07 +02:00
javier cc82e4fbf2 Reordered the "invertStyle" property in the RecordingButtonStyle button style in the Recording package target for consistency. 2026-07-03 20:53:55 +02:00
javier 44a2036e71 Added a demo video of the sample app created for this assignment and linked it in the README.md file. 2026-07-03 20:45:06 +02:00
javier 4fd695c2cb Reset the elapsed seconds after processing for the RecordingViewModel view model in the Recording package target. 2026-07-03 20:30:37 +02:00
javier 851cedc54f Written the README.md file for the Xcode project. 2026-07-03 20:18:05 +02:00
javier 7c1281ec75 Integrated the RecordingView feature into the ContentView view in the Sample app target. 2026-07-03 20:05:11 +02:00
javier c980dfc0a5 Added the "Features" local package reference to the Attendi app target in the Xcode project. 2026-07-03 20:02:05 +02:00
javier f97dac8371 Added the "invertStyle" flag to the RecordingButtonStyle button style in the Recording package target. 2026-07-03 20:01:06 +02:00
javier a9dd4c9abe Implemented the scaling of the label and its padding to dynamic type for the RecordingButtonStyle button style in the Recording package target. 2026-07-03 19:42:32 +02:00
javier 7a3853db9e Set the template rendering intent for the icon image assets in the Recording package target. 2026-07-03 19:33:32 +02:00
javier 946fa76c63 Formatted the timer text for the RecordingView view in the Recording package target. 2026-07-03 19:21:37 +02:00
javier cad0a570ac Integrated the RecordingButtonStyle button style into the RecordingView view in. the Recording package target. 2026-07-03 19:20:04 +02:00
javier 2ae4306c3f Implemented the RecodingButtonStyle button style in the Recording package target. 2026-07-03 19:08:42 +02:00
javier 1487ecb3f4 Implemented the RecordingView view in the Recording package target. 2026-07-03 18:52:21 +02:00
javier 1fb8ece751 Implemented the RecordingViewModel view model in the Recording package target. 2026-07-03 18:49:30 +02:00
javier c4581116a8 Added the supported platforms to the Features package dependency. 2026-07-03 18:30:53 +02:00
javier 33c77c5c47 Added the icon assets for the buttons to Image catalog in the Recording package target. 2026-07-03 18:30:15 +02:00
javier c785bdb61c Removed the Git submodule from the Features package dependency. 2026-07-03 15:46:31 +02:00
javier f66cb559ff Added the assignment requirements to the Xcode project. 2026-07-03 15:37:53 +02:00
javier e402f62d77 Created the Features package dependency in the Xcode project. 2026-07-03 15:36:25 +02:00
javier 87b5b21a30 Added a Swift Format configuration for the Xcode project. 2026-07-03 15:22:14 +02:00
javier 9cd731e6fc Created the cross-platform Sample App target in the Xcode project. 2026-07-03 15:11:33 +02:00
javier 53ff7c5198 Initial Commit 2026-07-03 15:00:56 +02:00