{
  "categories": [
    {
      "name": "WWDC26",
      "position": 0,
      "sample_ids": [
        "appintents/adopting-app-intents-to-support-system-experiences",
        "coredata/adopting-swiftdata-for-a-core-data-app",
        "avfoundation/avcam-building-a-camera-app",
        "evaluations/book-tracker-using-evaluations-to-evaluate-an-intelligent-feature",
        "avfoundation/build-a-responsive-camera-app-that-launches-quickly",
        "webkit/building-a-cross-platform-web-browser",
        "pencilkit/building-a-handwriting-recognition-experience-with-pencilkit",
        "avfaudio/building-an-audio-sequencer-to-arrange-and-play-clips",
        "safariservices/building-and-testing-a-safari-web-extension",
        "swiftui/composing-advanced-graphics-effects-with-swiftui",
        "musicunderstanding/create-visuals-using-musicunderstanding-analysis-results",
        "avkit/creating-a-multiview-video-playback-experience-in-visionos",
        "videotoolbox/encoding-video-for-offline-transcoding",
        "videotoolbox/enhancing-your-app-with-machine-learning-based-video-effects",
        "uikit/enriching-your-text-in-text-views",
        "visionos/exploring_object_tracking_with_arkit",
        "visionos/gaussian-splats-on-visionos",
        "storekit/implementing-a-store-in-your-app-using-the-storekit-api",
        "declaredagerange/implementing-age-assurance-and-permissions",
        "vision/implementing-saliency-based-image-cropping-in-ios-and-watchos",
        "musickit/integrating-musickit-into-your-app",
        "appintents/integrating-your-calendar-app-with-apple-intelligence",
        "appintents/integrating-your-messaging-app-with-apple-intelligence",
        "appintents/integrating-your-music-app-with-apple-intelligence",
        "appintents/integrating-your-photo-app-with-apple-intelligence",
        "swiftui/making-a-card-game-with-drag-drop-and-reordering-in-swiftui",
        "realitykit/manipulating-models-with-realitykit",
        "corebluetooth/measuring-distance-between-devices-using-channel-sounding",
        "realitykit/mixing-spatial-music",
        "foundationmodels/origami-crafting-a-dynamic-tutorial-for-apple-intelligence",
        "immersivemediasupport/processing-apple-immersive-video-with-foveation",
        "speech/recognizing-speech-in-live-audio",
        "vision/segmenting-objects-using-taps-scribbles-or-rectangles",
        "avfoundation/supporting-center-stage-front-camera-in-your-ios-app",
        "metrickit/track-performance-by-app-state-using-metrickit",
        "healthkit/tracking-heart-rate-zones-for-workouts",
        "metal/training-a-neural-network-to-render-irradiance-in-real-time",
        "swiftui/wishlist-planning-travel-in-a-swiftui-app",
        "spatialpreview/working-with-content-from-your-mac-app-using-spatial-preview"
      ]
    },
    {
      "name": "Accelerate",
      "position": 1,
      "sample_ids": [
        "accelerate/adding-a-bokeh-effect-to-images",
        "accelerate/adjusting-saturation-and-applying-tone-mapping",
        "accelerate/adjusting-the-brightness-and-contrast-of-an-image",
        "accelerate/adjusting-the-hue-of-an-image",
        "accelerate/applying-biquadratic-filters-to-a-music-loop",
        "accelerate/applying-tone-curve-adjustments-to-images",
        "accelerate/applying-transformations-to-selected-colors-in-an-image",
        "accelerate/applying-vimage-operations-to-video-sample-buffers",
        "accelerate/blurring-an-image",
        "accelerate/calculating-the-dominant-colors-in-an-image",
        "accelerate/compressing-and-decompressing-files-with-stream-compression",
        "accelerate/compressing-an-image-using-linear-algebra",
        "accelerate/converting-color-images-to-grayscale",
        "accelerate/converting-luminance-and-chrominance-planes-to-an-argb-image",
        "accelerate/creating-an-audio-unit-extension-using-the-vdsp-library",
        "accelerate/cropping-to-the-subject-in-a-chroma-keyed-image",
        "accelerate/equalizing-audio-with-discrete-cosine-transforms-dcts",
        "accelerate/finding-the-sharpest-image-in-a-sequence-of-captured-images",
        "accelerate/halftone-descreening-with-2d-fast-fourier-transform",
        "accelerate/improving-the-quality-of-quantized-images-with-dithering",
        "accelerate/integrating-vimage-pixel-buffers-into-a-core-image-workflow",
        "accelerate/reducing-artifacts-with-custom-resampling-filters",
        "accelerate/rotating-a-cube-by-transforming-its-vertices",
        "accelerate/sharing-texture-data-between-the-model-io-framework-and-the-vimage-library",
        "accelerate/signal-extraction-from-noise",
        "accelerate/solving-systems-of-linear-equations-with-lapack",
        "accelerate/specifying-histograms-with-vimage",
        "accelerate/training-a-neural-network-to-recognize-digits",
        "accelerate/using-vimage-pixel-buffers-to-generate-video-effects",
        "accelerate/visualizing-sound-as-an-audio-spectrogram"
      ]
    },
    {
      "name": "Accessibility",
      "position": 2,
      "sample_ids": [
        "accessibility/accessibility_design_for_mac_catalyst",
        "swiftui/creating-accessible-views",
        "accessibility/delivering_an_exceptional_accessibility_experience",
        "accessibility/enhancing-the-accessibility-of-your-swiftui-app",
        "accessibility/integrating-accessibility-into-your-app",
        "mediaaccessibility/responding-to-changes-in-the-flashing-lights-setting",
        "translation/translating-text-within-your-app",
        "accessibility/wwdc21_challenge_large_text_challenge",
        "accessibility/wwdc21_challenge_speech_synthesizer_simulator",
        "accessibility/wwdc21_challenge_voiceover_maze",
        "accessibility/wwdc22_challenge_learn_switch_control_through_gaming"
      ]
    },
    {
      "name": "App frameworks",
      "position": 3,
      "sample_ids": [
        "foundation/building-a-localized-food-ordering-app",
        "foundation/building-a-resumable-upload-server-with-swiftnio",
        "foundation/continuing-user-activities-with-handoff",
        "foundation/displaying-human-friendly-content",
        "appclip/fruta-building-a-feature-rich-app-with-swiftui",
        "foundation/increasing-app-usage-with-suggestions-based-on-user-activities",
        "appclip/interacting-with-app-clip-codes-in-ar",
        "foundation/language-introspector",
        "foundation/synchronizing-app-preferences-with-icloud",
        "foundation/using-json-with-custom-types"
      ]
    },
    {
      "name": "App Intents and SiriKit",
      "position": 4,
      "sample_ids": [
        "appintents/acceleratingappinteractionswithappintents",
        "sirikit/adding-shortcuts-for-wind-down",
        "appintents/adopting-app-intents-to-support-system-experiences",
        "sirikit/booking-rides-with-sirikit",
        "appintents/defining-your-app-s-focus-filter",
        "sirikit/handling-payment-requests-with-sirikit",
        "sirikit/handling-workout-requests-with-sirikit",
        "sirikit/integrating-your-app-with-siri-event-suggestions",
        "sirikit/managing-audio-with-sirikit",
        "sirikit/providing-hands-free-app-control-with-intents",
        "sirikit/soup-chef-accelerating-app-interactions-with-shortcuts",
        "sirikit/soup-chef-with-app-intents-migrating-custom-intents"
      ]
    },
    {
      "name": "AppKit",
      "position": 5,
      "sample_ids": [
        "appkit/add-functionality-to-finder-with-action-extensions",
        "appkit/creating-and-customizing-the-touch-bar",
        "appkit/developing-a-document-based-app",
        "appkit/enhancing-your-custom-text-engine-with-writing-tools",
        "appkit/integrating-a-toolbar-and-touch-bar-into-your-app",
        "appkit/navigating-hierarchical-data-using-outline-and-split-views",
        "appkit/organize-your-user-interface-with-a-stack-view",
        "appkit/restoring-your-app-s-state-with-appkit",
        "appkit/supporting-collection-view-drag-and-drop-through-file-promises",
        "appkit/supporting-drag-and-drop-through-file-promises",
        "appkit/supporting-table-view-drag-and-drop-through-file-promises"
      ]
    },
    {
      "name": "App services",
      "position": 6,
      "sample_ids": [
        "contacts/accessing-a-person-s-contact-data-using-contacts-and-contactsui",
        "eventkit/accessing-calendar-using-eventkit-and-eventkitui",
        "coredata/adopting-swiftdata-for-a-core-data-app",
        "automaticassessmentconfiguration/build-an-educational-assessment-app",
        "mailkit/build-mail-app-extensions",
        "homekit/configuring-a-home-automation-device",
        "pencilkit/configuring-the-pencilkit-tool-picker",
        "charts/creating-a-data-visualization-dashboard-with-swift-charts",
        "messages/creating-a-sticker-app-with-a-custom-layout",
        "pencilkit/customizing-scribble-with-interactions",
        "backgroundassets/downloading-essential-assets-in-the-background",
        "pencilkit/drawing-with-pencilkit",
        "walletorders/example-order-packages",
        "weatherkit/fetching_weather_forecasts_with_weatherkit",
        "usernotifications/handling-communication-notifications-and-focus-status-updates",
        "coredata/handling-different-data-types-in-core-data",
        "tipkit/highlightingappfeatureswithtipkit",
        "messages/icecreambuilder-building-an-imessage-extension",
        "usernotifications/implementing-alert-push-notifications",
        "financekit/implementing-a-background-delivery-extension",
        "eventkit/implementing-a-virtual-conference-extension",
        "usernotifications/implementing-background-push-notifications",
        "passkit/implementing-wallet-extensions",
        "classkit/incorporating-classkit-into-an-educational-app",
        "pencilkit/inspecting-modifying-and-constructing-pencilkit-drawings",
        "applemapsserverapi/integrating-the-apple-maps-server-api-into-java-server-applications",
        "homekit/interacting-with-a-home-automation-network",
        "coredata/linking-data-between-two-core-data-stores",
        "swiftui/loading-and-displaying-a-large-data-feed",
        "eventkit/managing-location-based-reminders",
        "energykit/optimizing-home-electricity-usage",
        "passkit/offering-apple-pay-in-your-app",
        "backgroundtasks/refreshing-and-maintaining-your-app-using-background-tasks",
        "appstoreconnectapi/retrieve-power-and-performance-metrics-and-log-insights",
        "alarmkit/scheduling-an-alarm-with-alarmkit",
        "cloudkit/sharing-cloudkit-data-with-other-icloud-users",
        "coredata/sharing-core-data-objects-between-icloud-users",
        "coredata/showcase-app-data-in-spotlight",
        "coredata/synchronizing-a-local-store-to-the-cloud",
        "fileprovider/synchronizing-files-using-file-provider-extensions",
        "servicemanagement/updating-your-app-package-installer-to-use-the-new-service-management-api",
        "appstoreconnectapi/uploading-app-previews",
        "charts/visualizing-your-app-s-data",
        "callkit/voip-calling-with-callkit"
      ]
    },
    {
      "name": "ARKit",
      "position": 7,
      "sample_ids": [
        "arkit/adding-realistic-reflections-to-an-ar-experience",
        "arkit/building_local_experiences_with_room_tracking",
        "arkit/capturing-body-motion-in-3d",
        "arkit/combining-user-face-tracking-and-world-tracking",
        "arkit/creating-a-collaborative-session",
        "arkit/creating-a-fog-effect-using-scene-depth",
        "arkit/creating-a-multiuser-ar-experience",
        "arkit/creating-an-immersive-ar-experience-with-audio",
        "arkit/creating-screen-annotations-for-objects-in-an-ar-experience",
        "arkit/detecting-images-in-an-ar-experience",
        "arkit/displaying-a-point-cloud-using-scene-depth",
        "arkit/effecting-people-occlusion-in-custom-renderers",
        "arkit/occluding-virtual-content-with-people",
        "arkit/placing-objects-and-handling-3d-interaction",
        "arkit/recognizing-and-labeling-arbitrary-objects",
        "arkit/saving-and-loading-world-data",
        "arkit/scanning-and-detecting-3d-objects",
        "arkit/streaming-an-ar-experience",
        "arkit/tracking-accessories-in-volumetric-windows",
        "arkit/tracking-a-handheld-accessory-as-a-virtual-sculpting-tool",
        "arkit/tracking-and-altering-images",
        "arkit/tracking-and-visualizing-faces",
        "arkit/tracking-and-visualizing-planes",
        "arkit/tracking-geographic-locations-in-ar",
        "arkit/visualizing-and-interacting-with-a-reconstructed-scene"
      ]
    },
    {
      "name": "Audio and music",
      "position": 8,
      "sample_ids": [
        "avfaudio/adding-synthesized-speech-to-calls",
        "mediaplayer/becoming-a-now-playable-app",
        "shazamkit/building-a-custom-catalog-and-matching-audio",
        "coreaudio/building-an-audio-server-plug-in-and-driver-extension",
        "avfaudio/building-a-signal-generator",
        "avfaudio/capturing-stereo-audio-from-built-in-microphones",
        "avfoundation/capturing-spatial-audio-in-your-ios-app",
        "coreaudio/capturing-system-audio-with-core-audio-taps",
        "soundanalysis/classifying-live-audio-input-with-a-built-in-sound-classifier",
        "avfaudio/creating-a-custom-speech-synthesizer",
        "audiodriverkit/creating-an-audio-device-driver",
        "coreaudio/creating-an-audio-server-driver-plug-in",
        "avfaudio/creating-custom-audio-effects",
        "corehaptics/delivering-rich-app-experiences-with-haptics",
        "devicediscoveryextension/discovering-a-third-party-media-streaming-device",
        "cinematic/editing-spatial-audio-with-an-audio-mix",
        "audiotoolbox/encoding-and-decoding-audio",
        "musickit/explore-more-content-with-musickit",
        "audiotoolbox/generating-spatial-audio-from-a-multichannel-audio-stream",
        "coremotion/getting-motion-activity-data-from-headphones",
        "audiotoolbox/incorporating-audio-effects-and-instruments",
        "coremidi/incorporating-midi-2-into-your-apps",
        "carplay/integrating-carplay-with-your-music-app",
        "carplay/integrating-carplay-with-your-navigation-app",
        "carplay/integrating-carplay-with-your-quick-ordering-app",
        "avfaudio/performing-offline-audio-processing",
        "corehaptics/playing-a-custom-haptic-pattern-from-a-file",
        "corehaptics/playing-collision-based-haptic-patterns",
        "avfaudio/playing-custom-audio-with-your-own-player",
        "corehaptics/playing-haptics-on-game-controllers",
        "speech/recognizing-speech-in-live-audio",
        "shazamkit/shazamkit-dance-finder-with-managed-session",
        "corebluetooth/transferring-data-between-bluetooth-low-energy-devices",
        "corehaptics/updating-continuous-and-transient-haptic-parameters-in-real-time",
        "corebluetooth/using-core-bluetooth-classic",
        "musickit/using-musickit-to-integrate-with-apple-music",
        "avfaudio/using-voice-processing"
      ]
    },
    {
      "name": "Authentication",
      "position": 9,
      "sample_ids": [
        "localauthentication/accessing-keychain-items-with-face-id-or-touch-id",
        "authenticationservices/connecting-to-a-service-with-passkeys",
        "authenticationservices/implementing-user-authentication-with-sign-in-with-apple",
        "localauthentication/logging-a-user-into-your-app-with-face-id-or-touch-id",
        "authenticationservices/performing-fast-account-creation-with-passkeys",
        "authenticationservices/simplifying-user-authentication-in-a-tvos-app"
      ]
    },
    {
      "name": "AVFoundation",
      "position": 10,
      "sample_ids": [
        "avfoundation/adding-a-display-mask-rectangle-metadata-track-to-a-movie-file",
        "avfoundation/avcam-building-a-camera-app",
        "avfoundation/avcambarcode-detecting-barcodes-and-faces",
        "avfoundation/avcamfilter-applying-filters-to-a-capture-stream",
        "avfoundation/avmulticampip-capturing-from-multiple-cameras",
        "avfoundation/capturing-cinematic-video",
        "avfoundation/capturing-consistent-color-images",
        "avfoundation/capturing-depth-using-the-lidar-camera",
        "avfoundation/converting-projected-video-to-apple-projected-media-profile",
        "avfoundation/converting-side-by-side-3d-video-to-multiview-hevc-and-spatial-video",
        "avfoundation/creating-a-seamless-multiview-playback-experience",
        "avfoundation/debugging-avfoundation-audio-mixes-compositions-and-video-compositions",
        "avfoundation/editing-and-playing-hdr-video",
        "avfoundation/enhancing-live-video-by-leveraging-truedepth-camera-data",
        "avfoundation/integrating-airplay-for-long-form-video-apps",
        "avfoundation/processing-spatial-video-with-a-custom-video-compositor",
        "avfoundation/providing-an-integrated-view-of-your-timeline-when-playing-hls-interstitials",
        "avfoundation/reading-multiview-3d-video-files",
        "avfoundation/streaming-depth-data-from-the-truedepth-camera",
        "avfoundation/supporting-continuity-camera-in-your-macos-app",
        "avfoundation/supporting-coordinated-media-playback",
        "avfoundation/supporting-remote-interactions-in-tvos",
        "avfoundation/using-avfoundation-to-play-and-persist-http-live-streams",
        "avfoundation/using-hevc-video-with-alpha",
        "avfoundation/writing-fragmented-mpeg-4-files-for-http-live-streaming"
      ]
    },
    {
      "name": "Developer tools",
      "position": 11,
      "sample_ids": [
        "xcode/autosizing-views-for-localization-in-ios",
        "xcode/configuring-your-app-to-use-alternate-app-icons",
        "xcode/creating-custom-modelers-for-intelligent-instruments",
        "xcode/localization-friendly-layouts-in-macos",
        "xcode/localizing-landmarks",
        "apple-silicon/providing-an-edge-to-edge-full-screen-experience-in-your-ipad-app-running-on-a-mac",
        "apple-silicon/providing-touch-gesture-equivalents-using-touch-alternatives",
        "xcode/slothcreator-building-docc-documentation-in-xcode"
      ]
    },
    {
      "name": "Games",
      "position": 12,
      "sample_ids": [
        "gamekit/adding-recurring-leaderboards-to-your-game",
        "gamekit/creating-real-time-games",
        "tabletopkit/creating-tabletop-games",
        "gamekit/creating-turn-based-games",
        "tabletopkit/implementing-playing-card-overlap-and-physical-characteristics",
        "compositorservices/interacting-with-virtual-content-blended-with-passthrough",
        "tabletopkit/simulating-dice-rolls-as-a-component-for-your-game",
        "gamecontroller/supporting-game-controllers",
        "tabletopkit/synchronizing-group-gameplay-with-tabletopkit"
      ]
    },
    {
      "name": "Graphics",
      "position": 13,
      "sample_ids": [
        "widgetkit/building-widgets-using-widgetkit-and-swiftui",
        "roomplan/create-a-3d-model-of-an-interior-room-by-guiding-the-user-through-an-ar-experience",
        "pdfkit/custom-graphics",
        "widgetkit/emoji-rangers-supporting-live-activities-interactivity-and-animations",
        "coreimage/generating-an-animation-with-a-core-image-render-destination",
        "roomplan/merging-multiple-scans-into-a-single-structure",
        "pdfkit/pdf-widgets",
        "scenekit/postprocessing-a-scene-with-custom-symbols",
        "roomplan/providing-custom-models-for-captured-rooms-and-structure-exports",
        "usd/schema-definitions-for-third-party-dccs",
        "imageio/writing-spatial-photos"
      ]
    },
    {
      "name": "Health",
      "position": 14,
      "sample_ids": [
        "healthkit/accessing-a-user-s-clinical-records",
        "healthkit/accessing-data-from-a-smart-health-card",
        "healthkit/build-a-workout-app-for-apple-watch",
        "healthkit/building-a-multidevice-workout-app",
        "healthkit/building-a-workout-app-for-iphone-and-ipad",
        "exposurenotification/building-an-app-to-notify-users-of-covid-19-exposure",
        "healthkit/creating-a-mobility-health-app",
        "healthkit/logging-symptoms-associated-with-a-medication",
        "healthkit/reading-and-writing-healthkit-series-data",
        "healthkit/visualizing-healthkit-state-of-mind-in-visionos"
      ]
    },
    {
      "name": "Location and MapKit",
      "position": 15,
      "sample_ids": [
        "corelocation/adopting-live-updates-in-core-location",
        "mapkit/annotating-a-map-with-custom-data",
        "mapkit/decluttering-a-map-with-mapkit-annotation-clustering",
        "mapkit/displaying-an-indoor-map",
        "mapkit/displaying-an-updating-path-of-a-user-s-location-history",
        "mapkitjs/displaying-indoor-maps-with-mapkit-js",
        "mapkit/displaying-overlays-on-a-map",
        "mapkit/mapkit_for_appkit_and_uikit/explore_a_location_with_a_highly_detailed_map_and_look_around",
        "nearbyinteraction/finding-devices-with-precision",
        "nearbyinteraction/implementing-interactions-between-users-in-close-proximity",
        "nearbyinteraction/implementing-proximity-based-interactions-between-a-phone-and-watch",
        "nearbyinteraction/implementing-spatial-interactions-with-third-party-accessories",
        "mapkit/interacting-with-nearby-points-of-interest",
        "corelocation/monitoring-location-changes-with-core-location",
        "mapkit/mkmapview/optimizing_map_views_with_filtering_and_camera_constraints",
        "corelocation/ranging-for-beacons",
        "mapkit/searching-displaying-and-navigating-to-places",
        "corelocationui/sharing-your-location-to-find-a-park"
      ]
    },
    {
      "name": "Machine learning",
      "position": 16,
      "sample_ids": [
        "foundationmodels/adding-intelligent-app-features-with-generative-models",
        "speech/bringing-advanced-speech-to-text-capabilities-to-your-app",
        "coreml/classifying-images-with-vision-and-core-ml",
        "createmlcomponents/counting-human-body-action-repetitions-in-a-live-video-feed",
        "createml/creating-a-model-from-tabular-data",
        "createml/detecting-human-actions-in-a-live-video-feed",
        "coreml/detecting-human-body-poses-in-an-image",
        "videotoolbox/enhancing-your-app-with-machine-learning-based-video-effects",
        "coreml/finding-answers-to-questions-in-a-text-document",
        "foundationmodels/generate-dynamic-game-content-with-guided-generation-and-tools",
        "coreml/integrating-a-core-ml-model-into-your-app",
        "coreml/personalizing-a-model-with-on-device-updates",
        "vision/recognize-tables-within-a-document",
        "accelerate/supporting-real-time-ml-inference-on-the-cpu",
        "coreml/understanding-a-dice-roll-with-vision-and-object-detection",
        "coreml/using-core-ml-for-semantic-image-segmentation"
      ]
    },
    {
      "name": "Metal",
      "position": 17,
      "sample_ids": [
        "metal/accelerating-ray-tracing-and-motion-blur-using-metal",
        "metal/accelerating-ray-tracing-using-metal",
        "metal/achieving-smooth-frame-rates-with-a-metal-display-link",
        "metalperformanceshadersgraph/adding-custom-functions-to-a-shader-graph",
        "metal/adjusting-the-level-of-detail-using-metal-mesh-shaders",
        "metalfx/applying-temporal-antialiasing-and-upscaling-using-metalfx",
        "metal/calculating-primitive-visibility-using-depth-testing",
        "metal/capturing-metal-commands-programmatically",
        "metal/combining-blit-and-compute-operations-in-a-single-pass",
        "metal/control-the-ray-tracing-process-using-intersection-queries",
        "metal/creating-a-3d-application-with-hydra-rendering",
        "metal/creating-a-custom-metal-view",
        "metal/creating-a-metal-dynamic-library",
        "metal/creating-and-sampling-textures",
        "metal/culling-occluded-geometry-using-the-visibility-result-buffer",
        "metal/customizing-a-pytorch-operation",
        "metal/customizing-a-tensorflow-operation",
        "metal/customizing-render-pass-setup",
        "metal/customizing-shaders-using-function-pointers-and-stitching",
        "metal/drawing-a-triangle-with-metal-4",
        "metal/encoding-argument-buffers-on-the-gpu",
        "metal/encoding-indirect-command-buffers-on-the-cpu",
        "metal/encoding-indirect-command-buffers-on-the-gpu",
        "metalperformanceshadersgraph/filtering-images-with-mpsgraph-fft-operations",
        "metal/implementing-a-multistage-image-filter-using-heaps-and-events",
        "metal/implementing-a-multistage-image-filter-using-heaps-and-fences",
        "metal/implementing-order-independent-transparency-with-image-blocks",
        "metal/improving-edge-rendering-quality-with-multisample-antialiasing-msaa",
        "metal/loading-textures-and-models-using-metal-fast-resource-loading",
        "metal/managing-groups-of-resources-with-argument-buffers",
        "metal/migrating-opengl-code-to-metal",
        "metal/mixing-metal-and-opengl-rendering-in-a-view",
        "metal/modern-rendering-with-metal",
        "metal/performing-calculations-on-a-gpu",
        "metal/processing-hdr-images-with-metal",
        "metal/reading-pixel-data-from-a-drawable-texture",
        "metal/rendering-a-curve-primitive-in-a-ray-tracing-scene",
        "metal/rendering-a-scene-with-deferred-lighting-in-c++",
        "metal/rendering-a-scene-with-deferred-lighting-in-objective-c",
        "metal/rendering-a-scene-with-deferred-lighting-in-swift",
        "metal/rendering-a-scene-with-forward-plus-lighting-using-tile-shaders",
        "metal/rendering-reflections-in-real-time-using-ray-tracing",
        "metal/rendering-reflections-with-fewer-render-passes",
        "metal/rendering-terrain-dynamically-with-argument-buffers",
        "metal/running-a-machine-learning-model-on-the-gpu-timeline",
        "metal/running-inline-ml-operations-in-a-shader-with-metal-4",
        "metal/selecting-device-objects-for-compute-processing",
        "metal/selecting-device-objects-for-graphics-rendering",
        "metal/streaming-large-images-with-metal-sparse-textures",
        "metal/supporting-simulator-in-a-metal-app",
        "metal/synchronizing-cpu-and-gpu-work",
        "metalperformanceshadersgraph/training-a-neural-network-using-mps-graph",
        "metalperformanceshaders/training-a-neural-network-with-metal-performance-shaders",
        "metal/using-argument-buffers-with-resource-heaps",
        "metal/using-function-specialization-to-build-pipeline-variants",
        "metal/using-metal-to-draw-a-view's-contents"
      ]
    },
    {
      "name": "Photos and video",
      "position": 18,
      "sample_ids": [
        "photokit/bringing-photos-picker-to-your-swiftui-app",
        "photokit/browsing-and-modifying-photo-albums",
        "groupactivities/building-a-guessing-game-for-visionos",
        "screencapturekit/capturing-screen-content-in-macos",
        "dockkit/controlling-a-dockkit-accessory-using-your-camera-app",
        "groupactivities/creating-a-collaborative-photo-gallery-with-shareplay",
        "photokit/creating-a-slideshow-project-extension-for-photos",
        "groupactivities/drawing_content_in_a_group_session",
        "videotoolbox/encoding-video-for-live-streaming",
        "videotoolbox/encoding-video-for-low-latency-conferencing",
        "videotoolbox/encoding-video-for-offline-transcoding",
        "photokit/implementing-an-inline-photos-picker",
        "cinematic/playing-and-editing-cinematic-mode-video",
        "replaykit/recording-and-streaming-your-macos-app",
        "photokit/selecting-photos-and-videos-in-ios",
        "visionkit/structuring-recognized-text-on-a-document"
      ]
    },
    {
      "name": "RealityKit and Reality Composer Pro",
      "position": 19,
      "sample_ids": [
        "realitykit/altering_realitykit_rendering_with_shader_functions",
        "realitykit/animated-rotation-with-a-system",
        "realitykit/bringing-your-scenekit-projects-to-realitykit",
        "realitykit/building-an-immersive-experience-with-realitykit",
        "realitykit/building-an-object-reconstruction-app",
        "realitykit/combining-2d-and-3d-views-in-an-immersive-app",
        "realitykit/composing-interactive-3d-content-with-realitykit-and-reality-composer-pro",
        "realitykit/configuring-collision-in-realitykit",
        "realitykit/construct-an-immersive-environment-for-visionos",
        "realitykit/controlling_entity_collisions_in_realitykit",
        "realitykit/creating-a-game-with-scene-understanding",
        "realitykit/creating-an-app-for-face-painting-in-ar",
        "realitykit/creating-a-photogrammetry-command-line-app",
        "realitykit/creating-a-spaceship-game",
        "realitykit/creating-a-spatial-drawing-app-with-realitykit",
        "realitykit/docking-a-video-player-in-an-immersive-scene",
        "realitykit/generating-interactive-geometry-with-realitykit",
        "realitykit/implementing-special-rendering-effects-with-realitykit-postprocessing",
        "realitykit/integrating-virtual-objects-with-your-environment",
        "realitykit/presenting-an-artists-scene",
        "realitykit/presenting-images-in-realitykit",
        "realitykit/rendering-a-windowed-game-in-stereo",
        "realitykit/rendering-stereoscopic-video-with-realitykit",
        "realitykit/responding-to-gestures-on-an-entity",
        "realitykit/scanning-objects-using-object-capture",
        "realitykit/simulating-particles-in-your-visionos-app",
        "realitykit/simulating-physics-joints-in-your-realitykit-app",
        "realitykit/simulating-physics-with-collisions-in-your-visionos-app",
        "realitykit/tracking-a-handheld-accessory-as-a-virtual-sculpting-tool",
        "realitykit/transforming-entities-between-realitykit-coordinate-spaces",
        "realitykit/transforming-realitykit-entities-with-gestures",
        "realitykit/using-object-capture-assets-in-realitykit",
        "realitykit/wwdc21_challenge_framework_freestyle"
      ]
    },
    {
      "name": "StoreKit",
      "position": 20,
      "sample_ids": [
        "storekit/determining-service-entitlement-on-the-server",
        "storekit/generating-a-promotional-offer-signature-on-the-server",
        "storekit/offering-completing-and-restoring-in-app-purchases",
        "storekit/offering-media-for-sale-in-your-app",
        "storekit/requesting-app-store-reviews",
        "storekittest/testing-and-validating-ad-impression-signatures-and-postbacks-for-skadnetwork",
        "storekit/understanding-storekit-workflows"
      ]
    },
    {
      "name": "Swift and SwiftData",
      "position": 21,
      "sample_ids": [
        "swiftdata/adding-and-editing-persistent-data-in-your-app",
        "swift/callingapisacrosslanguageboundaries",
        "swift/code-along-elevating-an-app-with-swift-concurrency",
        "swiftdata/defining-data-relationships-with-enumerations-and-model-classes",
        "swiftdata/deleting-persistent-data-from-your-app",
        "swiftdata/filtering-and-sorting-persistent-data",
        "swiftdata/maintaining-a-local-copy-of-server-data",
        "swift/mixinglanguagesinanxcodeproject",
        "swift/tictacfish_implementing_a_game_using_distributed_actors",
        "swift/updating-an-app-to-use-strict-concurrency",
        "swift/updating_an_app_to_use_swift_concurrency"
      ]
    },
    {
      "name": "SwiftUI",
      "position": 22,
      "sample_ids": [
        "swiftui/add-rich-graphics-to-your-swiftui-app",
        "swiftui/adopting-drag-and-drop-using-swiftui",
        "swiftui/backyard-birds-sample",
        "swiftui/bringing-multiple-windows-to-your-swiftui-app",
        "swiftui/bringing-robust-navigation-structure-to-your-swiftui-app",
        "swiftui/building-a-document-based-app-using-swiftdata",
        "swiftui/building-a-great-mac-app-with-swiftui",
        "swiftui/building-rich-swiftui-text-experiences",
        "swiftui/composing-custom-layouts-with-swiftui",
        "swiftui/controlling-the-timing-and-movements-of-your-animations",
        "swiftui/creating-accessible-views",
        "swiftui/creating-a-tvos-media-catalog-app-in-swiftui",
        "swiftui/creating-custom-container-views",
        "swiftui/creating-visual-effects-with-swiftui",
        "swiftui/customizing-window-styles-and-state-restoration-behavior-in-macos",
        "swiftui/enhancing-your-app-content-with-tab-navigation",
        "swiftui/focus-cookbook-sample",
        "swiftui/food-truck-building-a-swiftui-multiplatform-app",
        "swiftui/landmarks-applying-a-background-extension-effect",
        "swiftui/landmarks-building-an-app-with-liquid-glass",
        "swiftui/landmarks-displaying-custom-activity-badges",
        "swiftui/landmarks-extending-horizontal-scrolling-under-a-sidebar-or-inspector",
        "swiftui/landmarks-refining-the-system-provided-glass-effect-in-toolbars",
        "swiftui/loading-and-displaying-a-large-data-feed",
        "swiftui/managing-model-data-in-your-app",
        "swiftui/migrating-from-the-observable-object-protocol-to-the-observable-macro",
        "swiftui/monitoring-model-data-changes-in-your-app",
        "swiftui/restoring-your-app-s-state-with-swiftui",
        "swiftui/wishlist-planning-travel-in-a-swiftui-app"
      ]
    },
    {
      "name": "System",
      "position": 23,
      "sample_ids": [
        "network/building-a-custom-peer-to-peer-protocol",
        "wifiaware/building-peer-to-peer-apps",
        "corenfc/building-an-nfc-tag-reader-app",
        "fskit/building-a-passthrough-file-system",
        "kernel/hardware_families/usb/building_a_simple_usb_driver",
        "network/collecting-network-connection-metrics",
        "driverkit/communicating-between-a-driverkit-extension-and-a-client-app",
        "iokit/communicating_with_a_modem_on_a_serial_port",
        "networkextension/configuring-a-wi-fi-accessory-to-join-a-network",
        "pcidriverkit/connecting-a-network-driver",
        "security/constraining-a-tool's-launch-environment",
        "mididriverkit/creating-a-midi-device-driver",
        "corenfc/creating-nfc-tags-from-your-iphone",
        "cryptokit/enhancing-your-app-s-privacy-and-security-with-quantum-secure-workflows",
        "applearchive/encrypting-and-decrypting-a-single-file",
        "applearchive/encrypting-and-decrypting-a-string",
        "applearchive/encrypting-and-decrypting-directories",
        "networkextension/filtering-network-traffic",
        "networkextension/filtering-traffic-by-url",
        "hiddriverkit/handling-keyboard-events-from-a-human-interface-device",
        "hiddriverkit/handling-stylus-input-from-a-human-interface-device",
        "storekit/implementing-a-store-in-your-app-using-the-storekit-api",
        "network/implementing-netcat-with-network-framework",
        "endpointsecurity/monitoring-system-events-with-endpoint-security",
        "cryptokit/performing-common-cryptographic-operations",
        "networkextension/receiving-voice-and-text-communications-on-a-local-network",
        "virtualization/running-gui-linux-in-a-virtual-machine-on-a-mac",
        "virtualization/running-linux-in-a-virtual-machine",
        "virtualization/running-macos-in-a-virtual-machine-on-apple-silicon",
        "accessorysetupkit/setting-up-and-authorizing-a-bluetooth-accessory",
        "networkextension/setting-up-a-pir-server-for-url-filtering",
        "wifiinfrastructure/sharing-wi-fi-network-credentials",
        "cryptokit/storing-cryptokit-keys-in-the-keychain",
        "networkextension/using-the-bloom-filter-tool"
      ]
    },
    {
      "name": "TV",
      "position": 24,
      "sample_ids": [
        "avkit/adopting-picture-in-picture-playback-in-tvos",
        "tvmljs/binding_json_data_to_tvml_documents",
        "tvservices/building-a-full-screen-top-shelf-extension",
        "tvmljs/creating_a_client-server_tvml_app",
        "avkit/creating-a-multiview-video-playback-experience-in-visionos",
        "tvuikit/creating-immersive-experiences-using-a-full-screen-layout",
        "tvml/displaying-a-product-or-bundle-in-a-full-page-template",
        "tvmlkit/implementing-a-hybrid-tv-app-with-tvmlkit",
        "tvservices/mapping-apple-tv-users-to-app-profiles",
        "tvmljs/playing_media_in_a_client-server_app",
        "avkit/playing-video-content-in-a-standard-user-interface",
        "tvmljs/responding_to_user_interaction",
        "avkit/supporting-continuity-camera-in-your-tvos-app",
        "tvservices/supporting-multiple-users-in-your-tvos-app",
        "avkit/working-with-overlays-and-parental-controls-in-tvos"
      ]
    },
    {
      "name": "UIKit",
      "position": 25,
      "sample_ids": [
        "uikit/add-home-screen-quick-actions",
        "uikit/adding-context-menus-in-your-app",
        "uikit/adding-hardware-keyboard-support-to-your-app",
        "uikit/adding-menus-and-shortcuts-to-the-menu-bar-and-user-interface",
        "uikit/adjusting-your-layout-with-keyboard-layout-guide",
        "uikit/adopting-drag-and-drop-in-a-custom-view",
        "uikit/adopting-drag-and-drop-in-a-table-view",
        "uikit/adopting-hover-support-for-apple-pencil",
        "uikit/adopting-ios-dark-mode",
        "uikit/adopting-menus-and-uiactions-in-your-user-interface",
        "uikit/asynchronously-loading-images-into-table-and-collection-views",
        "uikit/building-a-document-browser-app-for-custom-file-formats",
        "uikit/building-an-app-with-a-document-browser",
        "uikit/building-and-improving-your-app-with-mac-catalyst",
        "uikit/building-high-performance-lists-and-collection-views",
        "uikit/changing-the-appearance-of-selected-and-highlighted-cells",
        "uikit/creating-self-sizing-table-view-cells",
        "uikit/customizing-and-resizing-sheets-in-uikit",
        "uikit/customizing-an-image-picker-controller",
        "uikit/customizing-collection-view-layouts",
        "uikit/customizing-your-app-s-navigation-bar",
        "uikit/data-delivery-with-drag-and-drop",
        "uikit/detecting-changes-in-the-preferences-window",
        "uikit/disabling-the-pull-down-gesture-for-a-sheet",
        "uikit/displaying-searchable-content-by-using-a-search-controller",
        "uikit/display-text-with-a-custom-layout",
        "uikit/enhancing-your-ipad-app-with-pointer-interactions",
        "uikit/enriching-your-text-in-text-views",
        "uikit/illustrating-the-force-altitude-and-azimuth-properties-of-touch-input",
        "uikit/implementing-modern-collection-views",
        "uikit/implementing-peek-and-pop",
        "uikit/integrating-pointer-interactions-into-your-ipad-app",
        "uikit/leveraging-touch-input-for-drawing-apps",
        "uikit/navigating-an-app-s-user-interface-using-a-keyboard",
        "uikit/prefetching-collection-view-data",
        "uikit/restoring-your-app-s-state",
        "uikit/selecting-multiple-items-with-a-two-finger-pan-gesture",
        "uikit/showing-help-tags-for-views-and-controls-using-tooltip-interactions",
        "uikit/supporting-desktop-class-features-in-your-ipad-app",
        "uikit/supporting-gesture-interaction-in-your-apps",
        "uikit/supporting-hdr-images-in-your-app",
        "uikit/supporting-multiple-windows-on-ipad",
        "uikit/synchronizing-documents-in-the-icloud-environment",
        "uikit/uikit-catalog-creating-and-customizing-views-and-controls",
        "uikit/updating-collection-views-using-diffable-data-sources",
        "uikit/using-suggested-searches-with-a-search-controller",
        "uikit/using-swiftui-with-uikit",
        "uikit/using-textkit-2-to-interact-with-text"
      ]
    },
    {
      "name": "Vision",
      "position": 26,
      "sample_ids": [
        "vision/aligning-similar-images",
        "vision/analyzing-a-selfie-and-visualizing-its-content",
        "vision/analyzing-image-similarity-with-feature-print",
        "vision/applying-matte-effects-to-people-in-images-and-video",
        "vision/applying-visual-effects-to-foreground-subjects",
        "vision/building-a-feature-rich-app-for-sports-analysis",
        "vision/classifying-images-for-categorization-and-search",
        "vision/detecting-animal-body-poses-with-vision",
        "vision/detecting-hand-poses-with-vision",
        "vision/detecting-human-body-poses-in-3d-with-vision",
        "vision/detecting-moving-objects-in-a-video",
        "vision/detecting-objects-in-still-images",
        "vision/extracting-phone-numbers-from-text-in-images",
        "vision/generating-thumbnails-from-videos",
        "vision/highlighting-areas-of-interest-in-an-image-using-saliency",
        "vision/locating-and-displaying-recognized-text",
        "vision/recognizing-objects-in-live-capture",
        "vision/segmenting-and-colorizing-individuals-from-a-surrounding-scene",
        "vision/selecting-a-selfie-based-on-capture-quality",
        "vision/tracking-multiple-objects-or-rectangles-in-video",
        "vision/tracking-the-user-s-face-in-real-time",
        "vision/training-a-create-ml-model-to-classify-flowers"
      ]
    },
    {
      "name": "visionOS",
      "position": 27,
      "sample_ids": [
        "visionos/accessing-the-main-camera",
        "visionos/adding-a-depth-effect-to-text-in-visionos",
        "visionos/animating-hand-models-in-visionos",
        "visionos/applying-mesh-to-real-world-surroundings",
        "visionos/associating-a-window-with-an-immersive-space",
        "immersivemediasupport/authoring-apple-immersive-video",
        "visionos/bot-anist",
        "visionos/building-an-immersive-media-viewing-experience",
        "visionos/building-local-experiences-with-room-tracking",
        "visionos/canyon-crosser-building-a-volumetric-hike-planning-app",
        "visionos/chaparral-village-building-an-immersive-visionos-adventure-game",
        "visionos/connecting-ipados-and-visionos-apps-over-the-local-network",
        "visionos/creating-2d-shapes-in-visionos-with-swiftui",
        "visionos/creating-3d-entities-with-realitykit",
        "visionos/creating-a-volumetric-window-in-visionos",
        "visionos/creating-a-painting-space-in-visionos",
        "foveatedstreaming/creating-a-foveated-streaming-client-on-visionos",
        "visionos/creating-immersive-spaces-in-visionos-with-swiftui",
        "visionos/creating-an-interactable-3d-model-in-visionos",
        "visionos/creating-a-new-swiftui-window-in-visionos",
        "visionos/designing-no-code-games-in-reality-composer-pro-3",
        "visionos/destination-video",
        "visionos/diorama",
        "visionos/displaying-a-3d-environment-through-a-portal",
        "visionos/displaying-a-3d-object-that-moves-to-stay-in-a-person's-view",
        "visionos/displaying-a-stereoscopic-image-in-visionos",
        "realitykit/displaying-low-latency-connected-video",
        "visionos/displaying-text-in-visionos",
        "visionos/displaying-video-from-connected-devices",
        "visionos/drawing-in-the-air-and-on-surfaces-with-a-spatial-stylus",
        "visionos/embedding-controls-in-an-immersive-space",
        "visionos/enabling-video-reflections-in-an-immersive-environment",
        "visionos/exploring_object_tracking_with_arkit",
        "visionos/generating-procedural-textures-in-visionos",
        "visionos/handling-the-window-life-cycle-with-multiple-scenes",
        "visionos/happybeam",
        "visionos/world",
        "visionos/implementing-adjustable-material-in-visionos",
        "visionos/implementing-shareplay-for-immersive-spaces-in-visionos",
        "visionos/incorporating-real-world-surroundings-in-an-immersive-experience",
        "visionos/locating-and-decoding-barcodes-in-3d-space",
        "visionos/manipulating-entities-with-solid-collisions",
        "visionos/monitoring-fit-and-field-of-view-fidelity",
        "visionos/object-tracking-with-reality-composer-pro-experiences",
        "visionos/obscuring-virtual-items-in-a-scene-behind-real-world-items",
        "visionos/petite-asteroids-building-a-volumetric-visionos-game",
        "visionos/placing-content-on-detected-planes",
        "visionos/placing-entities-using-head-and-device-transform",
        "avkit/playing-immersive-media-with-avkit",
        "visionos/playing-immersive-media-with-realitykit",
        "visionos/playing-spatial-audio-in-visionos",
        "compositorservices/rendering_hover_effects_in_metal_immersive_apps",
        "visionos/swift-splash",
        "visionos/tracking-and-visualizing-hand-movement",
        "visionos/tracking-points-in-world-space",
        "visionos/working-with-generic-spatial-accessories"
      ]
    },
    {
      "name": "Watch",
      "position": 28,
      "sample_ids": [
        "watchos-apps/building-a-productivity-app-for-apple-watch",
        "watchos-apps/create-accessible-experiences-for-watchos",
        "clockkit/creating-and-updating-a-complication-s-timeline",
        "workoutkit/customizing-workouts-with-workoutkit",
        "clockkit/displaying-essential-information-on-a-watch-face",
        "watchkit/interacting-with-bluetooth-peripherals-during-background-app-refresh",
        "clockkit/providing-multiple-complications",
        "watchconnectivity/transferring-data-with-watch-connectivity",
        "watchos-apps/updating-your-app-and-widgets-for-watchos-10"
      ]
    },
    {
      "name": "Web",
      "position": 29,
      "sample_ids": [
        "safariservices/adopting-declarative-content-blocking-in-safari-web-extensions",
        "safariservices/adopting-new-safari-web-extension-apis",
        "webkit/building-a-cross-platform-web-browser",
        "safariservices/creating-safari-web-inspector-extensions",
        "browserenginekit/developing-a-browser-app-that-uses-an-alternative-browser-engine",
        "safariservices/developing-a-safari-web-extension",
        "safariservices/messaging-a-web-extension-s-native-app",
        "safariservices/modernizing-safari-web-extensions",
        "safariservices/previewing-metadata-using-open-graph",
        "webkit/viewing-desktop-or-mobile-web-content-using-a-web-view"
      ]
    }
  ],
  "complete": true,
  "counts": {
    "categories": 30,
    "index_pages_crawled": 395,
    "modules": 144,
    "samples": 657,
    "technology_roots": 400
  },
  "crawl_errors": [],
  "modules": [
    {
      "name": "Accelerate",
      "sample_ids": [
        "accelerate/adding-a-bokeh-effect-to-images",
        "accelerate/adjusting-saturation-and-applying-tone-mapping",
        "accelerate/adjusting-the-brightness-and-contrast-of-an-image",
        "accelerate/adjusting-the-hue-of-an-image",
        "accelerate/applying-biquadratic-filters-to-a-music-loop",
        "accelerate/applying-tone-curve-adjustments-to-images",
        "accelerate/applying-transformations-to-selected-colors-in-an-image",
        "accelerate/applying-vimage-operations-to-video-sample-buffers",
        "accelerate/blurring-an-image",
        "accelerate/calculating-the-dominant-colors-in-an-image",
        "accelerate/compressing-an-image-using-linear-algebra",
        "accelerate/compressing-and-decompressing-files-with-stream-compression",
        "accelerate/converting-color-images-to-grayscale",
        "accelerate/converting-luminance-and-chrominance-planes-to-an-argb-image",
        "accelerate/creating-an-audio-unit-extension-using-the-vdsp-library",
        "accelerate/cropping-to-the-subject-in-a-chroma-keyed-image",
        "accelerate/equalizing-audio-with-discrete-cosine-transforms-dcts",
        "accelerate/finding-the-sharpest-image-in-a-sequence-of-captured-images",
        "accelerate/halftone-descreening-with-2d-fast-fourier-transform",
        "accelerate/improving-the-quality-of-quantized-images-with-dithering",
        "accelerate/integrating-vimage-pixel-buffers-into-a-core-image-workflow",
        "accelerate/reducing-artifacts-with-custom-resampling-filters",
        "accelerate/rotating-a-cube-by-transforming-its-vertices",
        "accelerate/sharing-texture-data-between-the-model-io-framework-and-the-vimage-library",
        "accelerate/signal-extraction-from-noise",
        "accelerate/solving-systems-of-linear-equations-with-lapack",
        "accelerate/specifying-histograms-with-vimage",
        "accelerate/supporting-real-time-ml-inference-on-the-cpu",
        "accelerate/training-a-neural-network-to-recognize-digits",
        "accelerate/using-vimage-pixel-buffers-to-generate-video-effects",
        "accelerate/visualizing-sound-as-an-audio-spectrogram"
      ]
    },
    {
      "name": "Accessibility",
      "sample_ids": [
        "accessibility/accessibility_design_for_mac_catalyst",
        "accessibility/delivering_an_exceptional_accessibility_experience",
        "accessibility/enhancing-the-accessibility-of-your-swiftui-app",
        "accessibility/integrating-accessibility-into-your-app",
        "accessibility/wwdc21_challenge_large_text_challenge",
        "accessibility/wwdc21_challenge_speech_synthesizer_simulator",
        "accessibility/wwdc21_challenge_voiceover_maze",
        "accessibility/wwdc22_challenge_learn_switch_control_through_gaming"
      ]
    },
    {
      "name": "AccessorySetupKit",
      "sample_ids": [
        "accessorysetupkit/setting-up-and-authorizing-a-bluetooth-accessory"
      ]
    },
    {
      "name": "AlarmKit",
      "sample_ids": [
        "alarmkit/scheduling-an-alarm-with-alarmkit"
      ]
    },
    {
      "name": "App Clips",
      "sample_ids": [
        "appclip/fruta-building-a-feature-rich-app-with-swiftui",
        "appclip/interacting-with-app-clip-codes-in-ar"
      ]
    },
    {
      "name": "App Intents",
      "sample_ids": [
        "appintents/acceleratingappinteractionswithappintents",
        "appintents/adopting-app-intents-to-support-system-experiences",
        "appintents/defining-your-app-s-focus-filter",
        "appintents/integrating-your-calendar-app-with-apple-intelligence",
        "appintents/integrating-your-messaging-app-with-apple-intelligence",
        "appintents/integrating-your-music-app-with-apple-intelligence",
        "appintents/integrating-your-photo-app-with-apple-intelligence"
      ]
    },
    {
      "name": "App Store Connect API",
      "sample_ids": [
        "appstoreconnectapi/retrieve-power-and-performance-metrics-and-log-insights",
        "appstoreconnectapi/uploading-app-previews"
      ]
    },
    {
      "name": "AppKit",
      "sample_ids": [
        "appkit/add-functionality-to-finder-with-action-extensions",
        "appkit/creating-and-customizing-the-touch-bar",
        "appkit/developing-a-document-based-app",
        "appkit/enhancing-your-custom-text-engine-with-writing-tools",
        "appkit/integrating-a-toolbar-and-touch-bar-into-your-app",
        "appkit/navigating-hierarchical-data-using-outline-and-split-views",
        "appkit/organize-your-user-interface-with-a-stack-view",
        "appkit/restoring-your-app-s-state-with-appkit",
        "appkit/supporting-collection-view-drag-and-drop-through-file-promises",
        "appkit/supporting-drag-and-drop-through-file-promises",
        "appkit/supporting-table-view-drag-and-drop-through-file-promises"
      ]
    },
    {
      "name": "Apple Archive",
      "sample_ids": [
        "applearchive/encrypting-and-decrypting-a-single-file",
        "applearchive/encrypting-and-decrypting-a-string",
        "applearchive/encrypting-and-decrypting-directories"
      ]
    },
    {
      "name": "Apple CryptoKit",
      "sample_ids": [
        "cryptokit/enhancing-your-app-s-privacy-and-security-with-quantum-secure-workflows",
        "cryptokit/performing-common-cryptographic-operations",
        "cryptokit/storing-cryptokit-keys-in-the-keychain"
      ]
    },
    {
      "name": "Apple Maps Server API",
      "sample_ids": [
        "applemapsserverapi/integrating-the-apple-maps-server-api-into-java-server-applications"
      ]
    },
    {
      "name": "Apple-Silicon",
      "sample_ids": [
        "apple-silicon/providing-an-edge-to-edge-full-screen-experience-in-your-ipad-app-running-on-a-mac",
        "apple-silicon/providing-touch-gesture-equivalents-using-touch-alternatives"
      ]
    },
    {
      "name": "ARKit",
      "sample_ids": [
        "arkit/adding-realistic-reflections-to-an-ar-experience",
        "arkit/building_local_experiences_with_room_tracking",
        "arkit/capturing-body-motion-in-3d",
        "arkit/combining-user-face-tracking-and-world-tracking",
        "arkit/creating-a-collaborative-session",
        "arkit/creating-a-fog-effect-using-scene-depth",
        "arkit/creating-a-multiuser-ar-experience",
        "arkit/creating-an-immersive-ar-experience-with-audio",
        "arkit/creating-screen-annotations-for-objects-in-an-ar-experience",
        "arkit/detecting-images-in-an-ar-experience",
        "arkit/displaying-a-point-cloud-using-scene-depth",
        "arkit/effecting-people-occlusion-in-custom-renderers",
        "arkit/occluding-virtual-content-with-people",
        "arkit/placing-objects-and-handling-3d-interaction",
        "arkit/recognizing-and-labeling-arbitrary-objects",
        "arkit/saving-and-loading-world-data",
        "arkit/scanning-and-detecting-3d-objects",
        "arkit/streaming-an-ar-experience",
        "arkit/tracking-a-handheld-accessory-as-a-virtual-sculpting-tool",
        "arkit/tracking-accessories-in-volumetric-windows",
        "arkit/tracking-and-altering-images",
        "arkit/tracking-and-visualizing-faces",
        "arkit/tracking-and-visualizing-planes",
        "arkit/tracking-geographic-locations-in-ar",
        "arkit/visualizing-and-interacting-with-a-reconstructed-scene"
      ]
    },
    {
      "name": "Audio Toolbox",
      "sample_ids": [
        "audiotoolbox/encoding-and-decoding-audio",
        "audiotoolbox/generating-spatial-audio-from-a-multichannel-audio-stream",
        "audiotoolbox/incorporating-audio-effects-and-instruments"
      ]
    },
    {
      "name": "AudioDriverKit",
      "sample_ids": [
        "audiodriverkit/creating-an-audio-device-driver"
      ]
    },
    {
      "name": "Authentication Services",
      "sample_ids": [
        "authenticationservices/connecting-to-a-service-with-passkeys",
        "authenticationservices/implementing-user-authentication-with-sign-in-with-apple",
        "authenticationservices/performing-fast-account-creation-with-passkeys",
        "authenticationservices/simplifying-user-authentication-in-a-tvos-app"
      ]
    },
    {
      "name": "Automatic Assessment Configuration",
      "sample_ids": [
        "automaticassessmentconfiguration/build-an-educational-assessment-app"
      ]
    },
    {
      "name": "AVFAudio",
      "sample_ids": [
        "avfaudio/adding-synthesized-speech-to-calls",
        "avfaudio/building-a-signal-generator",
        "avfaudio/building-an-audio-sequencer-to-arrange-and-play-clips",
        "avfaudio/capturing-stereo-audio-from-built-in-microphones",
        "avfaudio/creating-a-custom-speech-synthesizer",
        "avfaudio/creating-custom-audio-effects",
        "avfaudio/performing-offline-audio-processing",
        "avfaudio/playing-custom-audio-with-your-own-player",
        "avfaudio/using-voice-processing"
      ]
    },
    {
      "name": "AVFoundation",
      "sample_ids": [
        "avfoundation/adding-a-display-mask-rectangle-metadata-track-to-a-movie-file",
        "avfoundation/avcam-building-a-camera-app",
        "avfoundation/avcambarcode-detecting-barcodes-and-faces",
        "avfoundation/avcamfilter-applying-filters-to-a-capture-stream",
        "avfoundation/avmulticampip-capturing-from-multiple-cameras",
        "avfoundation/build-a-responsive-camera-app-that-launches-quickly",
        "avfoundation/capturing-cinematic-video",
        "avfoundation/capturing-consistent-color-images",
        "avfoundation/capturing-depth-using-the-lidar-camera",
        "avfoundation/capturing-spatial-audio-in-your-ios-app",
        "avfoundation/converting-projected-video-to-apple-projected-media-profile",
        "avfoundation/converting-side-by-side-3d-video-to-multiview-hevc-and-spatial-video",
        "avfoundation/creating-a-seamless-multiview-playback-experience",
        "avfoundation/debugging-avfoundation-audio-mixes-compositions-and-video-compositions",
        "avfoundation/editing-and-playing-hdr-video",
        "avfoundation/enhancing-live-video-by-leveraging-truedepth-camera-data",
        "avfoundation/integrating-airplay-for-long-form-video-apps",
        "avfoundation/processing-spatial-video-with-a-custom-video-compositor",
        "avfoundation/providing-an-integrated-view-of-your-timeline-when-playing-hls-interstitials",
        "avfoundation/reading-multiview-3d-video-files",
        "avfoundation/streaming-depth-data-from-the-truedepth-camera",
        "avfoundation/supporting-center-stage-front-camera-in-your-ios-app",
        "avfoundation/supporting-continuity-camera-in-your-macos-app",
        "avfoundation/supporting-coordinated-media-playback",
        "avfoundation/supporting-remote-interactions-in-tvos",
        "avfoundation/using-avfoundation-to-play-and-persist-http-live-streams",
        "avfoundation/using-hevc-video-with-alpha",
        "avfoundation/writing-fragmented-mpeg-4-files-for-http-live-streaming"
      ]
    },
    {
      "name": "AVKit",
      "sample_ids": [
        "avkit/adopting-picture-in-picture-playback-in-tvos",
        "avkit/creating-a-multiview-video-playback-experience-in-visionos",
        "avkit/playing-immersive-media-with-avkit",
        "avkit/playing-video-content-in-a-standard-user-interface",
        "avkit/supporting-continuity-camera-in-your-tvos-app",
        "avkit/working-with-overlays-and-parental-controls-in-tvos"
      ]
    },
    {
      "name": "Background Assets",
      "sample_ids": [
        "backgroundassets/downloading-essential-assets-in-the-background"
      ]
    },
    {
      "name": "Background Tasks",
      "sample_ids": [
        "backgroundtasks/refreshing-and-maintaining-your-app-using-background-tasks"
      ]
    },
    {
      "name": "BrowserEngineKit",
      "sample_ids": [
        "browserenginekit/developing-a-browser-app-that-uses-an-alternative-browser-engine"
      ]
    },
    {
      "name": "CallKit",
      "sample_ids": [
        "callkit/voip-calling-with-callkit"
      ]
    },
    {
      "name": "CarPlay",
      "sample_ids": [
        "carplay/integrating-carplay-with-your-music-app",
        "carplay/integrating-carplay-with-your-navigation-app",
        "carplay/integrating-carplay-with-your-quick-ordering-app"
      ]
    },
    {
      "name": "Cinematic",
      "sample_ids": [
        "cinematic/editing-spatial-audio-with-an-audio-mix",
        "cinematic/playing-and-editing-cinematic-mode-video"
      ]
    },
    {
      "name": "ClassKit",
      "sample_ids": [
        "classkit/incorporating-classkit-into-an-educational-app"
      ]
    },
    {
      "name": "ClockKit",
      "sample_ids": [
        "clockkit/creating-and-updating-a-complication-s-timeline",
        "clockkit/displaying-essential-information-on-a-watch-face",
        "clockkit/providing-multiple-complications"
      ]
    },
    {
      "name": "CloudKit",
      "sample_ids": [
        "cloudkit/sharing-cloudkit-data-with-other-icloud-users"
      ]
    },
    {
      "name": "Compositor Services",
      "sample_ids": [
        "compositorservices/interacting-with-virtual-content-blended-with-passthrough",
        "compositorservices/rendering_hover_effects_in_metal_immersive_apps"
      ]
    },
    {
      "name": "Contacts",
      "sample_ids": [
        "contacts/accessing-a-person-s-contact-data-using-contacts-and-contactsui"
      ]
    },
    {
      "name": "Core Audio",
      "sample_ids": [
        "coreaudio/building-an-audio-server-plug-in-and-driver-extension",
        "coreaudio/capturing-system-audio-with-core-audio-taps",
        "coreaudio/creating-an-audio-server-driver-plug-in"
      ]
    },
    {
      "name": "Core Bluetooth",
      "sample_ids": [
        "corebluetooth/measuring-distance-between-devices-using-channel-sounding",
        "corebluetooth/transferring-data-between-bluetooth-low-energy-devices",
        "corebluetooth/using-core-bluetooth-classic"
      ]
    },
    {
      "name": "Core Data",
      "sample_ids": [
        "coredata/adopting-swiftdata-for-a-core-data-app",
        "coredata/handling-different-data-types-in-core-data",
        "coredata/linking-data-between-two-core-data-stores",
        "coredata/sharing-core-data-objects-between-icloud-users",
        "coredata/showcase-app-data-in-spotlight",
        "coredata/synchronizing-a-local-store-to-the-cloud"
      ]
    },
    {
      "name": "Core Haptics",
      "sample_ids": [
        "corehaptics/delivering-rich-app-experiences-with-haptics",
        "corehaptics/playing-a-custom-haptic-pattern-from-a-file",
        "corehaptics/playing-collision-based-haptic-patterns",
        "corehaptics/playing-haptics-on-game-controllers",
        "corehaptics/updating-continuous-and-transient-haptic-parameters-in-real-time"
      ]
    },
    {
      "name": "Core Image",
      "sample_ids": [
        "coreimage/generating-an-animation-with-a-core-image-render-destination"
      ]
    },
    {
      "name": "Core Location",
      "sample_ids": [
        "corelocation/adopting-live-updates-in-core-location",
        "corelocation/monitoring-location-changes-with-core-location",
        "corelocation/ranging-for-beacons"
      ]
    },
    {
      "name": "Core MIDI",
      "sample_ids": [
        "coremidi/incorporating-midi-2-into-your-apps"
      ]
    },
    {
      "name": "Core ML",
      "sample_ids": [
        "coreml/classifying-images-with-vision-and-core-ml",
        "coreml/detecting-human-body-poses-in-an-image",
        "coreml/finding-answers-to-questions-in-a-text-document",
        "coreml/integrating-a-core-ml-model-into-your-app",
        "coreml/personalizing-a-model-with-on-device-updates",
        "coreml/understanding-a-dice-roll-with-vision-and-object-detection",
        "coreml/using-core-ml-for-semantic-image-segmentation"
      ]
    },
    {
      "name": "Core Motion",
      "sample_ids": [
        "coremotion/getting-motion-activity-data-from-headphones"
      ]
    },
    {
      "name": "Core NFC",
      "sample_ids": [
        "corenfc/building-an-nfc-tag-reader-app",
        "corenfc/creating-nfc-tags-from-your-iphone"
      ]
    },
    {
      "name": "Core Spotlight",
      "sample_ids": [
        "corespotlight/searching-indexed-content-with-natural-language"
      ]
    },
    {
      "name": "CoreLocationUI",
      "sample_ids": [
        "corelocationui/sharing-your-location-to-find-a-park"
      ]
    },
    {
      "name": "Create ML",
      "sample_ids": [
        "createml/creating-a-model-from-tabular-data",
        "createml/detecting-human-actions-in-a-live-video-feed"
      ]
    },
    {
      "name": "Create ML Components",
      "sample_ids": [
        "createmlcomponents/counting-human-body-action-repetitions-in-a-live-video-feed"
      ]
    },
    {
      "name": "Declared Age Range",
      "sample_ids": [
        "declaredagerange/implementing-age-assurance-and-permissions"
      ]
    },
    {
      "name": "DeviceDiscoveryExtension",
      "sample_ids": [
        "devicediscoveryextension/discovering-a-third-party-media-streaming-device"
      ]
    },
    {
      "name": "Distributed",
      "sample_ids": [
        "swift/tictacfish_implementing_a_game_using_distributed_actors"
      ]
    },
    {
      "name": "DockKit",
      "sample_ids": [
        "dockkit/controlling-a-dockkit-accessory-using-your-camera-app"
      ]
    },
    {
      "name": "DriverKit",
      "sample_ids": [
        "driverkit/communicating-between-a-driverkit-extension-and-a-client-app"
      ]
    },
    {
      "name": "Endpoint Security",
      "sample_ids": [
        "endpointsecurity/monitoring-system-events-with-endpoint-security"
      ]
    },
    {
      "name": "EnergyKit",
      "sample_ids": [
        "energykit/optimizing-home-electricity-usage"
      ]
    },
    {
      "name": "Evaluations",
      "sample_ids": [
        "evaluations/book-tracker-using-evaluations-to-evaluate-an-intelligent-feature"
      ]
    },
    {
      "name": "EventKit",
      "sample_ids": [
        "eventkit/accessing-calendar-using-eventkit-and-eventkitui",
        "eventkit/implementing-a-virtual-conference-extension",
        "eventkit/managing-location-based-reminders"
      ]
    },
    {
      "name": "Exposure Notification",
      "sample_ids": [
        "exposurenotification/building-an-app-to-notify-users-of-covid-19-exposure"
      ]
    },
    {
      "name": "File Provider",
      "sample_ids": [
        "fileprovider/synchronizing-files-using-file-provider-extensions"
      ]
    },
    {
      "name": "FinanceKit",
      "sample_ids": [
        "financekit/implementing-a-background-delivery-extension"
      ]
    },
    {
      "name": "Foundation",
      "sample_ids": [
        "foundation/building-a-localized-food-ordering-app",
        "foundation/building-a-resumable-upload-server-with-swiftnio",
        "foundation/continuing-user-activities-with-handoff",
        "foundation/displaying-human-friendly-content",
        "foundation/increasing-app-usage-with-suggestions-based-on-user-activities",
        "foundation/language-introspector",
        "foundation/synchronizing-app-preferences-with-icloud",
        "foundation/using-json-with-custom-types"
      ]
    },
    {
      "name": "Foundation Models",
      "sample_ids": [
        "foundationmodels/adding-intelligent-app-features-with-generative-models",
        "foundationmodels/generate-dynamic-game-content-with-guided-generation-and-tools",
        "foundationmodels/origami-crafting-a-dynamic-tutorial-for-apple-intelligence"
      ]
    },
    {
      "name": "Foveated Streaming",
      "sample_ids": [
        "foveatedstreaming/creating-a-foveated-streaming-client-on-visionos"
      ]
    },
    {
      "name": "FSKit",
      "sample_ids": [
        "fskit/building-a-passthrough-file-system"
      ]
    },
    {
      "name": "Game Controller",
      "sample_ids": [
        "gamecontroller/supporting-game-controllers"
      ]
    },
    {
      "name": "GameKit",
      "sample_ids": [
        "gamekit/adding-recurring-leaderboards-to-your-game",
        "gamekit/creating-real-time-games",
        "gamekit/creating-turn-based-games"
      ]
    },
    {
      "name": "Group Activities",
      "sample_ids": [
        "groupactivities/building-a-guessing-game-for-visionos",
        "groupactivities/creating-a-collaborative-photo-gallery-with-shareplay"
      ]
    },
    {
      "name": "GroupActivities",
      "sample_ids": [
        "groupactivities/drawing_content_in_a_group_session"
      ]
    },
    {
      "name": "HealthKit",
      "sample_ids": [
        "healthkit/accessing-a-user-s-clinical-records",
        "healthkit/accessing-data-from-a-smart-health-card",
        "healthkit/build-a-workout-app-for-apple-watch",
        "healthkit/building-a-multidevice-workout-app",
        "healthkit/building-a-workout-app-for-iphone-and-ipad",
        "healthkit/creating-a-mobility-health-app",
        "healthkit/logging-symptoms-associated-with-a-medication",
        "healthkit/reading-and-writing-healthkit-series-data",
        "healthkit/tracking-heart-rate-zones-for-workouts",
        "healthkit/visualizing-healthkit-state-of-mind-in-visionos"
      ]
    },
    {
      "name": "HIDDriverKit",
      "sample_ids": [
        "hiddriverkit/handling-keyboard-events-from-a-human-interface-device",
        "hiddriverkit/handling-stylus-input-from-a-human-interface-device"
      ]
    },
    {
      "name": "HomeKit",
      "sample_ids": [
        "homekit/configuring-a-home-automation-device",
        "homekit/interacting-with-a-home-automation-network"
      ]
    },
    {
      "name": "Image I/O",
      "sample_ids": [
        "imageio/writing-spatial-photos"
      ]
    },
    {
      "name": "Immersive Media Support",
      "sample_ids": [
        "immersivemediasupport/authoring-apple-immersive-video",
        "immersivemediasupport/processing-apple-immersive-video-with-foveation"
      ]
    },
    {
      "name": "Intents",
      "sample_ids": [
        "sirikit/adding-shortcuts-for-wind-down",
        "sirikit/booking-rides-with-sirikit",
        "sirikit/handling-payment-requests-with-sirikit",
        "sirikit/handling-workout-requests-with-sirikit",
        "sirikit/integrating-your-app-with-siri-event-suggestions",
        "sirikit/managing-audio-with-sirikit",
        "sirikit/providing-hands-free-app-control-with-intents",
        "sirikit/soup-chef-accelerating-app-interactions-with-shortcuts",
        "sirikit/soup-chef-with-app-intents-migrating-custom-intents"
      ]
    },
    {
      "name": "IOKit",
      "sample_ids": [
        "iokit/communicating_with_a_modem_on_a_serial_port"
      ]
    },
    {
      "name": "Kernel",
      "sample_ids": [
        "kernel/hardware_families/usb/building_a_simple_usb_driver"
      ]
    },
    {
      "name": "Local Authentication",
      "sample_ids": [
        "localauthentication/accessing-keychain-items-with-face-id-or-touch-id",
        "localauthentication/logging-a-user-into-your-app-with-face-id-or-touch-id"
      ]
    },
    {
      "name": "MailKit",
      "sample_ids": [
        "mailkit/build-mail-app-extensions"
      ]
    },
    {
      "name": "MapKit",
      "sample_ids": [
        "mapkit/annotating-a-map-with-custom-data",
        "mapkit/decluttering-a-map-with-mapkit-annotation-clustering",
        "mapkit/displaying-an-indoor-map",
        "mapkit/displaying-an-updating-path-of-a-user-s-location-history",
        "mapkit/displaying-overlays-on-a-map",
        "mapkit/interacting-with-nearby-points-of-interest",
        "mapkit/mapkit_for_appkit_and_uikit/explore_a_location_with_a_highly_detailed_map_and_look_around",
        "mapkit/mkmapview/optimizing_map_views_with_filtering_and_camera_constraints",
        "mapkit/searching-displaying-and-navigating-to-places"
      ]
    },
    {
      "name": "MapKit JS",
      "sample_ids": [
        "mapkitjs/displaying-indoor-maps-with-mapkit-js"
      ]
    },
    {
      "name": "Media Accessibility",
      "sample_ids": [
        "mediaaccessibility/responding-to-changes-in-the-flashing-lights-setting"
      ]
    },
    {
      "name": "Media Player",
      "sample_ids": [
        "mediaplayer/becoming-a-now-playable-app"
      ]
    },
    {
      "name": "Messages",
      "sample_ids": [
        "messages/creating-a-sticker-app-with-a-custom-layout",
        "messages/icecreambuilder-building-an-imessage-extension"
      ]
    },
    {
      "name": "Metal",
      "sample_ids": [
        "metal/accelerating-ray-tracing-and-motion-blur-using-metal",
        "metal/accelerating-ray-tracing-using-metal",
        "metal/achieving-smooth-frame-rates-with-a-metal-display-link",
        "metal/adjusting-the-level-of-detail-using-metal-mesh-shaders",
        "metal/calculating-primitive-visibility-using-depth-testing",
        "metal/capturing-metal-commands-programmatically",
        "metal/combining-blit-and-compute-operations-in-a-single-pass",
        "metal/control-the-ray-tracing-process-using-intersection-queries",
        "metal/creating-a-3d-application-with-hydra-rendering",
        "metal/creating-a-custom-metal-view",
        "metal/creating-a-metal-dynamic-library",
        "metal/creating-and-sampling-textures",
        "metal/culling-occluded-geometry-using-the-visibility-result-buffer",
        "metal/customizing-a-pytorch-operation",
        "metal/customizing-a-tensorflow-operation",
        "metal/customizing-render-pass-setup",
        "metal/customizing-shaders-using-function-pointers-and-stitching",
        "metal/drawing-a-triangle-with-metal-4",
        "metal/encoding-argument-buffers-on-the-gpu",
        "metal/encoding-indirect-command-buffers-on-the-cpu",
        "metal/encoding-indirect-command-buffers-on-the-gpu",
        "metal/implementing-a-multistage-image-filter-using-heaps-and-events",
        "metal/implementing-a-multistage-image-filter-using-heaps-and-fences",
        "metal/implementing-order-independent-transparency-with-image-blocks",
        "metal/improving-edge-rendering-quality-with-multisample-antialiasing-msaa",
        "metal/loading-textures-and-models-using-metal-fast-resource-loading",
        "metal/managing-groups-of-resources-with-argument-buffers",
        "metal/migrating-opengl-code-to-metal",
        "metal/mixing-metal-and-opengl-rendering-in-a-view",
        "metal/modern-rendering-with-metal",
        "metal/performing-calculations-on-a-gpu",
        "metal/processing-hdr-images-with-metal",
        "metal/reading-pixel-data-from-a-drawable-texture",
        "metal/rendering-a-curve-primitive-in-a-ray-tracing-scene",
        "metal/rendering-a-scene-with-deferred-lighting-in-c++",
        "metal/rendering-a-scene-with-deferred-lighting-in-objective-c",
        "metal/rendering-a-scene-with-deferred-lighting-in-swift",
        "metal/rendering-a-scene-with-forward-plus-lighting-using-tile-shaders",
        "metal/rendering-reflections-in-real-time-using-ray-tracing",
        "metal/rendering-reflections-with-fewer-render-passes",
        "metal/rendering-terrain-dynamically-with-argument-buffers",
        "metal/running-a-machine-learning-model-on-the-gpu-timeline",
        "metal/running-inline-ml-operations-in-a-shader-with-metal-4",
        "metal/selecting-device-objects-for-compute-processing",
        "metal/selecting-device-objects-for-graphics-rendering",
        "metal/streaming-large-images-with-metal-sparse-textures",
        "metal/supporting-simulator-in-a-metal-app",
        "metal/synchronizing-cpu-and-gpu-work",
        "metal/training-a-neural-network-to-render-irradiance-in-real-time",
        "metal/using-argument-buffers-with-resource-heaps",
        "metal/using-function-specialization-to-build-pipeline-variants",
        "metal/using-metal-to-draw-a-view's-contents"
      ]
    },
    {
      "name": "Metal Performance Shaders",
      "sample_ids": [
        "metalperformanceshaders/training-a-neural-network-with-metal-performance-shaders"
      ]
    },
    {
      "name": "Metal Performance Shaders Graph",
      "sample_ids": [
        "metalperformanceshadersgraph/adding-custom-functions-to-a-shader-graph",
        "metalperformanceshadersgraph/filtering-images-with-mpsgraph-fft-operations",
        "metalperformanceshadersgraph/training-a-neural-network-using-mps-graph"
      ]
    },
    {
      "name": "MetalFX",
      "sample_ids": [
        "metalfx/applying-temporal-antialiasing-and-upscaling-using-metalfx"
      ]
    },
    {
      "name": "MetricKit",
      "sample_ids": [
        "metrickit/track-performance-by-app-state-using-metrickit"
      ]
    },
    {
      "name": "MIDIDriverKit",
      "sample_ids": [
        "mididriverkit/creating-a-midi-device-driver"
      ]
    },
    {
      "name": "Music Understanding",
      "sample_ids": [
        "musicunderstanding/create-visuals-using-musicunderstanding-analysis-results"
      ]
    },
    {
      "name": "MusicKit",
      "sample_ids": [
        "musickit/explore-more-content-with-musickit",
        "musickit/integrating-musickit-into-your-app",
        "musickit/using-musickit-to-integrate-with-apple-music"
      ]
    },
    {
      "name": "Nearby Interaction",
      "sample_ids": [
        "nearbyinteraction/finding-devices-with-precision",
        "nearbyinteraction/implementing-interactions-between-users-in-close-proximity",
        "nearbyinteraction/implementing-proximity-based-interactions-between-a-phone-and-watch",
        "nearbyinteraction/implementing-spatial-interactions-with-third-party-accessories"
      ]
    },
    {
      "name": "Network",
      "sample_ids": [
        "network/building-a-custom-peer-to-peer-protocol",
        "network/collecting-network-connection-metrics",
        "network/implementing-netcat-with-network-framework"
      ]
    },
    {
      "name": "Network Extension",
      "sample_ids": [
        "networkextension/configuring-a-wi-fi-accessory-to-join-a-network",
        "networkextension/filtering-network-traffic",
        "networkextension/filtering-traffic-by-url",
        "networkextension/receiving-voice-and-text-communications-on-a-local-network",
        "networkextension/setting-up-a-pir-server-for-url-filtering",
        "networkextension/using-the-bloom-filter-tool"
      ]
    },
    {
      "name": "PassKit (Apple Pay and Wallet)",
      "sample_ids": [
        "passkit/implementing-wallet-extensions",
        "passkit/offering-apple-pay-in-your-app"
      ]
    },
    {
      "name": "PCIDriverKit",
      "sample_ids": [
        "pcidriverkit/connecting-a-network-driver"
      ]
    },
    {
      "name": "PDFKit",
      "sample_ids": [
        "pdfkit/custom-graphics",
        "pdfkit/pdf-widgets"
      ]
    },
    {
      "name": "PencilKit",
      "sample_ids": [
        "pencilkit/building-a-handwriting-recognition-experience-with-pencilkit",
        "pencilkit/configuring-the-pencilkit-tool-picker",
        "pencilkit/customizing-scribble-with-interactions",
        "pencilkit/drawing-with-pencilkit",
        "pencilkit/inspecting-modifying-and-constructing-pencilkit-drawings"
      ]
    },
    {
      "name": "PhotoKit",
      "sample_ids": [
        "photokit/browsing-and-modifying-photo-albums"
      ]
    },
    {
      "name": "PhotosUI",
      "sample_ids": [
        "photokit/bringing-photos-picker-to-your-swiftui-app",
        "photokit/creating-a-slideshow-project-extension-for-photos",
        "photokit/implementing-an-inline-photos-picker",
        "photokit/selecting-photos-and-videos-in-ios"
      ]
    },
    {
      "name": "realitykit",
      "sample_ids": [
        "realitykit/altering_realitykit_rendering_with_shader_functions",
        "realitykit/controlling_entity_collisions_in_realitykit",
        "realitykit/wwdc21_challenge_framework_freestyle"
      ]
    },
    {
      "name": "RealityKit",
      "sample_ids": [
        "realitykit/animated-rotation-with-a-system",
        "realitykit/bringing-your-scenekit-projects-to-realitykit",
        "realitykit/building-an-immersive-experience-with-realitykit",
        "realitykit/building-an-object-reconstruction-app",
        "realitykit/combining-2d-and-3d-views-in-an-immersive-app",
        "realitykit/composing-interactive-3d-content-with-realitykit-and-reality-composer-pro",
        "realitykit/configuring-collision-in-realitykit",
        "realitykit/construct-an-immersive-environment-for-visionos",
        "realitykit/creating-a-game-with-scene-understanding",
        "realitykit/creating-a-photogrammetry-command-line-app",
        "realitykit/creating-a-spaceship-game",
        "realitykit/creating-a-spatial-drawing-app-with-realitykit",
        "realitykit/creating-an-app-for-face-painting-in-ar",
        "realitykit/displaying-low-latency-connected-video",
        "realitykit/docking-a-video-player-in-an-immersive-scene",
        "realitykit/generating-interactive-geometry-with-realitykit",
        "realitykit/implementing-special-rendering-effects-with-realitykit-postprocessing",
        "realitykit/integrating-virtual-objects-with-your-environment",
        "realitykit/manipulating-models-with-realitykit",
        "realitykit/mixing-spatial-music",
        "realitykit/presenting-an-artists-scene",
        "realitykit/presenting-images-in-realitykit",
        "realitykit/rendering-a-windowed-game-in-stereo",
        "realitykit/rendering-stereoscopic-video-with-realitykit",
        "realitykit/responding-to-gestures-on-an-entity",
        "realitykit/scanning-objects-using-object-capture",
        "realitykit/simulating-particles-in-your-visionos-app",
        "realitykit/simulating-physics-joints-in-your-realitykit-app",
        "realitykit/simulating-physics-with-collisions-in-your-visionos-app",
        "realitykit/tracking-a-handheld-accessory-as-a-virtual-sculpting-tool",
        "realitykit/transforming-entities-between-realitykit-coordinate-spaces",
        "realitykit/transforming-realitykit-entities-with-gestures",
        "realitykit/using-object-capture-assets-in-realitykit"
      ]
    },
    {
      "name": "ReplayKit",
      "sample_ids": [
        "replaykit/recording-and-streaming-your-macos-app"
      ]
    },
    {
      "name": "RoomPlan",
      "sample_ids": [
        "roomplan/create-a-3d-model-of-an-interior-room-by-guiding-the-user-through-an-ar-experience",
        "roomplan/merging-multiple-scans-into-a-single-structure",
        "roomplan/providing-custom-models-for-captured-rooms-and-structure-exports"
      ]
    },
    {
      "name": "Safari Services",
      "sample_ids": [
        "safariservices/adopting-declarative-content-blocking-in-safari-web-extensions",
        "safariservices/adopting-new-safari-web-extension-apis",
        "safariservices/building-and-testing-a-safari-web-extension",
        "safariservices/creating-safari-web-inspector-extensions",
        "safariservices/developing-a-safari-web-extension",
        "safariservices/messaging-a-web-extension-s-native-app",
        "safariservices/modernizing-safari-web-extensions",
        "safariservices/previewing-metadata-using-open-graph"
      ]
    },
    {
      "name": "SceneKit",
      "sample_ids": [
        "scenekit/postprocessing-a-scene-with-custom-symbols"
      ]
    },
    {
      "name": "ScreenCaptureKit",
      "sample_ids": [
        "screencapturekit/capturing-screen-content-in-macos",
        "screencapturekit/capturing-screen-content-on-ios"
      ]
    },
    {
      "name": "Security",
      "sample_ids": [
        "security/constraining-a-tool's-launch-environment"
      ]
    },
    {
      "name": "Service Management",
      "sample_ids": [
        "servicemanagement/updating-your-app-package-installer-to-use-the-new-service-management-api"
      ]
    },
    {
      "name": "ShazamKit",
      "sample_ids": [
        "shazamkit/building-a-custom-catalog-and-matching-audio",
        "shazamkit/shazamkit-dance-finder-with-managed-session"
      ]
    },
    {
      "name": "Sound Analysis",
      "sample_ids": [
        "soundanalysis/classifying-live-audio-input-with-a-built-in-sound-classifier"
      ]
    },
    {
      "name": "Spatial Preview",
      "sample_ids": [
        "spatialpreview/working-with-content-from-your-mac-app-using-spatial-preview"
      ]
    },
    {
      "name": "Speech",
      "sample_ids": [
        "speech/bringing-advanced-speech-to-text-capabilities-to-your-app",
        "speech/recognizing-speech-in-live-audio"
      ]
    },
    {
      "name": "StoreKit",
      "sample_ids": [
        "storekit/determining-service-entitlement-on-the-server",
        "storekit/generating-a-promotional-offer-signature-on-the-server",
        "storekit/implementing-a-store-in-your-app-using-the-storekit-api",
        "storekit/offering-completing-and-restoring-in-app-purchases",
        "storekit/offering-media-for-sale-in-your-app",
        "storekit/requesting-app-store-reviews",
        "storekit/understanding-storekit-workflows"
      ]
    },
    {
      "name": "StoreKit Test",
      "sample_ids": [
        "storekittest/testing-and-validating-ad-impression-signatures-and-postbacks-for-skadnetwork"
      ]
    },
    {
      "name": "Swift",
      "sample_ids": [
        "swift/callingapisacrosslanguageboundaries",
        "swift/code-along-elevating-an-app-with-swift-concurrency",
        "swift/mixinglanguagesinanxcodeproject",
        "swift/updating-an-app-to-use-strict-concurrency"
      ]
    },
    {
      "name": "swift",
      "sample_ids": [
        "swift/updating_an_app_to_use_swift_concurrency"
      ]
    },
    {
      "name": "Swift Charts",
      "sample_ids": [
        "charts/creating-a-data-visualization-dashboard-with-swift-charts",
        "charts/visualizing-your-app-s-data"
      ]
    },
    {
      "name": "SwiftData",
      "sample_ids": [
        "swiftdata/adding-and-editing-persistent-data-in-your-app",
        "swiftdata/defining-data-relationships-with-enumerations-and-model-classes",
        "swiftdata/deleting-persistent-data-from-your-app",
        "swiftdata/filtering-and-sorting-persistent-data",
        "swiftdata/maintaining-a-local-copy-of-server-data"
      ]
    },
    {
      "name": "SwiftUI",
      "sample_ids": [
        "swiftui/add-rich-graphics-to-your-swiftui-app",
        "swiftui/adopting-drag-and-drop-using-swiftui",
        "swiftui/backyard-birds-sample",
        "swiftui/bringing-multiple-windows-to-your-swiftui-app",
        "swiftui/bringing-robust-navigation-structure-to-your-swiftui-app",
        "swiftui/building-a-document-based-app-using-swiftdata",
        "swiftui/building-a-document-based-app-with-swiftui",
        "swiftui/building-a-great-mac-app-with-swiftui",
        "swiftui/building-rich-swiftui-text-experiences",
        "swiftui/composing-advanced-graphics-effects-with-swiftui",
        "swiftui/composing-custom-layouts-with-swiftui",
        "swiftui/controlling-the-timing-and-movements-of-your-animations",
        "swiftui/creating-a-tvos-media-catalog-app-in-swiftui",
        "swiftui/creating-accessible-views",
        "swiftui/creating-custom-container-views",
        "swiftui/creating-visual-effects-with-swiftui",
        "swiftui/customizing-window-styles-and-state-restoration-behavior-in-macos",
        "swiftui/enhancing-your-app-content-with-tab-navigation",
        "swiftui/focus-cookbook-sample",
        "swiftui/food-truck-building-a-swiftui-multiplatform-app",
        "swiftui/landmarks-applying-a-background-extension-effect",
        "swiftui/landmarks-building-an-app-with-liquid-glass",
        "swiftui/landmarks-displaying-custom-activity-badges",
        "swiftui/landmarks-extending-horizontal-scrolling-under-a-sidebar-or-inspector",
        "swiftui/landmarks-refining-the-system-provided-glass-effect-in-toolbars",
        "swiftui/loading-and-displaying-a-large-data-feed",
        "swiftui/making-a-card-game-with-drag-drop-and-reordering-in-swiftui",
        "swiftui/managing-model-data-in-your-app",
        "swiftui/migrating-from-the-observable-object-protocol-to-the-observable-macro",
        "swiftui/monitoring-model-data-changes-in-your-app",
        "swiftui/restoring-your-app-s-state-with-swiftui",
        "swiftui/wishlist-planning-travel-in-a-swiftui-app"
      ]
    },
    {
      "name": "TabletopKit",
      "sample_ids": [
        "tabletopkit/creating-tabletop-games",
        "tabletopkit/implementing-playing-card-overlap-and-physical-characteristics",
        "tabletopkit/simulating-dice-rolls-as-a-component-for-your-game",
        "tabletopkit/synchronizing-group-gameplay-with-tabletopkit"
      ]
    },
    {
      "name": "TipKit",
      "sample_ids": [
        "tipkit/highlightingappfeatureswithtipkit"
      ]
    },
    {
      "name": "Translation",
      "sample_ids": [
        "translation/translating-text-within-your-app"
      ]
    },
    {
      "name": "TV Services",
      "sample_ids": [
        "tvservices/building-a-full-screen-top-shelf-extension",
        "tvservices/mapping-apple-tv-users-to-app-profiles",
        "tvservices/supporting-multiple-users-in-your-tvos-app"
      ]
    },
    {
      "name": "TVML",
      "sample_ids": [
        "tvml/displaying-a-product-or-bundle-in-a-full-page-template"
      ]
    },
    {
      "name": "TVMLKit",
      "sample_ids": [
        "tvmlkit/implementing-a-hybrid-tv-app-with-tvmlkit"
      ]
    },
    {
      "name": "TVMLKit JS",
      "sample_ids": [
        "tvmljs/binding_json_data_to_tvml_documents",
        "tvmljs/creating_a_client-server_tvml_app",
        "tvmljs/playing_media_in_a_client-server_app",
        "tvmljs/responding_to_user_interaction"
      ]
    },
    {
      "name": "TVUIKit",
      "sample_ids": [
        "tvuikit/creating-immersive-experiences-using-a-full-screen-layout"
      ]
    },
    {
      "name": "UIKit",
      "sample_ids": [
        "uikit/add-home-screen-quick-actions",
        "uikit/adding-context-menus-in-your-app",
        "uikit/adding-hardware-keyboard-support-to-your-app",
        "uikit/adding-menus-and-shortcuts-to-the-menu-bar-and-user-interface",
        "uikit/adjusting-your-layout-with-keyboard-layout-guide",
        "uikit/adopting-drag-and-drop-in-a-custom-view",
        "uikit/adopting-drag-and-drop-in-a-table-view",
        "uikit/adopting-hover-support-for-apple-pencil",
        "uikit/adopting-ios-dark-mode",
        "uikit/adopting-menus-and-uiactions-in-your-user-interface",
        "uikit/asynchronously-loading-images-into-table-and-collection-views",
        "uikit/building-a-document-browser-app-for-custom-file-formats",
        "uikit/building-an-app-with-a-document-browser",
        "uikit/building-and-improving-your-app-with-mac-catalyst",
        "uikit/building-high-performance-lists-and-collection-views",
        "uikit/changing-the-appearance-of-selected-and-highlighted-cells",
        "uikit/creating-self-sizing-table-view-cells",
        "uikit/customizing-an-image-picker-controller",
        "uikit/customizing-and-resizing-sheets-in-uikit",
        "uikit/customizing-collection-view-layouts",
        "uikit/customizing-your-app-s-navigation-bar",
        "uikit/data-delivery-with-drag-and-drop",
        "uikit/detecting-changes-in-the-preferences-window",
        "uikit/disabling-the-pull-down-gesture-for-a-sheet",
        "uikit/display-text-with-a-custom-layout",
        "uikit/displaying-searchable-content-by-using-a-search-controller",
        "uikit/enhancing-your-ipad-app-with-pointer-interactions",
        "uikit/enriching-your-text-in-text-views",
        "uikit/illustrating-the-force-altitude-and-azimuth-properties-of-touch-input",
        "uikit/implementing-modern-collection-views",
        "uikit/implementing-peek-and-pop",
        "uikit/integrating-pointer-interactions-into-your-ipad-app",
        "uikit/leveraging-touch-input-for-drawing-apps",
        "uikit/navigating-an-app-s-user-interface-using-a-keyboard",
        "uikit/prefetching-collection-view-data",
        "uikit/restoring-your-app-s-state",
        "uikit/selecting-multiple-items-with-a-two-finger-pan-gesture",
        "uikit/showing-help-tags-for-views-and-controls-using-tooltip-interactions",
        "uikit/supporting-desktop-class-features-in-your-ipad-app",
        "uikit/supporting-gesture-interaction-in-your-apps",
        "uikit/supporting-hdr-images-in-your-app",
        "uikit/supporting-multiple-windows-on-ipad",
        "uikit/synchronizing-documents-in-the-icloud-environment",
        "uikit/uikit-catalog-creating-and-customizing-views-and-controls",
        "uikit/updating-collection-views-using-diffable-data-sources",
        "uikit/using-suggested-searches-with-a-search-controller",
        "uikit/using-swiftui-with-uikit",
        "uikit/using-textkit-2-to-interact-with-text"
      ]
    },
    {
      "name": "USD",
      "sample_ids": [
        "usd/schema-definitions-for-third-party-dccs"
      ]
    },
    {
      "name": "User Notifications",
      "sample_ids": [
        "usernotifications/handling-communication-notifications-and-focus-status-updates",
        "usernotifications/implementing-alert-push-notifications",
        "usernotifications/implementing-background-push-notifications"
      ]
    },
    {
      "name": "Video Toolbox",
      "sample_ids": [
        "videotoolbox/encoding-video-for-live-streaming",
        "videotoolbox/encoding-video-for-low-latency-conferencing",
        "videotoolbox/encoding-video-for-offline-transcoding",
        "videotoolbox/enhancing-your-app-with-machine-learning-based-video-effects"
      ]
    },
    {
      "name": "Virtualization",
      "sample_ids": [
        "virtualization/running-gui-linux-in-a-virtual-machine-on-a-mac",
        "virtualization/running-linux-in-a-virtual-machine",
        "virtualization/running-macos-in-a-virtual-machine-on-apple-silicon"
      ]
    },
    {
      "name": "Vision",
      "sample_ids": [
        "vision/aligning-similar-images",
        "vision/analyzing-a-selfie-and-visualizing-its-content",
        "vision/analyzing-image-similarity-with-feature-print",
        "vision/applying-matte-effects-to-people-in-images-and-video",
        "vision/applying-visual-effects-to-foreground-subjects",
        "vision/building-a-feature-rich-app-for-sports-analysis",
        "vision/classifying-images-for-categorization-and-search",
        "vision/detecting-animal-body-poses-with-vision",
        "vision/detecting-hand-poses-with-vision",
        "vision/detecting-human-body-poses-in-3d-with-vision",
        "vision/detecting-moving-objects-in-a-video",
        "vision/detecting-objects-in-still-images",
        "vision/extracting-phone-numbers-from-text-in-images",
        "vision/generating-thumbnails-from-videos",
        "vision/highlighting-areas-of-interest-in-an-image-using-saliency",
        "vision/implementing-saliency-based-image-cropping-in-ios-and-watchos",
        "vision/locating-and-displaying-recognized-text",
        "vision/recognize-tables-within-a-document",
        "vision/recognizing-objects-in-live-capture",
        "vision/segmenting-and-colorizing-individuals-from-a-surrounding-scene",
        "vision/segmenting-objects-using-taps-scribbles-or-rectangles",
        "vision/selecting-a-selfie-based-on-capture-quality",
        "vision/tracking-multiple-objects-or-rectangles-in-video",
        "vision/tracking-the-user-s-face-in-real-time",
        "vision/training-a-create-ml-model-to-classify-flowers"
      ]
    },
    {
      "name": "VisionKit",
      "sample_ids": [
        "visionkit/structuring-recognized-text-on-a-document"
      ]
    },
    {
      "name": "visionOS",
      "sample_ids": [
        "visionos/accessing-the-main-camera",
        "visionos/adding-a-depth-effect-to-text-in-visionos",
        "visionos/animating-hand-models-in-visionos",
        "visionos/applying-mesh-to-real-world-surroundings",
        "visionos/associating-a-window-with-an-immersive-space",
        "visionos/bot-anist",
        "visionos/building-an-immersive-media-viewing-experience",
        "visionos/building-local-experiences-with-room-tracking",
        "visionos/canyon-crosser-building-a-volumetric-hike-planning-app",
        "visionos/chaparral-village-building-an-immersive-visionos-adventure-game",
        "visionos/connecting-ipados-and-visionos-apps-over-the-local-network",
        "visionos/creating-2d-shapes-in-visionos-with-swiftui",
        "visionos/creating-3d-entities-with-realitykit",
        "visionos/creating-a-new-swiftui-window-in-visionos",
        "visionos/creating-a-painting-space-in-visionos",
        "visionos/creating-a-volumetric-window-in-visionos",
        "visionos/creating-an-interactable-3d-model-in-visionos",
        "visionos/creating-immersive-spaces-in-visionos-with-swiftui",
        "visionos/designing-no-code-games-in-reality-composer-pro-3",
        "visionos/destination-video",
        "visionos/diorama",
        "visionos/displaying-a-3d-environment-through-a-portal",
        "visionos/displaying-a-3d-object-that-moves-to-stay-in-a-person's-view",
        "visionos/displaying-a-stereoscopic-image-in-visionos",
        "visionos/displaying-text-in-visionos",
        "visionos/displaying-video-from-connected-devices",
        "visionos/drawing-in-the-air-and-on-surfaces-with-a-spatial-stylus",
        "visionos/embedding-controls-in-an-immersive-space",
        "visionos/enabling-video-reflections-in-an-immersive-environment",
        "visionos/exploring_object_tracking_with_arkit",
        "visionos/gaussian-splats-on-visionos",
        "visionos/generating-procedural-textures-in-visionos",
        "visionos/handling-the-window-life-cycle-with-multiple-scenes",
        "visionos/happybeam",
        "visionos/implementing-adjustable-material-in-visionos",
        "visionos/implementing-shareplay-for-immersive-spaces-in-visionos",
        "visionos/incorporating-real-world-surroundings-in-an-immersive-experience",
        "visionos/locating-and-decoding-barcodes-in-3d-space",
        "visionos/manipulating-entities-with-solid-collisions",
        "visionos/monitoring-fit-and-field-of-view-fidelity",
        "visionos/object-tracking-with-reality-composer-pro-experiences",
        "visionos/obscuring-virtual-items-in-a-scene-behind-real-world-items",
        "visionos/petite-asteroids-building-a-volumetric-visionos-game",
        "visionos/placing-content-on-detected-planes",
        "visionos/placing-entities-using-head-and-device-transform",
        "visionos/playing-immersive-media-with-realitykit",
        "visionos/playing-spatial-audio-in-visionos",
        "visionos/swift-splash",
        "visionos/tracking-and-visualizing-hand-movement",
        "visionos/tracking-points-in-world-space",
        "visionos/working-with-generic-spatial-accessories",
        "visionos/world"
      ]
    },
    {
      "name": "Wallet Orders",
      "sample_ids": [
        "walletorders/example-order-packages"
      ]
    },
    {
      "name": "Watch Connectivity",
      "sample_ids": [
        "watchconnectivity/transferring-data-with-watch-connectivity"
      ]
    },
    {
      "name": "WatchKit",
      "sample_ids": [
        "watchkit/interacting-with-bluetooth-peripherals-during-background-app-refresh"
      ]
    },
    {
      "name": "watchOS-Apps",
      "sample_ids": [
        "watchos-apps/building-a-productivity-app-for-apple-watch",
        "watchos-apps/create-accessible-experiences-for-watchos",
        "watchos-apps/updating-your-app-and-widgets-for-watchos-10"
      ]
    },
    {
      "name": "WeatherKit",
      "sample_ids": [
        "weatherkit/fetching_weather_forecasts_with_weatherkit"
      ]
    },
    {
      "name": "WebKit",
      "sample_ids": [
        "webkit/building-a-cross-platform-web-browser",
        "webkit/viewing-desktop-or-mobile-web-content-using-a-web-view"
      ]
    },
    {
      "name": "Wi-Fi Aware",
      "sample_ids": [
        "wifiaware/building-peer-to-peer-apps"
      ]
    },
    {
      "name": "Wi-Fi Infrastructure",
      "sample_ids": [
        "wifiinfrastructure/sharing-wi-fi-network-credentials"
      ]
    },
    {
      "name": "WidgetKit",
      "sample_ids": [
        "widgetkit/building-widgets-using-widgetkit-and-swiftui",
        "widgetkit/emoji-rangers-supporting-live-activities-interactivity-and-animations"
      ]
    },
    {
      "name": "WorkoutKit",
      "sample_ids": [
        "workoutkit/customizing-workouts-with-workoutkit"
      ]
    },
    {
      "name": "Xcode",
      "sample_ids": [
        "xcode/autosizing-views-for-localization-in-ios",
        "xcode/configuring-your-app-to-use-alternate-app-icons",
        "xcode/creating-custom-modelers-for-intelligent-instruments",
        "xcode/localization-friendly-layouts-in-macos",
        "xcode/localizing-landmarks",
        "xcode/slothcreator-building-docc-documentation-in-xcode"
      ]
    }
  ],
  "samples": [
    {
      "abstract": "Simulate a bokeh effect by applying dilation.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/adding-a-bokeh-effect-to-images",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/adding-a-bokeh-effect-to-images",
      "download": {
        "filename": "AddingABokehEffectToImages.zip",
        "identifier": "91872ae2b1fd/AddingABokehEffectToImages.zip",
        "url": "https://docs-assets.developer.apple.com/published/91872ae2b1fd/AddingABokehEffectToImages.zip"
      },
      "id": "accelerate/adding-a-bokeh-effect-to-images",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/adding-a-bokeh-effect-to-images",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/adding-a-bokeh-effect-to-images.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.3",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "Adding a bokeh effect to images"
    },
    {
      "abstract": "Convert an RGB image to discrete luminance and chrominance channels, and apply color and contrast treatments.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/adjusting-saturation-and-applying-tone-mapping",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/adjusting-saturation-and-applying-tone-mapping",
      "download": {
        "filename": "AdjustingSaturationAndApplyingToneMapping.zip",
        "identifier": "5d13fb23a632/AdjustingSaturationAndApplyingToneMapping.zip",
        "url": "https://docs-assets.developer.apple.com/published/5d13fb23a632/AdjustingSaturationAndApplyingToneMapping.zip"
      },
      "id": "accelerate/adjusting-saturation-and-applying-tone-mapping",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/adjusting-saturation-and-applying-tone-mapping",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/adjusting-saturation-and-applying-tone-mapping.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.3",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Xcode"
        }
      ],
      "title": "Adjusting saturation and applying tone mapping"
    },
    {
      "abstract": "Use a gamma function to apply a linear or exponential curve.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/adjusting-the-brightness-and-contrast-of-an-image",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/adjusting-the-brightness-and-contrast-of-an-image",
      "download": {
        "filename": "AdjustingTheBrightnessAndContrastOfAnImage.zip",
        "identifier": "4046a6940d45/AdjustingTheBrightnessAndContrastOfAnImage.zip",
        "url": "https://docs-assets.developer.apple.com/published/4046a6940d45/AdjustingTheBrightnessAndContrastOfAnImage.zip"
      },
      "id": "accelerate/adjusting-the-brightness-and-contrast-of-an-image",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/adjusting-the-brightness-and-contrast-of-an-image",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/adjusting-the-brightness-and-contrast-of-an-image.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Xcode"
        }
      ],
      "title": "Adjusting the brightness and contrast of an image"
    },
    {
      "abstract": "Convert an image to L*a*b* color space and apply hue adjustment.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/adjusting-the-hue-of-an-image",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/adjusting-the-hue-of-an-image",
      "download": {
        "filename": "AdjustingTheHueOfAnImage.zip",
        "identifier": "7d7c89a1faf9/AdjustingTheHueOfAnImage.zip",
        "url": "https://docs-assets.developer.apple.com/published/7d7c89a1faf9/AdjustingTheHueOfAnImage.zip"
      },
      "id": "accelerate/adjusting-the-hue-of-an-image",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/adjusting-the-hue-of-an-image",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/adjusting-the-hue-of-an-image.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "Adjusting the hue of an image"
    },
    {
      "abstract": "Change the frequency response of an audio signal using a cascaded biquadratic filter.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/applying-biquadratic-filters-to-a-music-loop",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/applying-biquadratic-filters-to-a-music-loop",
      "download": {
        "filename": "ApplyingBiquadraticFiltersToAMusicLoop.zip",
        "identifier": "ac30234bee3b/ApplyingBiquadraticFiltersToAMusicLoop.zip",
        "url": "https://docs-assets.developer.apple.com/published/ac30234bee3b/ApplyingBiquadraticFiltersToAMusicLoop.zip"
      },
      "id": "accelerate/applying-biquadratic-filters-to-a-music-loop",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/applying-biquadratic-filters-to-a-music-loop",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/applying-biquadratic-filters-to-a-music-loop.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Xcode"
        }
      ],
      "title": "Applying biquadratic filters to a music loop"
    },
    {
      "abstract": "Use the vImage library’s polynomial transform to apply tone curve adjustments to images.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/applying-tone-curve-adjustments-to-images",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/applying-tone-curve-adjustments-to-images",
      "download": {
        "filename": "ApplyingToneCurveAdjustmentsToImages.zip",
        "identifier": "a4ddc72d3634/ApplyingToneCurveAdjustmentsToImages.zip",
        "url": "https://docs-assets.developer.apple.com/published/a4ddc72d3634/ApplyingToneCurveAdjustmentsToImages.zip"
      },
      "id": "accelerate/applying-tone-curve-adjustments-to-images",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/applying-tone-curve-adjustments-to-images",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/applying-tone-curve-adjustments-to-images.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.3",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Applying tone curve adjustments to images"
    },
    {
      "abstract": "Desaturate a range of colors in an image with a multidimensional lookup table.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/applying-transformations-to-selected-colors-in-an-image",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/applying-transformations-to-selected-colors-in-an-image",
      "download": {
        "filename": "ApplyingTransformationsToSelectedColorsInAnImage.zip",
        "identifier": "9ddb19e8677b/ApplyingTransformationsToSelectedColorsInAnImage.zip",
        "url": "https://docs-assets.developer.apple.com/published/9ddb19e8677b/ApplyingTransformationsToSelectedColorsInAnImage.zip"
      },
      "id": "accelerate/applying-transformations-to-selected-colors-in-an-image",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/applying-transformations-to-selected-colors-in-an-image",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/applying-transformations-to-selected-colors-in-an-image.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.2",
          "name": "Xcode"
        }
      ],
      "title": "Applying transformations to selected colors in an image"
    },
    {
      "abstract": "Use the vImage convert-any-to-any functionality to perform real-time image processing of video frames streamed from your device’s camera.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/applying-vimage-operations-to-video-sample-buffers",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/applying-vimage-operations-to-video-sample-buffers",
      "download": {
        "filename": "ApplyingVImageOperationsToVideoSampleBuffers.zip",
        "identifier": "b94c9f2cfd41/ApplyingVImageOperationsToVideoSampleBuffers.zip",
        "url": "https://docs-assets.developer.apple.com/published/b94c9f2cfd41/ApplyingVImageOperationsToVideoSampleBuffers.zip"
      },
      "id": "accelerate/applying-vimage-operations-to-video-sample-buffers",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/applying-vimage-operations-to-video-sample-buffers",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/applying-vimage-operations-to-video-sample-buffers.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.3",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Xcode"
        }
      ],
      "title": "Applying vImage operations to video sample buffers"
    },
    {
      "abstract": "Filter an image by convolving it with custom and high-speed kernels.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/blurring-an-image",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/blurring-an-image",
      "download": {
        "filename": "BlurringAnImage.zip",
        "identifier": "a8a4b9753f10/BlurringAnImage.zip",
        "url": "https://docs-assets.developer.apple.com/published/a8a4b9753f10/BlurringAnImage.zip"
      },
      "id": "accelerate/blurring-an-image",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/blurring-an-image",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/blurring-an-image.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.3",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Xcode"
        }
      ],
      "title": "Blurring an image"
    },
    {
      "abstract": "Find the main colors in an image by implementing k-means clustering using the Accelerate framework.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/calculating-the-dominant-colors-in-an-image",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/calculating-the-dominant-colors-in-an-image",
      "download": {
        "filename": "CalculatingTheDominantColorsInAnImage.zip",
        "identifier": "10c1a54316bc/CalculatingTheDominantColorsInAnImage.zip",
        "url": "https://docs-assets.developer.apple.com/published/10c1a54316bc/CalculatingTheDominantColorsInAnImage.zip"
      },
      "id": "accelerate/calculating-the-dominant-colors-in-an-image",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/calculating-the-dominant-colors-in-an-image",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/calculating-the-dominant-colors-in-an-image.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.2",
          "name": "Xcode"
        }
      ],
      "title": "Calculating the dominant colors in an image"
    },
    {
      "abstract": "Reduce the storage size of an image using singular value decomposition (SVD).",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/compressing-an-image-using-linear-algebra",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/compressing-an-image-using-linear-algebra",
      "download": {
        "filename": "CompressingAnImageUsingLinearAlgebra.zip",
        "identifier": "f3385c2aa082/CompressingAnImageUsingLinearAlgebra.zip",
        "url": "https://docs-assets.developer.apple.com/published/f3385c2aa082/CompressingAnImageUsingLinearAlgebra.zip"
      },
      "id": "accelerate/compressing-an-image-using-linear-algebra",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/compressing-an-image-using-linear-algebra",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/compressing-an-image-using-linear-algebra.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.3",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "Compressing an image using linear algebra"
    },
    {
      "abstract": "Perform compression for all files and decompression for files with supported extension types.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/compressing-and-decompressing-files-with-stream-compression",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/compressing-and-decompressing-files-with-stream-compression",
      "download": {
        "filename": "CompressingAndDecompressingFilesWithStreamCompression.zip",
        "identifier": "383590526f36/CompressingAndDecompressingFilesWithStreamCompression.zip",
        "url": "https://docs-assets.developer.apple.com/published/383590526f36/CompressingAndDecompressingFilesWithStreamCompression.zip"
      },
      "id": "accelerate/compressing-and-decompressing-files-with-stream-compression",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/compressing-and-decompressing-files-with-stream-compression",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/compressing-and-decompressing-files-with-stream-compression.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Compression",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Xcode"
        }
      ],
      "title": "Compressing and decompressing files with stream compression"
    },
    {
      "abstract": "Convert an RGB image to grayscale using matrix multiplication.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/converting-color-images-to-grayscale",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/converting-color-images-to-grayscale",
      "download": {
        "filename": "ConvertingColorImagesToGrayscale.zip",
        "identifier": "2c231368d34c/ConvertingColorImagesToGrayscale.zip",
        "url": "https://docs-assets.developer.apple.com/published/2c231368d34c/ConvertingColorImagesToGrayscale.zip"
      },
      "id": "accelerate/converting-color-images-to-grayscale",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/converting-color-images-to-grayscale",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/converting-color-images-to-grayscale.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.3",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Xcode"
        }
      ],
      "title": "Converting color images to grayscale"
    },
    {
      "abstract": "Create a displayable ARGB image using the luminance and chrominance information from your device’s camera.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/converting-luminance-and-chrominance-planes-to-an-argb-image",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/converting-luminance-and-chrominance-planes-to-an-argb-image",
      "download": {
        "filename": "ConvertingLuminanceAndChrominancePlanesToAnARGBImage.zip",
        "identifier": "adb628145c36/ConvertingLuminanceAndChrominancePlanesToAnARGBImage.zip",
        "url": "https://docs-assets.developer.apple.com/published/adb628145c36/ConvertingLuminanceAndChrominancePlanesToAnARGBImage.zip"
      },
      "id": "accelerate/converting-luminance-and-chrominance-planes-to-an-argb-image",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/converting-luminance-and-chrominance-planes-to-an-argb-image",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/converting-luminance-and-chrominance-planes-to-an-argb-image.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.3",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Xcode"
        }
      ],
      "title": "Converting luminance and chrominance planes to an ARGB image"
    },
    {
      "abstract": "Add biquadratic filter audio-effect processing to apps like Logic Pro X and GarageBand with the Accelerate framework.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/creating-an-audio-unit-extension-using-the-vdsp-library",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/creating-an-audio-unit-extension-using-the-vdsp-library",
      "download": {
        "filename": "CreatingAnAudioUnitExtensionUsingTheVDSPLibrary.zip",
        "identifier": "f9bc5c104228/CreatingAnAudioUnitExtensionUsingTheVDSPLibrary.zip",
        "url": "https://docs-assets.developer.apple.com/published/f9bc5c104228/CreatingAnAudioUnitExtensionUsingTheVDSPLibrary.zip"
      },
      "id": "accelerate/creating-an-audio-unit-extension-using-the-vdsp-library",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/creating-an-audio-unit-extension-using-the-vdsp-library",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/creating-an-audio-unit-extension-using-the-vdsp-library.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.1",
          "name": "Xcode"
        }
      ],
      "title": "Creating an audio unit extension using the vDSP library"
    },
    {
      "abstract": "Convert a chroma-key color to alpha values and trim transparent pixels using Accelerate.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/cropping-to-the-subject-in-a-chroma-keyed-image",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/cropping-to-the-subject-in-a-chroma-keyed-image",
      "download": {
        "filename": "CroppingToTheSubjectInAChromaKeyedImage.zip",
        "identifier": "acbaa3446682/CroppingToTheSubjectInAChromaKeyedImage.zip",
        "url": "https://docs-assets.developer.apple.com/published/acbaa3446682/CroppingToTheSubjectInAChromaKeyedImage.zip"
      },
      "id": "accelerate/cropping-to-the-subject-in-a-chroma-keyed-image",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/cropping-to-the-subject-in-a-chroma-keyed-image",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/cropping-to-the-subject-in-a-chroma-keyed-image.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.1",
          "name": "Xcode"
        }
      ],
      "title": "Cropping to the subject in a chroma-keyed image"
    },
    {
      "abstract": "Change the frequency response of an audio signal by manipulating frequency-domain data.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/equalizing-audio-with-discrete-cosine-transforms-dcts",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/equalizing-audio-with-discrete-cosine-transforms-dcts",
      "download": {
        "filename": "EqualizingAudioWithDiscreteCosineTransformsDCTs.zip",
        "identifier": "dfacf1d5cd49/EqualizingAudioWithDiscreteCosineTransformsDCTs.zip",
        "url": "https://docs-assets.developer.apple.com/published/dfacf1d5cd49/EqualizingAudioWithDiscreteCosineTransformsDCTs.zip"
      },
      "id": "accelerate/equalizing-audio-with-discrete-cosine-transforms-dcts",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/equalizing-audio-with-discrete-cosine-transforms-dcts",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/equalizing-audio-with-discrete-cosine-transforms-dcts.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "Equalizing audio with discrete cosine transforms (DCTs)"
    },
    {
      "abstract": "Share image data between vDSP and vImage to compute the sharpest image from a bracketed photo sequence.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/finding-the-sharpest-image-in-a-sequence-of-captured-images",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/finding-the-sharpest-image-in-a-sequence-of-captured-images",
      "download": {
        "filename": "FindingTheSharpestImageInASequenceOfCapturedImages.zip",
        "identifier": "3d4f9e97ea48/FindingTheSharpestImageInASequenceOfCapturedImages.zip",
        "url": "https://docs-assets.developer.apple.com/published/3d4f9e97ea48/FindingTheSharpestImageInASequenceOfCapturedImages.zip"
      },
      "id": "accelerate/finding-the-sharpest-image-in-a-sequence-of-captured-images",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/finding-the-sharpest-image-in-a-sequence-of-captured-images",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/finding-the-sharpest-image-in-a-sequence-of-captured-images.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "Finding the sharpest image in a sequence of captured images"
    },
    {
      "abstract": "Reduce or remove periodic artifacts from images.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/halftone-descreening-with-2d-fast-fourier-transform",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/halftone-descreening-with-2d-fast-fourier-transform",
      "download": {
        "filename": "HalftoneDescreeningWith2DFastFourierTransform.zip",
        "identifier": "aec39161b171/HalftoneDescreeningWith2DFastFourierTransform.zip",
        "url": "https://docs-assets.developer.apple.com/published/aec39161b171/HalftoneDescreeningWith2DFastFourierTransform.zip"
      },
      "id": "accelerate/halftone-descreening-with-2d-fast-fourier-transform",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/halftone-descreening-with-2d-fast-fourier-transform",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/halftone-descreening-with-2d-fast-fourier-transform.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "Halftone descreening with 2D fast Fourier transform"
    },
    {
      "abstract": "Apply dithering to simulate colors that are unavailable in reduced bit depths.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/improving-the-quality-of-quantized-images-with-dithering",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/improving-the-quality-of-quantized-images-with-dithering",
      "download": {
        "filename": "ImprovingTheQualityOfQuantizedImagesWithDithering.zip",
        "identifier": "ff985379a586/ImprovingTheQualityOfQuantizedImagesWithDithering.zip",
        "url": "https://docs-assets.developer.apple.com/published/ff985379a586/ImprovingTheQualityOfQuantizedImagesWithDithering.zip"
      },
      "id": "accelerate/improving-the-quality-of-quantized-images-with-dithering",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/improving-the-quality-of-quantized-images-with-dithering",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/improving-the-quality-of-quantized-images-with-dithering.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.3",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Xcode"
        }
      ],
      "title": "Improving the quality of quantized images with dithering"
    },
    {
      "abstract": "Share image data between Core Video pixel buffers and vImage buffers to integrate vImage operations into a Core Image workflow.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/integrating-vimage-pixel-buffers-into-a-core-image-workflow",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/integrating-vimage-pixel-buffers-into-a-core-image-workflow",
      "download": {
        "filename": "IntegratingVImagePixelBuffersIntoACoreImageWorkflow.zip",
        "identifier": "72008d4a08b0/IntegratingVImagePixelBuffersIntoACoreImageWorkflow.zip",
        "url": "https://docs-assets.developer.apple.com/published/72008d4a08b0/IntegratingVImagePixelBuffersIntoACoreImageWorkflow.zip"
      },
      "id": "accelerate/integrating-vimage-pixel-buffers-into-a-core-image-workflow",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/integrating-vimage-pixel-buffers-into-a-core-image-workflow",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/integrating-vimage-pixel-buffers-into-a-core-image-workflow.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Xcode"
        }
      ],
      "title": "Integrating vImage pixel buffers into a Core Image workflow"
    },
    {
      "abstract": "Implement custom linear interpolation to prevent the ringing effects associated with scaling an image with the default Lanczos algorithm.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/reducing-artifacts-with-custom-resampling-filters",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/reducing-artifacts-with-custom-resampling-filters",
      "download": {
        "filename": "ReducingArtifactsWithCustomResamplingFilters.zip",
        "identifier": "4b432d0f53fa/ReducingArtifactsWithCustomResamplingFilters.zip",
        "url": "https://docs-assets.developer.apple.com/published/4b432d0f53fa/ReducingArtifactsWithCustomResamplingFilters.zip"
      },
      "id": "accelerate/reducing-artifacts-with-custom-resampling-filters",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/reducing-artifacts-with-custom-resampling-filters",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/reducing-artifacts-with-custom-resampling-filters.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Xcode"
        }
      ],
      "title": "Reducing artifacts with custom resampling filters"
    },
    {
      "abstract": "Rotate a cube through a series of keyframes using quaternion interpolation to transition between them.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/rotating-a-cube-by-transforming-its-vertices",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/rotating-a-cube-by-transforming-its-vertices",
      "download": {
        "filename": "RotatingACubeByTransformingItsVertices.zip",
        "identifier": "27ac5ce9cc0b/RotatingACubeByTransformingItsVertices.zip",
        "url": "https://docs-assets.developer.apple.com/published/27ac5ce9cc0b/RotatingACubeByTransformingItsVertices.zip"
      },
      "id": "accelerate/rotating-a-cube-by-transforming-its-vertices",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/rotating-a-cube-by-transforming-its-vertices",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/rotating-a-cube-by-transforming-its-vertices.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.3",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Xcode"
        }
      ],
      "title": "Rotating a cube by transforming its vertices"
    },
    {
      "abstract": "Use Model I/O and vImage to composite a photograph over a computer-generated sky.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/sharing-texture-data-between-the-model-io-framework-and-the-vimage-library",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/sharing-texture-data-between-the-model-io-framework-and-the-vimage-library",
      "download": {
        "filename": "SharingTextureDataBetweenTheModelIOFrameworkAndTheVImageLibrary.zip",
        "identifier": "95d06baaab82/SharingTextureDataBetweenTheModelIOFrameworkAndTheVImageLibrary.zip",
        "url": "https://docs-assets.developer.apple.com/published/95d06baaab82/SharingTextureDataBetweenTheModelIOFrameworkAndTheVImageLibrary.zip"
      },
      "id": "accelerate/sharing-texture-data-between-the-model-io-framework-and-the-vimage-library",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/sharing-texture-data-between-the-model-io-framework-and-the-vimage-library",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/sharing-texture-data-between-the-model-io-framework-and-the-vimage-library.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Sharing texture data between the Model I/O framework and the vImage library"
    },
    {
      "abstract": "Use Accelerate’s discrete cosine transform to remove noise from a signal.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/signal-extraction-from-noise",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/signal-extraction-from-noise",
      "download": {
        "filename": "SignalExtractionFromNoise.zip",
        "identifier": "4ed8e45b3bf7/SignalExtractionFromNoise.zip",
        "url": "https://docs-assets.developer.apple.com/published/4ed8e45b3bf7/SignalExtractionFromNoise.zip"
      },
      "id": "accelerate/signal-extraction-from-noise",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/signal-extraction-from-noise",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/signal-extraction-from-noise.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Xcode"
        }
      ],
      "title": "Signal extraction from noise"
    },
    {
      "abstract": "Select the optimal LAPACK routine to solve a system of linear equations.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/solving-systems-of-linear-equations-with-lapack",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/solving-systems-of-linear-equations-with-lapack",
      "download": {
        "filename": "SolvingSystemsOfLinearEquationsWithLAPACK.zip",
        "identifier": "5108beb67511/SolvingSystemsOfLinearEquationsWithLAPACK.zip",
        "url": "https://docs-assets.developer.apple.com/published/5108beb67511/SolvingSystemsOfLinearEquationsWithLAPACK.zip"
      },
      "id": "accelerate/solving-systems-of-linear-equations-with-lapack",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/solving-systems-of-linear-equations-with-lapack",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/solving-systems-of-linear-equations-with-lapack.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.3",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Solving systems of linear equations with LAPACK"
    },
    {
      "abstract": "Calculate the histogram of one image, and apply it to a second image.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/specifying-histograms-with-vimage",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/specifying-histograms-with-vimage",
      "download": {
        "filename": "SpecifyingHistogramsWithVImage.zip",
        "identifier": "dbb276b947c9/SpecifyingHistogramsWithVImage.zip",
        "url": "https://docs-assets.developer.apple.com/published/dbb276b947c9/SpecifyingHistogramsWithVImage.zip"
      },
      "id": "accelerate/specifying-histograms-with-vimage",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/specifying-histograms-with-vimage",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/specifying-histograms-with-vimage.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.3",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Xcode"
        }
      ],
      "title": "Specifying histograms with vImage"
    },
    {
      "abstract": "Add real-time digital signal processing to apps like Logic Pro X and GarageBand with the BNNS Graph API.",
      "categories": [
        "Machine learning"
      ],
      "doc_path": "/documentation/Accelerate/supporting-real-time-ml-inference-on-the-cpu",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/supporting-real-time-ml-inference-on-the-cpu",
      "download": {
        "filename": "SupportingRealTimeMLInferenceOnTheCPU.zip",
        "identifier": "a39fb3b0a5f6/SupportingRealTimeMLInferenceOnTheCPU.zip",
        "url": "https://docs-assets.developer.apple.com/published/a39fb3b0a5f6/SupportingRealTimeMLInferenceOnTheCPU.zip"
      },
      "id": "accelerate/supporting-real-time-ml-inference-on-the-cpu",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/supporting-real-time-ml-inference-on-the-cpu",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/supporting-real-time-ml-inference-on-the-cpu.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Supporting real-time ML inference on the CPU"
    },
    {
      "abstract": "Build a simple neural network and train it to recognize randomly generated numbers.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/training-a-neural-network-to-recognize-digits",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/training-a-neural-network-to-recognize-digits",
      "download": {
        "filename": "TrainingANeuralNetworkToRecognizeDigits.zip",
        "identifier": "f8ec1f355918/TrainingANeuralNetworkToRecognizeDigits.zip",
        "url": "https://docs-assets.developer.apple.com/published/f8ec1f355918/TrainingANeuralNetworkToRecognizeDigits.zip"
      },
      "id": "accelerate/training-a-neural-network-to-recognize-digits",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/training-a-neural-network-to-recognize-digits",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/training-a-neural-network-to-recognize-digits.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Xcode"
        }
      ],
      "title": "Training a neural network to recognize digits"
    },
    {
      "abstract": "Render real-time video effects with the vImage Pixel Buffer.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/using-vimage-pixel-buffers-to-generate-video-effects",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/using-vimage-pixel-buffers-to-generate-video-effects",
      "download": {
        "filename": "UsingVImagePixelBuffersToGenerateVideoEffects.zip",
        "identifier": "ae55c5290a61/UsingVImagePixelBuffersToGenerateVideoEffects.zip",
        "url": "https://docs-assets.developer.apple.com/published/ae55c5290a61/UsingVImagePixelBuffersToGenerateVideoEffects.zip"
      },
      "id": "accelerate/using-vimage-pixel-buffers-to-generate-video-effects",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/using-vimage-pixel-buffers-to-generate-video-effects",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/using-vimage-pixel-buffers-to-generate-video-effects.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Xcode"
        }
      ],
      "title": "Using vImage pixel buffers to generate video effects"
    },
    {
      "abstract": "Share image data between vDSP and vImage to visualize audio that a device microphone captures.",
      "categories": [
        "Accelerate"
      ],
      "doc_path": "/documentation/Accelerate/visualizing-sound-as-an-audio-spectrogram",
      "doc_url": "https://developer.apple.com/documentation/Accelerate/visualizing-sound-as-an-audio-spectrogram",
      "download": {
        "filename": "VisualizingSoundAsAnAudioSpectrogram.zip",
        "identifier": "f94b8999a49f/VisualizingSoundAsAnAudioSpectrogram.zip",
        "url": "https://docs-assets.developer.apple.com/published/f94b8999a49f/VisualizingSoundAsAnAudioSpectrogram.zip"
      },
      "id": "accelerate/visualizing-sound-as-an-audio-spectrogram",
      "identifier": "doc://com.apple.accelerate/documentation/Accelerate/visualizing-sound-as-an-audio-spectrogram",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accelerate/visualizing-sound-as-an-audio-spectrogram.json",
      "module": "Accelerate",
      "modules": [
        "Accelerate"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accelerate",
        "technology-index:Sample Code Library",
        "technology-index:simd"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Xcode"
        }
      ],
      "title": "Visualizing sound as an audio spectrogram"
    },
    {
      "abstract": "Improve navigation in your app by using keyboard shortcuts and accessibility containers.",
      "categories": [
        "Accessibility"
      ],
      "doc_path": "/documentation/Accessibility/accessibility_design_for_mac_catalyst",
      "doc_url": "https://developer.apple.com/documentation/Accessibility/accessibility_design_for_mac_catalyst",
      "download": {
        "filename": "AccessibilityDesignForMacCatalyst.zip",
        "identifier": "aa0c1c7a730c/AccessibilityDesignForMacCatalyst.zip",
        "url": "https://docs-assets.developer.apple.com/published/aa0c1c7a730c/AccessibilityDesignForMacCatalyst.zip"
      },
      "id": "accessibility/accessibility_design_for_mac_catalyst",
      "identifier": "doc://com.apple.Accessibility/documentation/Accessibility/accessibility_design_for_mac_catalyst",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accessibility/accessibility_design_for_mac_catalyst.json",
      "module": "Accessibility",
      "modules": [
        "Accessibility"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accessibility",
        "technology-index:AppKit",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Xcode"
        }
      ],
      "title": "Accessibility design for Mac Catalyst"
    },
    {
      "abstract": "Make improvements to your app’s interaction model to support assistive technologies such as VoiceOver.",
      "categories": [
        "Accessibility"
      ],
      "doc_path": "/documentation/Accessibility/delivering_an_exceptional_accessibility_experience",
      "doc_url": "https://developer.apple.com/documentation/Accessibility/delivering_an_exceptional_accessibility_experience",
      "download": {
        "filename": "DeliveringAnExceptionalAccessibilityExperience.zip",
        "identifier": "410d99e88578/DeliveringAnExceptionalAccessibilityExperience.zip",
        "url": "https://docs-assets.developer.apple.com/published/410d99e88578/DeliveringAnExceptionalAccessibilityExperience.zip"
      },
      "id": "accessibility/delivering_an_exceptional_accessibility_experience",
      "identifier": "doc://com.apple.Accessibility/documentation/Accessibility/delivering_an_exceptional_accessibility_experience",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accessibility/delivering_an_exceptional_accessibility_experience.json",
      "module": "Accessibility",
      "modules": [
        "Accessibility"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accessibility",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.3",
          "name": "Xcode"
        }
      ],
      "title": "Delivering an exceptional accessibility experience"
    },
    {
      "abstract": "Support advancements in SwiftUI accessibility to make your app accessible to everyone.",
      "categories": [
        "Accessibility"
      ],
      "doc_path": "/documentation/Accessibility/enhancing-the-accessibility-of-your-swiftui-app",
      "doc_url": "https://developer.apple.com/documentation/Accessibility/enhancing-the-accessibility-of-your-swiftui-app",
      "download": {
        "filename": "EnhancingTheAccessibilityOfYourSwiftUIApp.zip",
        "identifier": "cbb933bc3f60/EnhancingTheAccessibilityOfYourSwiftUIApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/cbb933bc3f60/EnhancingTheAccessibilityOfYourSwiftUIApp.zip"
      },
      "id": "accessibility/enhancing-the-accessibility-of-your-swiftui-app",
      "identifier": "doc://com.apple.Accessibility/documentation/Accessibility/enhancing-the-accessibility-of-your-swiftui-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accessibility/enhancing-the-accessibility-of-your-swiftui-app.json",
      "module": "Accessibility",
      "modules": [
        "Accessibility"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accessibility",
        "technology-index:Sample Code Library",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Enhancing the accessibility of your SwiftUI app"
    },
    {
      "abstract": "Make your app more accessible to users with disabilities by adding accessibility features.",
      "categories": [
        "Accessibility"
      ],
      "doc_path": "/documentation/Accessibility/integrating-accessibility-into-your-app",
      "doc_url": "https://developer.apple.com/documentation/Accessibility/integrating-accessibility-into-your-app",
      "download": {
        "filename": "IntegratingAccessibilityIntoYourApp.zip",
        "identifier": "1a6799bac08a/IntegratingAccessibilityIntoYourApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/1a6799bac08a/IntegratingAccessibilityIntoYourApp.zip"
      },
      "id": "accessibility/integrating-accessibility-into-your-app",
      "identifier": "doc://com.apple.Accessibility/documentation/Accessibility/integrating-accessibility-into-your-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accessibility/integrating-accessibility-into-your-app.json",
      "module": "Accessibility",
      "modules": [
        "Accessibility"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accessibility",
        "technology-index:AppKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.1",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.2",
          "name": "Xcode"
        }
      ],
      "title": "Integrating accessibility into your app"
    },
    {
      "abstract": "Design for large text sizes by modifying the user interface.",
      "categories": [
        "Accessibility"
      ],
      "doc_path": "/documentation/Accessibility/wwdc21_challenge_large_text_challenge",
      "doc_url": "https://developer.apple.com/documentation/Accessibility/wwdc21_challenge_large_text_challenge",
      "download": {
        "filename": "WWDC21ChallengeLargeTextChallenge.zip",
        "identifier": "64fbb2b49a80/WWDC21ChallengeLargeTextChallenge.zip",
        "url": "https://docs-assets.developer.apple.com/published/64fbb2b49a80/WWDC21ChallengeLargeTextChallenge.zip"
      },
      "id": "accessibility/wwdc21_challenge_large_text_challenge",
      "identifier": "doc://com.apple.Accessibility/documentation/Accessibility/wwdc21_challenge_large_text_challenge",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accessibility/wwdc21_challenge_large_text_challenge.json",
      "module": "Accessibility",
      "modules": [
        "Accessibility"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accessibility",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "WWDC21 Challenge: Large Text Challenge"
    },
    {
      "abstract": "Simulate a conversation using speech synthesis.",
      "categories": [
        "Accessibility"
      ],
      "doc_path": "/documentation/Accessibility/wwdc21_challenge_speech_synthesizer_simulator",
      "doc_url": "https://developer.apple.com/documentation/Accessibility/wwdc21_challenge_speech_synthesizer_simulator",
      "download": {
        "filename": "WWDC21ChallengeSpeechSynthesizerSimulator.zip",
        "identifier": "440080dfff4e/WWDC21ChallengeSpeechSynthesizerSimulator.zip",
        "url": "https://docs-assets.developer.apple.com/published/440080dfff4e/WWDC21ChallengeSpeechSynthesizerSimulator.zip"
      },
      "id": "accessibility/wwdc21_challenge_speech_synthesizer_simulator",
      "identifier": "doc://com.apple.Accessibility/documentation/Accessibility/wwdc21_challenge_speech_synthesizer_simulator",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accessibility/wwdc21_challenge_speech_synthesizer_simulator.json",
      "module": "Accessibility",
      "modules": [
        "Accessibility"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accessibility",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "WWDC21 Challenge: Speech Synthesizer Simulator"
    },
    {
      "abstract": "Navigate to the end of a dark maze using VoiceOver as your guide.",
      "categories": [
        "Accessibility"
      ],
      "doc_path": "/documentation/Accessibility/wwdc21_challenge_voiceover_maze",
      "doc_url": "https://developer.apple.com/documentation/Accessibility/wwdc21_challenge_voiceover_maze",
      "download": {
        "filename": "WWDC21ChallengeVoiceOverMaze.zip",
        "identifier": "dd9d209d7df6/WWDC21ChallengeVoiceOverMaze.zip",
        "url": "https://docs-assets.developer.apple.com/published/dd9d209d7df6/WWDC21ChallengeVoiceOverMaze.zip"
      },
      "id": "accessibility/wwdc21_challenge_voiceover_maze",
      "identifier": "doc://com.apple.Accessibility/documentation/Accessibility/wwdc21_challenge_voiceover_maze",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accessibility/wwdc21_challenge_voiceover_maze.json",
      "module": "Accessibility",
      "modules": [
        "Accessibility"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accessibility",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "WWDC21 Challenge: VoiceOver Maze"
    },
    {
      "abstract": "Play a card-matching game using Switch Control.",
      "categories": [
        "Accessibility"
      ],
      "doc_path": "/documentation/Accessibility/wwdc22_challenge_learn_switch_control_through_gaming",
      "doc_url": "https://developer.apple.com/documentation/Accessibility/wwdc22_challenge_learn_switch_control_through_gaming",
      "download": {
        "filename": "WWDC22ChallengeLearnSwitchControlThroughGaming.zip",
        "identifier": "70429c924eac/WWDC22ChallengeLearnSwitchControlThroughGaming.zip",
        "url": "https://docs-assets.developer.apple.com/published/70429c924eac/WWDC22ChallengeLearnSwitchControlThroughGaming.zip"
      },
      "id": "accessibility/wwdc22_challenge_learn_switch_control_through_gaming",
      "identifier": "doc://com.apple.Accessibility/documentation/Accessibility/wwdc22_challenge_learn_switch_control_through_gaming",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Accessibility/wwdc22_challenge_learn_switch_control_through_gaming.json",
      "module": "Accessibility",
      "modules": [
        "Accessibility"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accessibility",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "WWDC22 Challenge: Learn Switch Control through gaming"
    },
    {
      "abstract": "Discover, select, and set up a specific Bluetooth accessory without requesting permission to use Bluetooth.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/AccessorySetupKit/setting-up-and-authorizing-a-bluetooth-accessory",
      "doc_url": "https://developer.apple.com/documentation/AccessorySetupKit/setting-up-and-authorizing-a-bluetooth-accessory",
      "download": {
        "filename": "SettingUpAndAuthorizingABluetoothAccessory.zip",
        "identifier": "89f5eef578ef/SettingUpAndAuthorizingABluetoothAccessory.zip",
        "url": "https://docs-assets.developer.apple.com/published/89f5eef578ef/SettingUpAndAuthorizingABluetoothAccessory.zip"
      },
      "id": "accessorysetupkit/setting-up-and-authorizing-a-bluetooth-accessory",
      "identifier": "doc://com.apple.AccessorySetupKit/documentation/AccessorySetupKit/setting-up-and-authorizing-a-bluetooth-accessory",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AccessorySetupKit/setting-up-and-authorizing-a-bluetooth-accessory.json",
      "module": "AccessorySetupKit",
      "modules": [
        "AccessorySetupKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AccessorySetupKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Setting up and authorizing a Bluetooth accessory"
    },
    {
      "abstract": "Create prominent alerts at specified dates for your iOS app.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/AlarmKit/scheduling-an-alarm-with-alarmkit",
      "doc_url": "https://developer.apple.com/documentation/AlarmKit/scheduling-an-alarm-with-alarmkit",
      "download": {
        "filename": "SchedulingAnAlarmWithAlarmKit.zip",
        "identifier": "c2045ce0bff8/SchedulingAnAlarmWithAlarmKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/c2045ce0bff8/SchedulingAnAlarmWithAlarmKit.zip"
      },
      "id": "alarmkit/scheduling-an-alarm-with-alarmkit",
      "identifier": "doc://com.apple.alarmkit/documentation/AlarmKit/scheduling-an-alarm-with-alarmkit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AlarmKit/scheduling-an-alarm-with-alarmkit.json",
      "module": "AlarmKit",
      "modules": [
        "AlarmKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AlarmKit",
        "technology-index:Sample Code Library",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Scheduling an alarm with AlarmKit"
    },
    {
      "abstract": "Create a shared codebase to build a multiplatform app that offers widgets and an App Clip.",
      "categories": [
        "App frameworks"
      ],
      "doc_path": "/documentation/AppClip/fruta-building-a-feature-rich-app-with-swiftui",
      "doc_url": "https://developer.apple.com/documentation/AppClip/fruta-building-a-feature-rich-app-with-swiftui",
      "download": {
        "filename": "FrutaBuildingAFeatureRichAppWithSwiftUI.zip",
        "identifier": "15035f283d6a/FrutaBuildingAFeatureRichAppWithSwiftUI.zip",
        "url": "https://docs-assets.developer.apple.com/published/15035f283d6a/FrutaBuildingAFeatureRichAppWithSwiftUI.zip"
      },
      "id": "appclip/fruta-building-a-feature-rich-app-with-swiftui",
      "identifier": "doc://com.apple.appclip/documentation/AppClip/fruta-building-a-feature-rich-app-with-swiftui",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AppClip/fruta-building-a-feature-rich-app-with-swiftui.json",
      "module": "App Clips",
      "modules": [
        "App Clips"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:App Clips",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.4",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.4",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.4",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.3",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "13.3",
          "name": "Xcode"
        }
      ],
      "title": "Fruta: Building a feature-rich app with SwiftUI"
    },
    {
      "abstract": "Display content and provide services in an AR experience with App Clip Codes.",
      "categories": [
        "App frameworks"
      ],
      "doc_path": "/documentation/AppClip/interacting-with-app-clip-codes-in-ar",
      "doc_url": "https://developer.apple.com/documentation/AppClip/interacting-with-app-clip-codes-in-ar",
      "download": {
        "filename": "InteractingWithAppClipCodesInAR.zip",
        "identifier": "84b24fc9087a/InteractingWithAppClipCodesInAR.zip",
        "url": "https://docs-assets.developer.apple.com/published/84b24fc9087a/InteractingWithAppClipCodesInAR.zip"
      },
      "id": "appclip/interacting-with-app-clip-codes-in-ar",
      "identifier": "doc://com.apple.appclip/documentation/AppClip/interacting-with-app-clip-codes-in-ar",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AppClip/interacting-with-app-clip-codes-in-ar.json",
      "module": "App Clips",
      "modules": [
        "App Clips"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:App Clips",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.5",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.5",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.5",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.5",
          "name": "Xcode"
        }
      ],
      "title": "Interacting with App Clip Codes in AR"
    },
    {
      "abstract": "Enable people to use your app’s features quickly through Siri, Spotlight, and Shortcuts.",
      "categories": [
        "App Intents and SiriKit"
      ],
      "doc_path": "/documentation/AppIntents/AcceleratingAppInteractionsWithAppIntents",
      "doc_url": "https://developer.apple.com/documentation/AppIntents/AcceleratingAppInteractionsWithAppIntents",
      "download": {
        "filename": "AcceleratingAppInteractionsWithAppIntents.zip",
        "identifier": "069aab226592/AcceleratingAppInteractionsWithAppIntents.zip",
        "url": "https://docs-assets.developer.apple.com/published/069aab226592/AcceleratingAppInteractionsWithAppIntents.zip"
      },
      "id": "appintents/acceleratingappinteractionswithappintents",
      "identifier": "doc://com.apple.AppIntents/documentation/AppIntents/AcceleratingAppInteractionsWithAppIntents",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AppIntents/AcceleratingAppInteractionsWithAppIntents.json",
      "module": "App Intents",
      "modules": [
        "App Intents"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:App Intents",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.1",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.1",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.1",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.1",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "2.1",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "watchOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Accelerating app interactions with App Intents"
    },
    {
      "abstract": "Create app intents and entities so people can use your app’s content and actions across system experiences.",
      "categories": [
        "WWDC26",
        "App Intents and SiriKit"
      ],
      "doc_path": "/documentation/AppIntents/adopting-app-intents-to-support-system-experiences",
      "doc_url": "https://developer.apple.com/documentation/AppIntents/adopting-app-intents-to-support-system-experiences",
      "download": {
        "filename": "AdoptingAppIntentsToSupportSystemExperiences.zip",
        "identifier": "753755240cbc/AdoptingAppIntentsToSupportSystemExperiences.zip",
        "url": "https://docs-assets.developer.apple.com/published/753755240cbc/AdoptingAppIntentsToSupportSystemExperiences.zip"
      },
      "id": "appintents/adopting-app-intents-to-support-system-experiences",
      "identifier": "doc://com.apple.AppIntents/documentation/AppIntents/adopting-app-intents-to-support-system-experiences",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AppIntents/adopting-app-intents-to-support-system-experiences.json",
      "module": "App Intents",
      "modules": [
        "App Intents"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:App Intents",
        "technology-index:Sample Code Library",
        "technology-index:Visual Intelligence"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iPadOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "macOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Adopting App Intents to support system experiences"
    },
    {
      "abstract": "Customize your app’s behavior to reflect the device’s current Focus.",
      "categories": [
        "App Intents and SiriKit"
      ],
      "doc_path": "/documentation/AppIntents/defining-your-app-s-focus-filter",
      "doc_url": "https://developer.apple.com/documentation/AppIntents/defining-your-app-s-focus-filter",
      "download": {
        "filename": "DefiningYourAppsFocusFilter.zip",
        "identifier": "2ab5aa140eab/DefiningYourAppsFocusFilter.zip",
        "url": "https://docs-assets.developer.apple.com/published/2ab5aa140eab/DefiningYourAppsFocusFilter.zip"
      },
      "id": "appintents/defining-your-app-s-focus-filter",
      "identifier": "doc://com.apple.AppIntents/documentation/AppIntents/defining-your-app-s-focus-filter",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AppIntents/defining-your-app-s-focus-filter.json",
      "module": "App Intents",
      "modules": [
        "App Intents"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:App Intents",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "Defining your app’s Focus filter"
    },
    {
      "abstract": "Adopt calendar schemas so people can create, find, and manage events with Siri.",
      "categories": [
        "WWDC26"
      ],
      "doc_path": "/documentation/AppIntents/integrating-your-calendar-app-with-apple-intelligence",
      "doc_url": "https://developer.apple.com/documentation/AppIntents/integrating-your-calendar-app-with-apple-intelligence",
      "download": {
        "filename": "IntegratingYourCalendarAppWithAppleIntelligence.zip",
        "identifier": "24d96a1e4743/IntegratingYourCalendarAppWithAppleIntelligence.zip",
        "url": "https://docs-assets.developer.apple.com/published/24d96a1e4743/IntegratingYourCalendarAppWithAppleIntelligence.zip"
      },
      "id": "appintents/integrating-your-calendar-app-with-apple-intelligence",
      "identifier": "doc://com.apple.AppIntents/documentation/AppIntents/integrating-your-calendar-app-with-apple-intelligence",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AppIntents/integrating-your-calendar-app-with-apple-intelligence.json",
      "module": "App Intents",
      "modules": [
        "App Intents"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:App Intents",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iPadOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Integrating your calendar app with Apple Intelligence"
    },
    {
      "abstract": "Adopt message schemas so people can send messages and manage conversations with Siri.",
      "categories": [
        "WWDC26"
      ],
      "doc_path": "/documentation/AppIntents/integrating-your-messaging-app-with-apple-intelligence",
      "doc_url": "https://developer.apple.com/documentation/AppIntents/integrating-your-messaging-app-with-apple-intelligence",
      "download": {
        "filename": "IntegratingYourMessagingAppWithAppleIntelligence.zip",
        "identifier": "ebf7c10f9546/IntegratingYourMessagingAppWithAppleIntelligence.zip",
        "url": "https://docs-assets.developer.apple.com/published/ebf7c10f9546/IntegratingYourMessagingAppWithAppleIntelligence.zip"
      },
      "id": "appintents/integrating-your-messaging-app-with-apple-intelligence",
      "identifier": "doc://com.apple.AppIntents/documentation/AppIntents/integrating-your-messaging-app-with-apple-intelligence",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AppIntents/integrating-your-messaging-app-with-apple-intelligence.json",
      "module": "App Intents",
      "modules": [
        "App Intents"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:App Intents",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iPadOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "macOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Integrating your messaging app with Apple Intelligence"
    },
    {
      "abstract": "Adopt the audio and clock schemas so people can play music and set alarms with Siri.",
      "categories": [
        "WWDC26"
      ],
      "doc_path": "/documentation/AppIntents/integrating-your-music-app-with-apple-intelligence",
      "doc_url": "https://developer.apple.com/documentation/AppIntents/integrating-your-music-app-with-apple-intelligence",
      "download": {
        "filename": "IntegratingYourMusicAppWithAppleIntelligence.zip",
        "identifier": "c0e07af0bfd2/IntegratingYourMusicAppWithAppleIntelligence.zip",
        "url": "https://docs-assets.developer.apple.com/published/c0e07af0bfd2/IntegratingYourMusicAppWithAppleIntelligence.zip"
      },
      "id": "appintents/integrating-your-music-app-with-apple-intelligence",
      "identifier": "doc://com.apple.AppIntents/documentation/AppIntents/integrating-your-music-app-with-apple-intelligence",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AppIntents/integrating-your-music-app-with-apple-intelligence.json",
      "module": "App Intents",
      "modules": [
        "App Intents"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:App Intents",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iPadOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Integrating your music app with Apple Intelligence"
    },
    {
      "abstract": "Adopt photo schemas so people can edit and manage photos with Siri.",
      "categories": [
        "WWDC26"
      ],
      "doc_path": "/documentation/AppIntents/integrating-your-photo-app-with-apple-intelligence",
      "doc_url": "https://developer.apple.com/documentation/AppIntents/integrating-your-photo-app-with-apple-intelligence",
      "download": {
        "filename": "IntegratingYourPhotoAppWithAppleIntelligence.zip",
        "identifier": "ae50f9badabe/IntegratingYourPhotoAppWithAppleIntelligence.zip",
        "url": "https://docs-assets.developer.apple.com/published/ae50f9badabe/IntegratingYourPhotoAppWithAppleIntelligence.zip"
      },
      "id": "appintents/integrating-your-photo-app-with-apple-intelligence",
      "identifier": "doc://com.apple.AppIntents/documentation/AppIntents/integrating-your-photo-app-with-apple-intelligence",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AppIntents/integrating-your-photo-app-with-apple-intelligence.json",
      "module": "App Intents",
      "modules": [
        "App Intents"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:App Intents",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iPadOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "macOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Integrating your photo app with Apple Intelligence"
    },
    {
      "abstract": "Implement Action Extensions to provide quick access to commonly used features of your app.",
      "categories": [
        "AppKit"
      ],
      "doc_path": "/documentation/AppKit/add-functionality-to-finder-with-action-extensions",
      "doc_url": "https://developer.apple.com/documentation/AppKit/add-functionality-to-finder-with-action-extensions",
      "download": {
        "filename": "AddFunctionalityToFinderWithActionExtensions.zip",
        "identifier": "9de4b65d06cd/AddFunctionalityToFinderWithActionExtensions.zip",
        "url": "https://docs-assets.developer.apple.com/published/9de4b65d06cd/AddFunctionalityToFinderWithActionExtensions.zip"
      },
      "id": "appkit/add-functionality-to-finder-with-action-extensions",
      "identifier": "doc://com.apple.appkit/documentation/AppKit/add-functionality-to-finder-with-action-extensions",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AppKit/add-functionality-to-finder-with-action-extensions.json",
      "module": "AppKit",
      "modules": [
        "AppKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AppKit",
        "technology-index:Foundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "10.14",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "11.3",
          "name": "Xcode"
        }
      ],
      "title": "Add Functionality to Finder with Action Extensions"
    },
    {
      "abstract": "Adopt Touch Bar support by displaying interactive content and controls for your macOS apps.",
      "categories": [
        "AppKit"
      ],
      "doc_path": "/documentation/AppKit/creating-and-customizing-the-touch-bar",
      "doc_url": "https://developer.apple.com/documentation/AppKit/creating-and-customizing-the-touch-bar",
      "download": {
        "filename": "CreatingAndCustomizingTheTouchBar.zip",
        "identifier": "4110bf888f80/CreatingAndCustomizingTheTouchBar.zip",
        "url": "https://docs-assets.developer.apple.com/published/4110bf888f80/CreatingAndCustomizingTheTouchBar.zip"
      },
      "id": "appkit/creating-and-customizing-the-touch-bar",
      "identifier": "doc://com.apple.appkit/documentation/AppKit/creating-and-customizing-the-touch-bar",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AppKit/creating-and-customizing-the-touch-bar.json",
      "module": "AppKit",
      "modules": [
        "AppKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AppKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating and Customizing the Touch Bar"
    },
    {
      "abstract": "Write an app that creates, manages, edits, and saves text documents.",
      "categories": [
        "AppKit"
      ],
      "doc_path": "/documentation/AppKit/developing-a-document-based-app",
      "doc_url": "https://developer.apple.com/documentation/AppKit/developing-a-document-based-app",
      "download": {
        "filename": "DevelopingADocumentBasedApp.zip",
        "identifier": "493c3c9bab1a/DevelopingADocumentBasedApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/493c3c9bab1a/DevelopingADocumentBasedApp.zip"
      },
      "id": "appkit/developing-a-document-based-app",
      "identifier": "doc://com.apple.appkit/documentation/AppKit/developing-a-document-based-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AppKit/developing-a-document-based-app.json",
      "module": "AppKit",
      "modules": [
        "AppKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AppKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "10.10",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "11.3",
          "name": "Xcode"
        }
      ],
      "title": "Developing a Document-Based App"
    },
    {
      "abstract": "Add Writing Tools support to your custom text engine to enhance the text editing experience.",
      "categories": [
        "AppKit"
      ],
      "doc_path": "/documentation/AppKit/enhancing-your-custom-text-engine-with-writing-tools",
      "doc_url": "https://developer.apple.com/documentation/AppKit/enhancing-your-custom-text-engine-with-writing-tools",
      "download": {
        "filename": "EnhancingYourCustomTextEngineWithWritingTools.zip",
        "identifier": "8f654c44de7e/EnhancingYourCustomTextEngineWithWritingTools.zip",
        "url": "https://docs-assets.developer.apple.com/published/8f654c44de7e/EnhancingYourCustomTextEngineWithWritingTools.zip"
      },
      "id": "appkit/enhancing-your-custom-text-engine-with-writing-tools",
      "identifier": "doc://com.apple.appkit/documentation/AppKit/enhancing-your-custom-text-engine-with-writing-tools",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AppKit/enhancing-your-custom-text-engine-with-writing-tools.json",
      "module": "AppKit",
      "modules": [
        "AppKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AppKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.4",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "16.4",
          "name": "Xcode"
        }
      ],
      "title": "Enhancing your custom text engine with Writing Tools"
    },
    {
      "abstract": "Provide users quick access to your app’s features from a toolbar and corresponding Touch Bar.",
      "categories": [
        "AppKit"
      ],
      "doc_path": "/documentation/AppKit/integrating-a-toolbar-and-touch-bar-into-your-app",
      "doc_url": "https://developer.apple.com/documentation/AppKit/integrating-a-toolbar-and-touch-bar-into-your-app",
      "download": {
        "filename": "IntegratingAToolbarAndTouchBarIntoYourApp.zip",
        "identifier": "a796b6ad5663/IntegratingAToolbarAndTouchBarIntoYourApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/a796b6ad5663/IntegratingAToolbarAndTouchBarIntoYourApp.zip"
      },
      "id": "appkit/integrating-a-toolbar-and-touch-bar-into-your-app",
      "identifier": "doc://com.apple.appkit/documentation/AppKit/integrating-a-toolbar-and-touch-bar-into-your-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AppKit/integrating-a-toolbar-and-touch-bar-into-your-app.json",
      "module": "AppKit",
      "modules": [
        "AppKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AppKit",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "10.13",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Xcode"
        }
      ],
      "title": "Integrating a Toolbar and Touch Bar into Your App"
    },
    {
      "abstract": "Build a structured user interface that simplifies navigation in your app.",
      "categories": [
        "AppKit"
      ],
      "doc_path": "/documentation/AppKit/navigating-hierarchical-data-using-outline-and-split-views",
      "doc_url": "https://developer.apple.com/documentation/AppKit/navigating-hierarchical-data-using-outline-and-split-views",
      "download": {
        "filename": "NavigatingHierarchicalDataUsingOutlineAndSplitViews.zip",
        "identifier": "39a6b1114be3/NavigatingHierarchicalDataUsingOutlineAndSplitViews.zip",
        "url": "https://docs-assets.developer.apple.com/published/39a6b1114be3/NavigatingHierarchicalDataUsingOutlineAndSplitViews.zip"
      },
      "id": "appkit/navigating-hierarchical-data-using-outline-and-split-views",
      "identifier": "doc://com.apple.appkit/documentation/AppKit/navigating-hierarchical-data-using-outline-and-split-views",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AppKit/navigating-hierarchical-data-using-outline-and-split-views.json",
      "module": "AppKit",
      "modules": [
        "AppKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AppKit",
        "technology-index:Sample Code Library",
        "technology-index:Uniform Type Identifiers"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "10.15",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "13.1",
          "name": "Xcode"
        }
      ],
      "title": "Navigating Hierarchical Data Using Outline and Split Views"
    },
    {
      "abstract": "Group individual views in your app’s user interface into a scrollable stack view.",
      "categories": [
        "AppKit"
      ],
      "doc_path": "/documentation/AppKit/organize-your-user-interface-with-a-stack-view",
      "doc_url": "https://developer.apple.com/documentation/AppKit/organize-your-user-interface-with-a-stack-view",
      "download": {
        "filename": "OrganizeYourUserInterfaceWithAStackView.zip",
        "identifier": "43c5be08bfb5/OrganizeYourUserInterfaceWithAStackView.zip",
        "url": "https://docs-assets.developer.apple.com/published/43c5be08bfb5/OrganizeYourUserInterfaceWithAStackView.zip"
      },
      "id": "appkit/organize-your-user-interface-with-a-stack-view",
      "identifier": "doc://com.apple.appkit/documentation/AppKit/organize-your-user-interface-with-a-stack-view",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AppKit/organize-your-user-interface-with-a-stack-view.json",
      "module": "AppKit",
      "modules": [
        "AppKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AppKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "10.13",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Organize Your User Interface with a Stack View"
    },
    {
      "abstract": "Provide continuity for people using your app by preserving current activities on macOS.",
      "categories": [
        "AppKit"
      ],
      "doc_path": "/documentation/AppKit/restoring-your-app-s-state-with-appkit",
      "doc_url": "https://developer.apple.com/documentation/AppKit/restoring-your-app-s-state-with-appkit",
      "download": {
        "filename": "RestoringYourAppsStateWithAppKit.zip",
        "identifier": "92835358791e/RestoringYourAppsStateWithAppKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/92835358791e/RestoringYourAppsStateWithAppKit.zip"
      },
      "id": "appkit/restoring-your-app-s-state-with-appkit",
      "identifier": "doc://com.apple.appkit/documentation/AppKit/restoring-your-app-s-state-with-appkit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AppKit/restoring-your-app-s-state-with-appkit.json",
      "module": "AppKit",
      "modules": [
        "AppKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AppKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.5",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.2",
          "name": "Xcode"
        }
      ],
      "title": "Restoring your app’s state with AppKit"
    },
    {
      "abstract": "Share data between macOS apps during drag and drop by using an item provider.",
      "categories": [
        "AppKit"
      ],
      "doc_path": "/documentation/AppKit/supporting-collection-view-drag-and-drop-through-file-promises",
      "doc_url": "https://developer.apple.com/documentation/AppKit/supporting-collection-view-drag-and-drop-through-file-promises",
      "download": {
        "filename": "SupportingCollectionViewDragAndDropThroughFilePromises.zip",
        "identifier": "2a60f49668a9/SupportingCollectionViewDragAndDropThroughFilePromises.zip",
        "url": "https://docs-assets.developer.apple.com/published/2a60f49668a9/SupportingCollectionViewDragAndDropThroughFilePromises.zip"
      },
      "id": "appkit/supporting-collection-view-drag-and-drop-through-file-promises",
      "identifier": "doc://com.apple.appkit/documentation/AppKit/supporting-collection-view-drag-and-drop-through-file-promises",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AppKit/supporting-collection-view-drag-and-drop-through-file-promises.json",
      "module": "AppKit",
      "modules": [
        "AppKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AppKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "10.15",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "13.1",
          "name": "Xcode"
        }
      ],
      "title": "Supporting Collection View Drag and Drop Through File Promises"
    },
    {
      "abstract": "Receive and provide file promises to support dragged app files and pasteboard operations.",
      "categories": [
        "AppKit"
      ],
      "doc_path": "/documentation/AppKit/supporting-drag-and-drop-through-file-promises",
      "doc_url": "https://developer.apple.com/documentation/AppKit/supporting-drag-and-drop-through-file-promises",
      "download": {
        "filename": "SupportingDragAndDropThroughFilePromises.zip",
        "identifier": "d25f50af13b3/SupportingDragAndDropThroughFilePromises.zip",
        "url": "https://docs-assets.developer.apple.com/published/d25f50af13b3/SupportingDragAndDropThroughFilePromises.zip"
      },
      "id": "appkit/supporting-drag-and-drop-through-file-promises",
      "identifier": "doc://com.apple.appkit/documentation/AppKit/supporting-drag-and-drop-through-file-promises",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AppKit/supporting-drag-and-drop-through-file-promises.json",
      "module": "AppKit",
      "modules": [
        "AppKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AppKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "10.15",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "13.3",
          "name": "Xcode"
        }
      ],
      "title": "Supporting Drag and Drop Through File Promises"
    },
    {
      "abstract": "Share data between macOS apps during drag and drop by using an item provider.",
      "categories": [
        "AppKit"
      ],
      "doc_path": "/documentation/AppKit/supporting-table-view-drag-and-drop-through-file-promises",
      "doc_url": "https://developer.apple.com/documentation/AppKit/supporting-table-view-drag-and-drop-through-file-promises",
      "download": {
        "filename": "SupportingTableViewDragAndDropThroughFilePromises.zip",
        "identifier": "2456370b6ad5/SupportingTableViewDragAndDropThroughFilePromises.zip",
        "url": "https://docs-assets.developer.apple.com/published/2456370b6ad5/SupportingTableViewDragAndDropThroughFilePromises.zip"
      },
      "id": "appkit/supporting-table-view-drag-and-drop-through-file-promises",
      "identifier": "doc://com.apple.appkit/documentation/AppKit/supporting-table-view-drag-and-drop-through-file-promises",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AppKit/supporting-table-view-drag-and-drop-through-file-promises.json",
      "module": "AppKit",
      "modules": [
        "AppKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AppKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "10.13",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "13.1",
          "name": "Xcode"
        }
      ],
      "title": "Supporting Table View Drag and Drop Through File Promises"
    },
    {
      "abstract": "Take advantage of the true native resolution of a Mac display when running your iPad app in full-screen mode on a Mac.",
      "categories": [
        "Developer tools"
      ],
      "doc_path": "/documentation/Apple-Silicon/providing-an-edge-to-edge-full-screen-experience-in-your-ipad-app-running-on-a-mac",
      "doc_url": "https://developer.apple.com/documentation/Apple-Silicon/providing-an-edge-to-edge-full-screen-experience-in-your-ipad-app-running-on-a-mac",
      "download": {
        "filename": "ProvidingAnEdgeToEdgeFullScreenExperienceInYourIPadAppRunningOnAMac.zip",
        "identifier": "186a6eba3742/ProvidingAnEdgeToEdgeFullScreenExperienceInYourIPadAppRunningOnAMac.zip",
        "url": "https://docs-assets.developer.apple.com/published/186a6eba3742/ProvidingAnEdgeToEdgeFullScreenExperienceInYourIPadAppRunningOnAMac.zip"
      },
      "id": "apple-silicon/providing-an-edge-to-edge-full-screen-experience-in-your-ipad-app-running-on-a-mac",
      "identifier": "doc://com.apple.Apple-Silicon/documentation/Apple-Silicon/providing-an-edge-to-edge-full-screen-experience-in-your-ipad-app-running-on-a-mac",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Apple-Silicon/providing-an-edge-to-edge-full-screen-experience-in-your-ipad-app-running-on-a-mac.json",
      "module": "Apple-Silicon",
      "modules": [
        "Apple-Silicon"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Apple silicon",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.5",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.5",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.5",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.4",
          "name": "Xcode"
        }
      ],
      "title": "Providing an edge-to-edge, full-screen experience in your iPad app running on a Mac"
    },
    {
      "abstract": "Enable Touch Alternatives to provide keyboard, mouse, and trackpad equivalents to your iOS app when it runs on a Mac with Apple silicon.",
      "categories": [
        "Developer tools"
      ],
      "doc_path": "/documentation/Apple-Silicon/providing-touch-gesture-equivalents-using-touch-alternatives",
      "doc_url": "https://developer.apple.com/documentation/Apple-Silicon/providing-touch-gesture-equivalents-using-touch-alternatives",
      "download": {
        "filename": "ProvidingTouchGestureEquivalentsUsingTouchAlternatives.zip",
        "identifier": "7a8fac8d5d76/ProvidingTouchGestureEquivalentsUsingTouchAlternatives.zip",
        "url": "https://docs-assets.developer.apple.com/published/7a8fac8d5d76/ProvidingTouchGestureEquivalentsUsingTouchAlternatives.zip"
      },
      "id": "apple-silicon/providing-touch-gesture-equivalents-using-touch-alternatives",
      "identifier": "doc://com.apple.Apple-Silicon/documentation/Apple-Silicon/providing-touch-gesture-equivalents-using-touch-alternatives",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Apple-Silicon/providing-touch-gesture-equivalents-using-touch-alternatives.json",
      "module": "Apple-Silicon",
      "modules": [
        "Apple-Silicon"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Apple silicon",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.5",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.5",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.5",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.4",
          "name": "Xcode"
        }
      ],
      "title": "Providing touch gesture equivalents using Touch Alternatives"
    },
    {
      "abstract": "Encrypt a single file and save the result to the file system, then decrypt and recreate the original file from the archive file using Apple Encrypted Archive.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/AppleArchive/encrypting-and-decrypting-a-single-file",
      "doc_url": "https://developer.apple.com/documentation/AppleArchive/encrypting-and-decrypting-a-single-file",
      "download": {
        "filename": "EncryptingAndDecryptingASingleFile.zip",
        "identifier": "9fdd84f37897/EncryptingAndDecryptingASingleFile.zip",
        "url": "https://docs-assets.developer.apple.com/published/9fdd84f37897/EncryptingAndDecryptingASingleFile.zip"
      },
      "id": "applearchive/encrypting-and-decrypting-a-single-file",
      "identifier": "doc://com.apple.applearchive/documentation/AppleArchive/encrypting-and-decrypting-a-single-file",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AppleArchive/encrypting-and-decrypting-a-single-file.json",
      "module": "Apple Archive",
      "modules": [
        "Apple Archive"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Apple Archive",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Encrypting and Decrypting a Single File"
    },
    {
      "abstract": "Encrypt the contents of a string and save the result to the file system, then decrypt and recreate the string from the archive file using Apple Encrypted Archive.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/AppleArchive/encrypting-and-decrypting-a-string",
      "doc_url": "https://developer.apple.com/documentation/AppleArchive/encrypting-and-decrypting-a-string",
      "download": {
        "filename": "EncryptingAndDecryptingAString.zip",
        "identifier": "39e29ae612d8/EncryptingAndDecryptingAString.zip",
        "url": "https://docs-assets.developer.apple.com/published/39e29ae612d8/EncryptingAndDecryptingAString.zip"
      },
      "id": "applearchive/encrypting-and-decrypting-a-string",
      "identifier": "doc://com.apple.applearchive/documentation/AppleArchive/encrypting-and-decrypting-a-string",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AppleArchive/encrypting-and-decrypting-a-string.json",
      "module": "Apple Archive",
      "modules": [
        "Apple Archive"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Apple Archive",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Encrypting and Decrypting a String"
    },
    {
      "abstract": "Compress and encrypt the contents of an entire directory or decompress and decrypt an archived directory  using Apple Encrypted Archive.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/AppleArchive/encrypting-and-decrypting-directories",
      "doc_url": "https://developer.apple.com/documentation/AppleArchive/encrypting-and-decrypting-directories",
      "download": {
        "filename": "EncryptingAndDecryptingDirectories.zip",
        "identifier": "f8f2c97ac41e/EncryptingAndDecryptingDirectories.zip",
        "url": "https://docs-assets.developer.apple.com/published/f8f2c97ac41e/EncryptingAndDecryptingDirectories.zip"
      },
      "id": "applearchive/encrypting-and-decrypting-directories",
      "identifier": "doc://com.apple.applearchive/documentation/AppleArchive/encrypting-and-decrypting-directories",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AppleArchive/encrypting-and-decrypting-directories.json",
      "module": "Apple Archive",
      "modules": [
        "Apple Archive"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Apple Archive",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Encrypting and Decrypting Directories"
    },
    {
      "abstract": "Streamline your app’s API by moving georelated searches from inside your app to your server.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/AppleMapsServerAPI/integrating-the-apple-maps-server-api-into-java-server-applications",
      "doc_url": "https://developer.apple.com/documentation/AppleMapsServerAPI/integrating-the-apple-maps-server-api-into-java-server-applications",
      "download": {
        "filename": "IntegratingTheAppleMapsServerAPIIntoJavaServerApplications.zip",
        "identifier": "ff0098d1ddf7/IntegratingTheAppleMapsServerAPIIntoJavaServerApplications.zip",
        "url": "https://docs-assets.developer.apple.com/published/ff0098d1ddf7/IntegratingTheAppleMapsServerAPIIntoJavaServerApplications.zip"
      },
      "id": "applemapsserverapi/integrating-the-apple-maps-server-api-into-java-server-applications",
      "identifier": "doc://com.apple.applemapsserverapi/documentation/AppleMapsServerAPI/integrating-the-apple-maps-server-api-into-java-server-applications",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AppleMapsServerAPI/integrating-the-apple-maps-server-api-into-java-server-applications.json",
      "module": "Apple Maps Server API",
      "modules": [
        "Apple Maps Server API"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Apple Maps Server API",
        "technology-index:Sample Code Library"
      ],
      "platforms": [],
      "title": "Integrating the Apple Maps Server API into Java server applications"
    },
    {
      "abstract": "Use the App Store Connect API to collect and parse diagnostic logs and metrics for your apps.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/AppStoreConnectAPI/retrieve-power-and-performance-metrics-and-log-insights",
      "doc_url": "https://developer.apple.com/documentation/AppStoreConnectAPI/retrieve-power-and-performance-metrics-and-log-insights",
      "download": {
        "filename": "RetrievePowerAndPerformanceMetricsAndLogInsights.zip",
        "identifier": "a2a633e2573c/RetrievePowerAndPerformanceMetricsAndLogInsights.zip",
        "url": "https://docs-assets.developer.apple.com/published/a2a633e2573c/RetrievePowerAndPerformanceMetricsAndLogInsights.zip"
      },
      "id": "appstoreconnectapi/retrieve-power-and-performance-metrics-and-log-insights",
      "identifier": "doc://com.apple.appstoreconnectapi/documentation/AppStoreConnectAPI/retrieve-power-and-performance-metrics-and-log-insights",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AppStoreConnectAPI/retrieve-power-and-performance-metrics-and-log-insights.json",
      "module": "App Store Connect API",
      "modules": [
        "App Store Connect API"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:App Store Connect API",
        "technology-index:Sample Code Library"
      ],
      "platforms": [],
      "title": "Retrieve Power and Performance Metrics and Log Insights"
    },
    {
      "abstract": "Upload your app previews, including video files, to App Store Connect by using the asset upload APIs.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/AppStoreConnectAPI/uploading-app-previews",
      "doc_url": "https://developer.apple.com/documentation/AppStoreConnectAPI/uploading-app-previews",
      "download": {
        "filename": "UploadingAppPreviews.zip",
        "identifier": "a3aad0a69102/UploadingAppPreviews.zip",
        "url": "https://docs-assets.developer.apple.com/published/a3aad0a69102/UploadingAppPreviews.zip"
      },
      "id": "appstoreconnectapi/uploading-app-previews",
      "identifier": "doc://com.apple.appstoreconnectapi/documentation/AppStoreConnectAPI/uploading-app-previews",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AppStoreConnectAPI/uploading-app-previews.json",
      "module": "App Store Connect API",
      "modules": [
        "App Store Connect API"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:App Store Connect API",
        "technology-index:Sample Code Library"
      ],
      "platforms": [],
      "title": "Uploading App Previews"
    },
    {
      "abstract": "Use ARKit to generate environment probe textures from camera imagery and render reflective virtual objects.",
      "categories": [
        "ARKit"
      ],
      "doc_path": "/documentation/ARKit/adding-realistic-reflections-to-an-ar-experience",
      "doc_url": "https://developer.apple.com/documentation/ARKit/adding-realistic-reflections-to-an-ar-experience",
      "download": {
        "filename": "AddingRealisticReflectionsToAnARExperience.zip",
        "identifier": "21925afe4ac7/AddingRealisticReflectionsToAnARExperience.zip",
        "url": "https://docs-assets.developer.apple.com/published/21925afe4ac7/AddingRealisticReflectionsToAnARExperience.zip"
      },
      "id": "arkit/adding-realistic-reflections-to-an-ar-experience",
      "identifier": "doc://com.apple.arkit/documentation/ARKit/adding-realistic-reflections-to-an-ar-experience",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ARKit/adding-realistic-reflections-to-an-ar-experience.json",
      "module": "ARKit",
      "modules": [
        "ARKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Adding realistic reflections to an AR experience"
    },
    {
      "abstract": "Use room tracking in visionOS to provide custom interactions with physical spaces.",
      "categories": [
        "ARKit"
      ],
      "doc_path": "/documentation/arkit/building_local_experiences_with_room_tracking",
      "doc_url": "https://developer.apple.com/documentation/arkit/building_local_experiences_with_room_tracking",
      "download": {
        "filename": "BuildingLocalExperiencesWithRoomTracking.zip",
        "identifier": "https://docs-assets.developer.apple.com/published/7520c7f45d/BuildingLocalExperiencesWithRoomTracking.zip",
        "url": "https://docs-assets.developer.apple.com/published/7520c7f45d/BuildingLocalExperiencesWithRoomTracking.zip"
      },
      "id": "arkit/building_local_experiences_with_room_tracking",
      "identifier": "doc://com.apple.documentation/documentation/arkit/building_local_experiences_with_room_tracking",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/arkit/building_local_experiences_with_room_tracking.json",
      "module": "ARKit",
      "modules": [
        "ARKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Building local experiences with room tracking"
    },
    {
      "abstract": "Track a person in the physical environment and visualize their motion by applying the same body movements to a virtual character.",
      "categories": [
        "ARKit"
      ],
      "doc_path": "/documentation/ARKit/capturing-body-motion-in-3d",
      "doc_url": "https://developer.apple.com/documentation/ARKit/capturing-body-motion-in-3d",
      "download": {
        "filename": "CapturingBodyMotionIn3D.zip",
        "identifier": "78433fffa4d4/CapturingBodyMotionIn3D.zip",
        "url": "https://docs-assets.developer.apple.com/published/78433fffa4d4/CapturingBodyMotionIn3D.zip"
      },
      "id": "arkit/capturing-body-motion-in-3d",
      "identifier": "doc://com.apple.arkit/documentation/ARKit/capturing-body-motion-in-3d",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ARKit/capturing-body-motion-in-3d.json",
      "module": "ARKit",
      "modules": [
        "ARKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Capturing Body Motion in 3D"
    },
    {
      "abstract": "Track the user’s face in an app that displays an AR experience with the rear camera.",
      "categories": [
        "ARKit"
      ],
      "doc_path": "/documentation/ARKit/combining-user-face-tracking-and-world-tracking",
      "doc_url": "https://developer.apple.com/documentation/ARKit/combining-user-face-tracking-and-world-tracking",
      "download": {
        "filename": "CombiningUserFaceTrackingAndWorldTracking.zip",
        "identifier": "5fb729747479/CombiningUserFaceTrackingAndWorldTracking.zip",
        "url": "https://docs-assets.developer.apple.com/published/5fb729747479/CombiningUserFaceTrackingAndWorldTracking.zip"
      },
      "id": "arkit/combining-user-face-tracking-and-world-tracking",
      "identifier": "doc://com.apple.arkit/documentation/ARKit/combining-user-face-tracking-and-world-tracking",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ARKit/combining-user-face-tracking-and-world-tracking.json",
      "module": "ARKit",
      "modules": [
        "ARKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Combining user face-tracking and world tracking"
    },
    {
      "abstract": "Enable nearby devices to share an AR experience by using a peer-to-peer multiuser strategy.",
      "categories": [
        "ARKit"
      ],
      "doc_path": "/documentation/ARKit/creating-a-collaborative-session",
      "doc_url": "https://developer.apple.com/documentation/ARKit/creating-a-collaborative-session",
      "download": {
        "filename": "CreatingACollaborativeSession.zip",
        "identifier": "64b9ddc97bef/CreatingACollaborativeSession.zip",
        "url": "https://docs-assets.developer.apple.com/published/64b9ddc97bef/CreatingACollaborativeSession.zip"
      },
      "id": "arkit/creating-a-collaborative-session",
      "identifier": "doc://com.apple.arkit/documentation/ARKit/creating-a-collaborative-session",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ARKit/creating-a-collaborative-session.json",
      "module": "ARKit",
      "modules": [
        "ARKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating a collaborative session"
    },
    {
      "abstract": "Apply virtual fog to the physical environment.",
      "categories": [
        "ARKit"
      ],
      "doc_path": "/documentation/ARKit/creating-a-fog-effect-using-scene-depth",
      "doc_url": "https://developer.apple.com/documentation/ARKit/creating-a-fog-effect-using-scene-depth",
      "download": {
        "filename": "CreatingAFogEffectUsingSceneDepth.zip",
        "identifier": "4e4354a829b8/CreatingAFogEffectUsingSceneDepth.zip",
        "url": "https://docs-assets.developer.apple.com/published/4e4354a829b8/CreatingAFogEffectUsingSceneDepth.zip"
      },
      "id": "arkit/creating-a-fog-effect-using-scene-depth",
      "identifier": "doc://com.apple.arkit/documentation/ARKit/creating-a-fog-effect-using-scene-depth",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ARKit/creating-a-fog-effect-using-scene-depth.json",
      "module": "ARKit",
      "modules": [
        "ARKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating a fog effect using scene depth"
    },
    {
      "abstract": "Enable nearby devices to share an AR experience by using a host-guest multiuser strategy.",
      "categories": [
        "ARKit"
      ],
      "doc_path": "/documentation/ARKit/creating-a-multiuser-ar-experience",
      "doc_url": "https://developer.apple.com/documentation/ARKit/creating-a-multiuser-ar-experience",
      "download": {
        "filename": "CreatingAMultiuserARExperience.zip",
        "identifier": "152f5a5fdd83/CreatingAMultiuserARExperience.zip",
        "url": "https://docs-assets.developer.apple.com/published/152f5a5fdd83/CreatingAMultiuserARExperience.zip"
      },
      "id": "arkit/creating-a-multiuser-ar-experience",
      "identifier": "doc://com.apple.arkit/documentation/ARKit/creating-a-multiuser-ar-experience",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ARKit/creating-a-multiuser-ar-experience.json",
      "module": "ARKit",
      "modules": [
        "ARKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.1",
          "name": "Xcode"
        }
      ],
      "title": "Creating a multiuser AR experience"
    },
    {
      "abstract": "Use sound effects and environmental sound layers to create an engaging AR experience.",
      "categories": [
        "ARKit"
      ],
      "doc_path": "/documentation/ARKit/creating-an-immersive-ar-experience-with-audio",
      "doc_url": "https://developer.apple.com/documentation/ARKit/creating-an-immersive-ar-experience-with-audio",
      "download": {
        "filename": "CreatingAnImmersiveArExperienceWithAudio.zip",
        "identifier": "506ffde880b4/CreatingAnImmersiveArExperienceWithAudio.zip",
        "url": "https://docs-assets.developer.apple.com/published/506ffde880b4/CreatingAnImmersiveArExperienceWithAudio.zip"
      },
      "id": "arkit/creating-an-immersive-ar-experience-with-audio",
      "identifier": "doc://com.apple.arkit/documentation/ARKit/creating-an-immersive-ar-experience-with-audio",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ARKit/creating-an-immersive-ar-experience-with-audio.json",
      "module": "ARKit",
      "modules": [
        "ARKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating an immersive ar experience with audio"
    },
    {
      "abstract": "Annotate an AR experience with virtual sticky notes that you display onscreen over real and virtual objects.",
      "categories": [
        "ARKit"
      ],
      "doc_path": "/documentation/ARKit/creating-screen-annotations-for-objects-in-an-ar-experience",
      "doc_url": "https://developer.apple.com/documentation/ARKit/creating-screen-annotations-for-objects-in-an-ar-experience",
      "download": {
        "filename": "CreatingScreenAnnotationsForObjectsInAnARExperience.zip",
        "identifier": "40a3c8cad3c3/CreatingScreenAnnotationsForObjectsInAnARExperience.zip",
        "url": "https://docs-assets.developer.apple.com/published/40a3c8cad3c3/CreatingScreenAnnotationsForObjectsInAnARExperience.zip"
      },
      "id": "arkit/creating-screen-annotations-for-objects-in-an-ar-experience",
      "identifier": "doc://com.apple.arkit/documentation/ARKit/creating-screen-annotations-for-objects-in-an-ar-experience",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ARKit/creating-screen-annotations-for-objects-in-an-ar-experience.json",
      "module": "ARKit",
      "modules": [
        "ARKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating screen annotations for objects in an AR experience"
    },
    {
      "abstract": "React to known 2D images in the user’s environment, and use their positions to place AR content.",
      "categories": [
        "ARKit"
      ],
      "doc_path": "/documentation/ARKit/detecting-images-in-an-ar-experience",
      "doc_url": "https://developer.apple.com/documentation/ARKit/detecting-images-in-an-ar-experience",
      "download": {
        "filename": "ARKitImageDetection.zip",
        "identifier": "b7d5e65ac573/ARKitImageDetection.zip",
        "url": "https://docs-assets.developer.apple.com/published/b7d5e65ac573/ARKitImageDetection.zip"
      },
      "id": "arkit/detecting-images-in-an-ar-experience",
      "identifier": "doc://com.apple.arkit/documentation/ARKit/detecting-images-in-an-ar-experience",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ARKit/detecting-images-in-an-ar-experience.json",
      "module": "ARKit",
      "modules": [
        "ARKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:Sample Code Library",
        "technology-index:Swift packages",
        "technology-index:Xcode",
        "technology-index:Xcode Cloud"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "11.3",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "11.3",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Detecting Images in an AR Experience"
    },
    {
      "abstract": "Present a visualization of the physical environment by placing points based a scene’s depth data.",
      "categories": [
        "ARKit"
      ],
      "doc_path": "/documentation/ARKit/displaying-a-point-cloud-using-scene-depth",
      "doc_url": "https://developer.apple.com/documentation/ARKit/displaying-a-point-cloud-using-scene-depth",
      "download": {
        "filename": "DisplayingAPointCloudUsingSceneDepth.zip",
        "identifier": "86c67991e91e/DisplayingAPointCloudUsingSceneDepth.zip",
        "url": "https://docs-assets.developer.apple.com/published/86c67991e91e/DisplayingAPointCloudUsingSceneDepth.zip"
      },
      "id": "arkit/displaying-a-point-cloud-using-scene-depth",
      "identifier": "doc://com.apple.arkit/documentation/ARKit/displaying-a-point-cloud-using-scene-depth",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ARKit/displaying-a-point-cloud-using-scene-depth.json",
      "module": "ARKit",
      "modules": [
        "ARKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Displaying a point cloud using scene depth"
    },
    {
      "abstract": "Occlude your app’s virtual content where ARKit recognizes people in the camera feed by using matte generator.",
      "categories": [
        "ARKit"
      ],
      "doc_path": "/documentation/ARKit/effecting-people-occlusion-in-custom-renderers",
      "doc_url": "https://developer.apple.com/documentation/ARKit/effecting-people-occlusion-in-custom-renderers",
      "download": {
        "filename": "EffectingPeopleOcclusionInCustomRenderers.zip",
        "identifier": "4695583f8ba3/EffectingPeopleOcclusionInCustomRenderers.zip",
        "url": "https://docs-assets.developer.apple.com/published/4695583f8ba3/EffectingPeopleOcclusionInCustomRenderers.zip"
      },
      "id": "arkit/effecting-people-occlusion-in-custom-renderers",
      "identifier": "doc://com.apple.arkit/documentation/ARKit/effecting-people-occlusion-in-custom-renderers",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ARKit/effecting-people-occlusion-in-custom-renderers.json",
      "module": "ARKit",
      "modules": [
        "ARKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Effecting People Occlusion in Custom Renderers"
    },
    {
      "abstract": "Cover your app’s virtual content with people that ARKit perceives in the camera feed.",
      "categories": [
        "ARKit"
      ],
      "doc_path": "/documentation/ARKit/occluding-virtual-content-with-people",
      "doc_url": "https://developer.apple.com/documentation/ARKit/occluding-virtual-content-with-people",
      "download": {
        "filename": "OccludingVirtualContentWithPeople.zip",
        "identifier": "93957d4568dc/OccludingVirtualContentWithPeople.zip",
        "url": "https://docs-assets.developer.apple.com/published/93957d4568dc/OccludingVirtualContentWithPeople.zip"
      },
      "id": "arkit/occluding-virtual-content-with-people",
      "identifier": "doc://com.apple.arkit/documentation/ARKit/occluding-virtual-content-with-people",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ARKit/occluding-virtual-content-with-people.json",
      "module": "ARKit",
      "modules": [
        "ARKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Occluding virtual content with people"
    },
    {
      "abstract": "Place virtual content at tracked, real-world locations, and enable the user to interact with virtual content by using gestures.",
      "categories": [
        "ARKit"
      ],
      "doc_path": "/documentation/ARKit/placing-objects-and-handling-3d-interaction",
      "doc_url": "https://developer.apple.com/documentation/ARKit/placing-objects-and-handling-3d-interaction",
      "download": {
        "filename": "PlacingObjectsAndHandling3DInteraction.zip",
        "identifier": "d738f9c9c7fe/PlacingObjectsAndHandling3DInteraction.zip",
        "url": "https://docs-assets.developer.apple.com/published/d738f9c9c7fe/PlacingObjectsAndHandling3DInteraction.zip"
      },
      "id": "arkit/placing-objects-and-handling-3d-interaction",
      "identifier": "doc://com.apple.arkit/documentation/ARKit/placing-objects-and-handling-3d-interaction",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ARKit/placing-objects-and-handling-3d-interaction.json",
      "module": "ARKit",
      "modules": [
        "ARKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Placing objects and handling 3D interaction"
    },
    {
      "abstract": "Create anchors that track objects you recognize in the camera feed, using a custom optical-recognition algorithm.",
      "categories": [
        "ARKit"
      ],
      "doc_path": "/documentation/ARKit/recognizing-and-labeling-arbitrary-objects",
      "doc_url": "https://developer.apple.com/documentation/ARKit/recognizing-and-labeling-arbitrary-objects",
      "download": {
        "filename": "RecognizingAndLabelingArbitraryObjects.zip",
        "identifier": "255f0d93500d/RecognizingAndLabelingArbitraryObjects.zip",
        "url": "https://docs-assets.developer.apple.com/published/255f0d93500d/RecognizingAndLabelingArbitraryObjects.zip"
      },
      "id": "arkit/recognizing-and-labeling-arbitrary-objects",
      "identifier": "doc://com.apple.arkit/documentation/ARKit/recognizing-and-labeling-arbitrary-objects",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ARKit/recognizing-and-labeling-arbitrary-objects.json",
      "module": "ARKit",
      "modules": [
        "ARKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Recognizing and Labeling Arbitrary Objects"
    },
    {
      "abstract": "Serialize a world-tracking session to resume it later on.",
      "categories": [
        "ARKit"
      ],
      "doc_path": "/documentation/ARKit/saving-and-loading-world-data",
      "doc_url": "https://developer.apple.com/documentation/ARKit/saving-and-loading-world-data",
      "download": {
        "filename": "SavingAndLoadingWorldData.zip",
        "identifier": "7ad88eecc792/SavingAndLoadingWorldData.zip",
        "url": "https://docs-assets.developer.apple.com/published/7ad88eecc792/SavingAndLoadingWorldData.zip"
      },
      "id": "arkit/saving-and-loading-world-data",
      "identifier": "doc://com.apple.arkit/documentation/ARKit/saving-and-loading-world-data",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ARKit/saving-and-loading-world-data.json",
      "module": "ARKit",
      "modules": [
        "ARKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Saving and loading world data"
    },
    {
      "abstract": "Record spatial features of real-world objects, then use the results to find those objects in the user’s environment and trigger AR content.",
      "categories": [
        "ARKit"
      ],
      "doc_path": "/documentation/ARKit/scanning-and-detecting-3d-objects",
      "doc_url": "https://developer.apple.com/documentation/ARKit/scanning-and-detecting-3d-objects",
      "download": {
        "filename": "ScanningAndDetecting3DObjects.zip",
        "identifier": "47d19b69ba73/ScanningAndDetecting3DObjects.zip",
        "url": "https://docs-assets.developer.apple.com/published/47d19b69ba73/ScanningAndDetecting3DObjects.zip"
      },
      "id": "arkit/scanning-and-detecting-3d-objects",
      "identifier": "doc://com.apple.arkit/documentation/ARKit/scanning-and-detecting-3d-objects",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ARKit/scanning-and-detecting-3d-objects.json",
      "module": "ARKit",
      "modules": [
        "ARKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:Sample Code Library",
        "technology-index:Swift packages",
        "technology-index:Xcode",
        "technology-index:Xcode Cloud"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.1",
          "name": "Xcode"
        }
      ],
      "title": "Scanning and Detecting 3D Objects"
    },
    {
      "abstract": "Control an AR experience remotely by transferring sensor and user input over the network.",
      "categories": [
        "ARKit"
      ],
      "doc_path": "/documentation/ARKit/streaming-an-ar-experience",
      "doc_url": "https://developer.apple.com/documentation/ARKit/streaming-an-ar-experience",
      "download": {
        "filename": "StreamingAnARExperience.zip",
        "identifier": "0711c38245c2/StreamingAnARExperience.zip",
        "url": "https://docs-assets.developer.apple.com/published/0711c38245c2/StreamingAnARExperience.zip"
      },
      "id": "arkit/streaming-an-ar-experience",
      "identifier": "doc://com.apple.arkit/documentation/ARKit/streaming-an-ar-experience",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ARKit/streaming-an-ar-experience.json",
      "module": "ARKit",
      "modules": [
        "ARKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Streaming an AR experience"
    },
    {
      "abstract": "Use a tracked accessory with Apple Vision Pro to create a virtual sculpture.",
      "categories": [
        "ARKit"
      ],
      "doc_path": "/documentation/ARKit/tracking-a-handheld-accessory-as-a-virtual-sculpting-tool",
      "doc_url": "https://developer.apple.com/documentation/ARKit/tracking-a-handheld-accessory-as-a-virtual-sculpting-tool",
      "download": {
        "filename": "SpatialSculptingTrackAHandHeldAccessoryAsAVirtualSculptingTool.zip",
        "identifier": "3bf1f285368f/SpatialSculptingTrackAHandHeldAccessoryAsAVirtualSculptingTool.zip",
        "url": "https://docs-assets.developer.apple.com/published/3bf1f285368f/SpatialSculptingTrackAHandHeldAccessoryAsAVirtualSculptingTool.zip"
      },
      "id": "arkit/tracking-a-handheld-accessory-as-a-virtual-sculpting-tool",
      "identifier": "doc://com.apple.arkit/documentation/ARKit/tracking-a-handheld-accessory-as-a-virtual-sculpting-tool",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ARKit/tracking-a-handheld-accessory-as-a-virtual-sculpting-tool.json",
      "module": "ARKit",
      "modules": [
        "ARKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Tracking a handheld accessory as a virtual sculpting tool"
    },
    {
      "abstract": "Translate the position and velocity of tracked handheld accessories to throw virtual balls at a stack of cans.",
      "categories": [
        "ARKit"
      ],
      "doc_path": "/documentation/ARKit/tracking-accessories-in-volumetric-windows",
      "doc_url": "https://developer.apple.com/documentation/ARKit/tracking-accessories-in-volumetric-windows",
      "download": {
        "filename": "TrackingAccessoriesInVolumetricWindows.zip",
        "identifier": "37de0758368a/TrackingAccessoriesInVolumetricWindows.zip",
        "url": "https://docs-assets.developer.apple.com/published/37de0758368a/TrackingAccessoriesInVolumetricWindows.zip"
      },
      "id": "arkit/tracking-accessories-in-volumetric-windows",
      "identifier": "doc://com.apple.arkit/documentation/ARKit/tracking-accessories-in-volumetric-windows",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ARKit/tracking-accessories-in-volumetric-windows.json",
      "module": "ARKit",
      "modules": [
        "ARKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:Sample Code Library",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Tracking accessories in volumetric windows"
    },
    {
      "abstract": "Create images from rectangular shapes found in the user’s environment, and augment their appearance.",
      "categories": [
        "ARKit"
      ],
      "doc_path": "/documentation/ARKit/tracking-and-altering-images",
      "doc_url": "https://developer.apple.com/documentation/ARKit/tracking-and-altering-images",
      "download": {
        "filename": "TrackingAndAlteringImages.zip",
        "identifier": "37921c6fe4c6/TrackingAndAlteringImages.zip",
        "url": "https://docs-assets.developer.apple.com/published/37921c6fe4c6/TrackingAndAlteringImages.zip"
      },
      "id": "arkit/tracking-and-altering-images",
      "identifier": "doc://com.apple.arkit/documentation/ARKit/tracking-and-altering-images",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ARKit/tracking-and-altering-images.json",
      "module": "ARKit",
      "modules": [
        "ARKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Tracking and altering images"
    },
    {
      "abstract": "Detect faces in a front-camera AR experience, overlay virtual content, and animate facial expressions in real-time.",
      "categories": [
        "ARKit"
      ],
      "doc_path": "/documentation/ARKit/tracking-and-visualizing-faces",
      "doc_url": "https://developer.apple.com/documentation/ARKit/tracking-and-visualizing-faces",
      "download": {
        "filename": "TrackingAndVisualizingFaces.zip",
        "identifier": "82453f2306c7/TrackingAndVisualizingFaces.zip",
        "url": "https://docs-assets.developer.apple.com/published/82453f2306c7/TrackingAndVisualizingFaces.zip"
      },
      "id": "arkit/tracking-and-visualizing-faces",
      "identifier": "doc://com.apple.arkit/documentation/ARKit/tracking-and-visualizing-faces",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ARKit/tracking-and-visualizing-faces.json",
      "module": "ARKit",
      "modules": [
        "ARKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.1",
          "name": "Xcode"
        }
      ],
      "title": "Tracking and visualizing faces"
    },
    {
      "abstract": "Detect surfaces in the physical environment and visualize their shape and location in 3D space.",
      "categories": [
        "ARKit"
      ],
      "doc_path": "/documentation/ARKit/tracking-and-visualizing-planes",
      "doc_url": "https://developer.apple.com/documentation/ARKit/tracking-and-visualizing-planes",
      "download": {
        "filename": "TrackingAndVisualizingPlanes.zip",
        "identifier": "c959595c53cc/TrackingAndVisualizingPlanes.zip",
        "url": "https://docs-assets.developer.apple.com/published/c959595c53cc/TrackingAndVisualizingPlanes.zip"
      },
      "id": "arkit/tracking-and-visualizing-planes",
      "identifier": "doc://com.apple.arkit/documentation/ARKit/tracking-and-visualizing-planes",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ARKit/tracking-and-visualizing-planes.json",
      "module": "ARKit",
      "modules": [
        "ARKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.6",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.6",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Tracking and visualizing planes"
    },
    {
      "abstract": "Track specific geographic areas of interest and render them in an AR experience.",
      "categories": [
        "ARKit"
      ],
      "doc_path": "/documentation/ARKit/tracking-geographic-locations-in-ar",
      "doc_url": "https://developer.apple.com/documentation/ARKit/tracking-geographic-locations-in-ar",
      "download": {
        "filename": "TrackingGeographicLocationsInAr.zip",
        "identifier": "218a9a85284c/TrackingGeographicLocationsInAr.zip",
        "url": "https://docs-assets.developer.apple.com/published/218a9a85284c/TrackingGeographicLocationsInAr.zip"
      },
      "id": "arkit/tracking-geographic-locations-in-ar",
      "identifier": "doc://com.apple.arkit/documentation/ARKit/tracking-geographic-locations-in-ar",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ARKit/tracking-geographic-locations-in-ar.json",
      "module": "ARKit",
      "modules": [
        "ARKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Tracking geographic locations in AR"
    },
    {
      "abstract": "Estimate the shape of the physical environment using a polygonal mesh.",
      "categories": [
        "ARKit"
      ],
      "doc_path": "/documentation/ARKit/visualizing-and-interacting-with-a-reconstructed-scene",
      "doc_url": "https://developer.apple.com/documentation/ARKit/visualizing-and-interacting-with-a-reconstructed-scene",
      "download": {
        "filename": "VisualizingAndInteractingWithAReconstructedScene.zip",
        "identifier": "4ecffc064c76/VisualizingAndInteractingWithAReconstructedScene.zip",
        "url": "https://docs-assets.developer.apple.com/published/4ecffc064c76/VisualizingAndInteractingWithAReconstructedScene.zip"
      },
      "id": "arkit/visualizing-and-interacting-with-a-reconstructed-scene",
      "identifier": "doc://com.apple.arkit/documentation/ARKit/visualizing-and-interacting-with-a-reconstructed-scene",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ARKit/visualizing-and-interacting-with-a-reconstructed-scene.json",
      "module": "ARKit",
      "modules": [
        "ARKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.4",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.4",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Visualizing and interacting with a reconstructed scene"
    },
    {
      "abstract": "Implement a configurable audio input source as a driver extension that runs in user space in macOS and iPadOS.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/AudioDriverKit/creating-an-audio-device-driver",
      "doc_url": "https://developer.apple.com/documentation/AudioDriverKit/creating-an-audio-device-driver",
      "download": {
        "filename": "CreatingAnAudioDeviceDriver.zip",
        "identifier": "8fa6bc52317e/CreatingAnAudioDeviceDriver.zip",
        "url": "https://docs-assets.developer.apple.com/published/8fa6bc52317e/CreatingAnAudioDeviceDriver.zip"
      },
      "id": "audiodriverkit/creating-an-audio-device-driver",
      "identifier": "doc://com.apple.audiodriverkit/documentation/AudioDriverKit/creating-an-audio-device-driver",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AudioDriverKit/creating-an-audio-device-driver.json",
      "module": "AudioDriverKit",
      "modules": [
        "AudioDriverKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AudioDriverKit",
        "technology-index:DriverKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.1",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating an audio device driver"
    },
    {
      "abstract": "Convert audio formats to efficiently manage data and quality.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/AudioToolbox/encoding-and-decoding-audio",
      "doc_url": "https://developer.apple.com/documentation/AudioToolbox/encoding-and-decoding-audio",
      "download": {
        "filename": "EncodingAndDecodingAudio.zip",
        "identifier": "71f0b42489a6/EncodingAndDecodingAudio.zip",
        "url": "https://docs-assets.developer.apple.com/published/71f0b42489a6/EncodingAndDecodingAudio.zip"
      },
      "id": "audiotoolbox/encoding-and-decoding-audio",
      "identifier": "doc://com.apple.audiotoolbox/documentation/AudioToolbox/encoding-and-decoding-audio",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AudioToolbox/encoding-and-decoding-audio.json",
      "module": "Audio Toolbox",
      "modules": [
        "Audio Toolbox"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Audio Toolbox",
        "technology-index:Sample Code Library",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "13.3",
          "name": "Xcode"
        }
      ],
      "title": "Encoding and decoding audio"
    },
    {
      "abstract": "Convert 8-channel audio to 2-channel spatial audio by using a spatial mixer audio unit.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/AudioToolbox/generating-spatial-audio-from-a-multichannel-audio-stream",
      "doc_url": "https://developer.apple.com/documentation/AudioToolbox/generating-spatial-audio-from-a-multichannel-audio-stream",
      "download": {
        "filename": "GeneratingSpatialAudioFromAMultichannelAudioStream.zip",
        "identifier": "bb4f4c24e243/GeneratingSpatialAudioFromAMultichannelAudioStream.zip",
        "url": "https://docs-assets.developer.apple.com/published/bb4f4c24e243/GeneratingSpatialAudioFromAMultichannelAudioStream.zip"
      },
      "id": "audiotoolbox/generating-spatial-audio-from-a-multichannel-audio-stream",
      "identifier": "doc://com.apple.audiotoolbox/documentation/AudioToolbox/generating-spatial-audio-from-a-multichannel-audio-stream",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AudioToolbox/generating-spatial-audio-from-a-multichannel-audio-stream.json",
      "module": "Audio Toolbox",
      "modules": [
        "Audio Toolbox"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Audio Toolbox",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.4",
          "name": "Xcode"
        }
      ],
      "title": "Generating spatial audio from a multichannel audio stream"
    },
    {
      "abstract": "Add custom audio processing and MIDI instruments to your app by hosting Audio Unit (AU) plug-ins.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/AudioToolbox/incorporating-audio-effects-and-instruments",
      "doc_url": "https://developer.apple.com/documentation/AudioToolbox/incorporating-audio-effects-and-instruments",
      "download": {
        "filename": "IncorporatingAudioEffectsAndInstruments.zip",
        "identifier": "21130483bd32/IncorporatingAudioEffectsAndInstruments.zip",
        "url": "https://docs-assets.developer.apple.com/published/21130483bd32/IncorporatingAudioEffectsAndInstruments.zip"
      },
      "id": "audiotoolbox/incorporating-audio-effects-and-instruments",
      "identifier": "doc://com.apple.audiotoolbox/documentation/AudioToolbox/incorporating-audio-effects-and-instruments",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AudioToolbox/incorporating-audio-effects-and-instruments.json",
      "module": "Audio Toolbox",
      "modules": [
        "Audio Toolbox"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Audio Toolbox",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "10.15",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Incorporating Audio Effects and Instruments"
    },
    {
      "abstract": "Allow users to sign in to a service without typing a password.",
      "categories": [
        "Authentication"
      ],
      "doc_path": "/documentation/AuthenticationServices/connecting-to-a-service-with-passkeys",
      "doc_url": "https://developer.apple.com/documentation/AuthenticationServices/connecting-to-a-service-with-passkeys",
      "download": {
        "filename": "ConnectingToAServiceWithPasskeys.zip",
        "identifier": "83aaf0818492/ConnectingToAServiceWithPasskeys.zip",
        "url": "https://docs-assets.developer.apple.com/published/83aaf0818492/ConnectingToAServiceWithPasskeys.zip"
      },
      "id": "authenticationservices/connecting-to-a-service-with-passkeys",
      "identifier": "doc://com.apple.authenticationservices/documentation/AuthenticationServices/connecting-to-a-service-with-passkeys",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AuthenticationServices/connecting-to-a-service-with-passkeys.json",
      "module": "Authentication Services",
      "modules": [
        "Authentication Services"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Authentication Services",
        "technology-index:Sample Code Library",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "Connecting to a service with passkeys"
    },
    {
      "abstract": "Provide a way for users of your app to set up an account and start using your services.",
      "categories": [
        "Authentication"
      ],
      "doc_path": "/documentation/AuthenticationServices/implementing-user-authentication-with-sign-in-with-apple",
      "doc_url": "https://developer.apple.com/documentation/AuthenticationServices/implementing-user-authentication-with-sign-in-with-apple",
      "download": {
        "filename": "ImplementingUserAuthenticationWithSignInWithApple.zip",
        "identifier": "4b0771b46501/ImplementingUserAuthenticationWithSignInWithApple.zip",
        "url": "https://docs-assets.developer.apple.com/published/4b0771b46501/ImplementingUserAuthenticationWithSignInWithApple.zip"
      },
      "id": "authenticationservices/implementing-user-authentication-with-sign-in-with-apple",
      "identifier": "doc://com.apple.authenticationservices/documentation/AuthenticationServices/implementing-user-authentication-with-sign-in-with-apple",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AuthenticationServices/implementing-user-authentication-with-sign-in-with-apple.json",
      "module": "Authentication Services",
      "modules": [
        "Authentication Services"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Authentication Services",
        "technology-index:Sample Code Library",
        "technology-index:Sign in with Apple"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.3",
          "name": "Xcode"
        }
      ],
      "title": "Implementing User Authentication with Sign in with Apple"
    },
    {
      "abstract": "Allow people to quickly create an account with passkeys and associated domains.",
      "categories": [
        "Authentication"
      ],
      "doc_path": "/documentation/AuthenticationServices/performing-fast-account-creation-with-passkeys",
      "doc_url": "https://developer.apple.com/documentation/AuthenticationServices/performing-fast-account-creation-with-passkeys",
      "download": {
        "filename": "PerformingFastAccountCreationWithPasskeys.zip",
        "identifier": "2a5d74be7e4e/PerformingFastAccountCreationWithPasskeys.zip",
        "url": "https://docs-assets.developer.apple.com/published/2a5d74be7e4e/PerformingFastAccountCreationWithPasskeys.zip"
      },
      "id": "authenticationservices/performing-fast-account-creation-with-passkeys",
      "identifier": "doc://com.apple.authenticationservices/documentation/AuthenticationServices/performing-fast-account-creation-with-passkeys",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AuthenticationServices/performing-fast-account-creation-with-passkeys.json",
      "module": "Authentication Services",
      "modules": [
        "Authentication Services"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Authentication Services",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Performing fast account creation with passkeys"
    },
    {
      "abstract": "Build a fluid sign-in experience for your tvOS apps using AuthenticationServices.",
      "categories": [
        "Authentication"
      ],
      "doc_path": "/documentation/AuthenticationServices/simplifying-user-authentication-in-a-tvos-app",
      "doc_url": "https://developer.apple.com/documentation/AuthenticationServices/simplifying-user-authentication-in-a-tvos-app",
      "download": {
        "filename": "SimplifyingUserAuthenticationInATvOSApp.zip",
        "identifier": "93a90a8799b4/SimplifyingUserAuthenticationInATvOSApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/93a90a8799b4/SimplifyingUserAuthenticationInATvOSApp.zip"
      },
      "id": "authenticationservices/simplifying-user-authentication-in-a-tvos-app",
      "identifier": "doc://com.apple.authenticationservices/documentation/AuthenticationServices/simplifying-user-authentication-in-a-tvos-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AuthenticationServices/simplifying-user-authentication-in-a-tvos-app.json",
      "module": "Authentication Services",
      "modules": [
        "Authentication Services"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Authentication Services",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Simplifying User Authentication in a tvOS App"
    },
    {
      "abstract": "Ensure the academic integrity of your assessment app by using Automatic Assessment Configuration.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/AutomaticAssessmentConfiguration/build-an-educational-assessment-app",
      "doc_url": "https://developer.apple.com/documentation/AutomaticAssessmentConfiguration/build-an-educational-assessment-app",
      "download": {
        "filename": "BuildAnEducationalAssessmentApp.zip",
        "identifier": "8901fc522f09/BuildAnEducationalAssessmentApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/8901fc522f09/BuildAnEducationalAssessmentApp.zip"
      },
      "id": "automaticassessmentconfiguration/build-an-educational-assessment-app",
      "identifier": "doc://com.apple.automaticassessmentconfiguration/documentation/AutomaticAssessmentConfiguration/build-an-educational-assessment-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AutomaticAssessmentConfiguration/build-an-educational-assessment-app.json",
      "module": "Automatic Assessment Configuration",
      "modules": [
        "Automatic Assessment Configuration"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Automatic Assessment Configuration",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "13.3",
          "name": "Xcode"
        }
      ],
      "title": "Build an Educational Assessment App"
    },
    {
      "abstract": "Provide a more accessible experience by adding your app’s audio to a call.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/AVFAudio/Adding-synthesized-speech-to-calls",
      "doc_url": "https://developer.apple.com/documentation/AVFAudio/Adding-synthesized-speech-to-calls",
      "download": {
        "filename": "AddingSynthesizedSpeechToCalls.zip",
        "identifier": "77a3397c5287/AddingSynthesizedSpeechToCalls.zip",
        "url": "https://docs-assets.developer.apple.com/published/77a3397c5287/AddingSynthesizedSpeechToCalls.zip"
      },
      "id": "avfaudio/adding-synthesized-speech-to-calls",
      "identifier": "doc://com.apple.avfaudio/documentation/AVFAudio/Adding-synthesized-speech-to-calls",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFAudio/Adding-synthesized-speech-to-calls.json",
      "module": "AVFAudio",
      "modules": [
        "AVFAudio"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFAudio",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.2",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.2",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.2",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.1",
          "name": "Xcode"
        }
      ],
      "title": "Adding synthesized speech to calls"
    },
    {
      "abstract": "Generate audio signals using an audio source node and a custom render callback.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/AVFAudio/building-a-signal-generator",
      "doc_url": "https://developer.apple.com/documentation/AVFAudio/building-a-signal-generator",
      "download": {
        "filename": "BuildingASignalGenerator.zip",
        "identifier": "33ed57cac273/BuildingASignalGenerator.zip",
        "url": "https://docs-assets.developer.apple.com/published/33ed57cac273/BuildingASignalGenerator.zip"
      },
      "id": "avfaudio/building-a-signal-generator",
      "identifier": "doc://com.apple.avfaudio/documentation/AVFAudio/building-a-signal-generator",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFAudio/building-a-signal-generator.json",
      "module": "AVFAudio",
      "modules": [
        "AVFAudio"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFAudio",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "16.4",
          "name": "Xcode"
        }
      ],
      "title": "Building a signal generator"
    },
    {
      "abstract": "Synchronize audio loops with a main tempo by creating a real-time clip launcher.",
      "categories": [
        "WWDC26"
      ],
      "doc_path": "/documentation/AVFAudio/building-an-audio-sequencer-to-arrange-and-play-clips",
      "doc_url": "https://developer.apple.com/documentation/AVFAudio/building-an-audio-sequencer-to-arrange-and-play-clips",
      "download": {
        "filename": "BuildingAnAudioSequencerToArrangeAndPlayClips.zip",
        "identifier": "66724d961c0e/BuildingAnAudioSequencerToArrangeAndPlayClips.zip",
        "url": "https://docs-assets.developer.apple.com/published/66724d961c0e/BuildingAnAudioSequencerToArrangeAndPlayClips.zip"
      },
      "id": "avfaudio/building-an-audio-sequencer-to-arrange-and-play-clips",
      "identifier": "doc://com.apple.avfaudio/documentation/AVFAudio/building-an-audio-sequencer-to-arrange-and-play-clips",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFAudio/building-an-audio-sequencer-to-arrange-and-play-clips.json",
      "module": "AVFAudio",
      "modules": [
        "AVFAudio"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFAudio",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "macOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Building an audio sequencer to arrange and play clips"
    },
    {
      "abstract": "Configure an iOS device’s built-in microphones to add stereo recording capabilities to your app.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/AVFAudio/capturing-stereo-audio-from-built-in-microphones",
      "doc_url": "https://developer.apple.com/documentation/AVFAudio/capturing-stereo-audio-from-built-in-microphones",
      "download": {
        "filename": "CapturingStereoAudioFromBuiltInMicrophones.zip",
        "identifier": "210be7e44cf2/CapturingStereoAudioFromBuiltInMicrophones.zip",
        "url": "https://docs-assets.developer.apple.com/published/210be7e44cf2/CapturingStereoAudioFromBuiltInMicrophones.zip"
      },
      "id": "avfaudio/capturing-stereo-audio-from-built-in-microphones",
      "identifier": "doc://com.apple.avfaudio/documentation/AVFAudio/capturing-stereo-audio-from-built-in-microphones",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFAudio/capturing-stereo-audio-from-built-in-microphones.json",
      "module": "AVFAudio",
      "modules": [
        "AVFAudio"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFAudio",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.4",
          "name": "Xcode"
        }
      ],
      "title": "Capturing stereo audio from built-In microphones"
    },
    {
      "abstract": "Use your custom voices to synthesize speech by building a speech synthesis provider.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/AVFAudio/creating-a-custom-speech-synthesizer",
      "doc_url": "https://developer.apple.com/documentation/AVFAudio/creating-a-custom-speech-synthesizer",
      "download": {
        "filename": "CreatingACustomSpeechSynthesizer.zip",
        "identifier": "ea5e0ebe3569/CreatingACustomSpeechSynthesizer.zip",
        "url": "https://docs-assets.developer.apple.com/published/ea5e0ebe3569/CreatingACustomSpeechSynthesizer.zip"
      },
      "id": "avfaudio/creating-a-custom-speech-synthesizer",
      "identifier": "doc://com.apple.avfaudio/documentation/AVFAudio/creating-a-custom-speech-synthesizer",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFAudio/creating-a-custom-speech-synthesizer.json",
      "module": "AVFAudio",
      "modules": [
        "AVFAudio"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFAudio",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.5",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.5",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.5",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.5",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.4",
          "name": "Xcode"
        }
      ],
      "title": "Creating a custom speech synthesizer"
    },
    {
      "abstract": "Add custom audio-effect processing to apps like Logic Pro X and GarageBand by creating Audio Unit (AU) plug-ins.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/AVFAudio/creating-custom-audio-effects",
      "doc_url": "https://developer.apple.com/documentation/AVFAudio/creating-custom-audio-effects",
      "download": {
        "filename": "CreatingCustomAudioEffects.zip",
        "identifier": "01d31f3fd2d8/CreatingCustomAudioEffects.zip",
        "url": "https://docs-assets.developer.apple.com/published/01d31f3fd2d8/CreatingCustomAudioEffects.zip"
      },
      "id": "avfaudio/creating-custom-audio-effects",
      "identifier": "doc://com.apple.avfaudio/documentation/AVFAudio/creating-custom-audio-effects",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFAudio/creating-custom-audio-effects.json",
      "module": "AVFAudio",
      "modules": [
        "AVFAudio"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFAudio",
        "technology-index:Audio Toolbox",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.4",
          "name": "Xcode"
        }
      ],
      "title": "Creating custom audio effects"
    },
    {
      "abstract": "Add offline audio processing features to your app by enabling offline manual rendering mode.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/AVFAudio/performing-offline-audio-processing",
      "doc_url": "https://developer.apple.com/documentation/AVFAudio/performing-offline-audio-processing",
      "download": {
        "filename": "PerformingOfflineAudioProcessing.zip",
        "identifier": "ca0e22ea61f7/PerformingOfflineAudioProcessing.zip",
        "url": "https://docs-assets.developer.apple.com/published/ca0e22ea61f7/PerformingOfflineAudioProcessing.zip"
      },
      "id": "avfaudio/performing-offline-audio-processing",
      "identifier": "doc://com.apple.avfaudio/documentation/AVFAudio/performing-offline-audio-processing",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFAudio/performing-offline-audio-processing.json",
      "module": "AVFAudio",
      "modules": [
        "AVFAudio"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFAudio",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.4",
          "name": "Xcode"
        }
      ],
      "title": "Performing offline audio processing"
    },
    {
      "abstract": "Construct an audio player to play your custom audio data, and optionally take advantage of the advanced features of AirPlay 2.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/AVFAudio/playing-custom-audio-with-your-own-player",
      "doc_url": "https://developer.apple.com/documentation/AVFAudio/playing-custom-audio-with-your-own-player",
      "download": {
        "filename": "PlayingCustomAudioWithYourOwnPlayer.zip",
        "identifier": "dc166550ca25/PlayingCustomAudioWithYourOwnPlayer.zip",
        "url": "https://docs-assets.developer.apple.com/published/dc166550ca25/PlayingCustomAudioWithYourOwnPlayer.zip"
      },
      "id": "avfaudio/playing-custom-audio-with-your-own-player",
      "identifier": "doc://com.apple.avfaudio/documentation/AVFAudio/playing-custom-audio-with-your-own-player",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFAudio/playing-custom-audio-with-your-own-player.json",
      "module": "AVFAudio",
      "modules": [
        "AVFAudio"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFAudio",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.4",
          "name": "Xcode"
        }
      ],
      "title": "Playing custom audio with your own player"
    },
    {
      "abstract": "Add voice-processing capabilities to your app by using audio engine.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/AVFAudio/using-voice-processing",
      "doc_url": "https://developer.apple.com/documentation/AVFAudio/using-voice-processing",
      "download": {
        "filename": "UsingVoiceProcessing.zip",
        "identifier": "8599a413511b/UsingVoiceProcessing.zip",
        "url": "https://docs-assets.developer.apple.com/published/8599a413511b/UsingVoiceProcessing.zip"
      },
      "id": "avfaudio/using-voice-processing",
      "identifier": "doc://com.apple.avfaudio/documentation/AVFAudio/using-voice-processing",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFAudio/using-voice-processing.json",
      "module": "AVFAudio",
      "modules": [
        "AVFAudio"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFAudio",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.4",
          "name": "Xcode"
        }
      ],
      "title": "Using voice processing"
    },
    {
      "abstract": "Show a specific area of a video by using timed display mask rectangle metadata.",
      "categories": [
        "AVFoundation"
      ],
      "doc_path": "/documentation/AVFoundation/adding-a-display-mask-rectangle-metadata-track-to-a-movie-file",
      "doc_url": "https://developer.apple.com/documentation/AVFoundation/adding-a-display-mask-rectangle-metadata-track-to-a-movie-file",
      "download": {
        "filename": "AddingADisplayMaskRectangleMetadataTrackToAMovieFile.zip",
        "identifier": "bd2961a0172a/AddingADisplayMaskRectangleMetadataTrackToAMovieFile.zip",
        "url": "https://docs-assets.developer.apple.com/published/bd2961a0172a/AddingADisplayMaskRectangleMetadataTrackToAMovieFile.zip"
      },
      "id": "avfoundation/adding-a-display-mask-rectangle-metadata-track-to-a-movie-file",
      "identifier": "doc://com.apple.avfoundation/documentation/AVFoundation/adding-a-display-mask-rectangle-metadata-track-to-a-movie-file",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFoundation/adding-a-display-mask-rectangle-metadata-track-to-a-movie-file.json",
      "module": "AVFoundation",
      "modules": [
        "AVFoundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Adding a display mask rectangle metadata track to a movie file"
    },
    {
      "abstract": "Capture photos and record video using the front and rear iPhone and iPad cameras.",
      "categories": [
        "WWDC26",
        "AVFoundation"
      ],
      "doc_path": "/documentation/AVFoundation/avcam-building-a-camera-app",
      "doc_url": "https://developer.apple.com/documentation/AVFoundation/avcam-building-a-camera-app",
      "download": {
        "filename": "AVCamBuildingACameraApp.zip",
        "identifier": "b1de664bee51/AVCamBuildingACameraApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/b1de664bee51/AVCamBuildingACameraApp.zip"
      },
      "id": "avfoundation/avcam-building-a-camera-app",
      "identifier": "doc://com.apple.avfoundation/documentation/AVFoundation/avcam-building-a-camera-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFoundation/avcam-building-a-camera-app.json",
      "module": "AVFoundation",
      "modules": [
        "AVFoundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iPadOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "AVCam: Building a camera app"
    },
    {
      "abstract": "Identify machine readable codes or faces by using the camera.",
      "categories": [
        "AVFoundation"
      ],
      "doc_path": "/documentation/AVFoundation/avcambarcode-detecting-barcodes-and-faces",
      "doc_url": "https://developer.apple.com/documentation/AVFoundation/avcambarcode-detecting-barcodes-and-faces",
      "download": {
        "filename": "AVCamBarcodeDetectingBarcodesAndFaces.zip",
        "identifier": "306f40997d58/AVCamBarcodeDetectingBarcodesAndFaces.zip",
        "url": "https://docs-assets.developer.apple.com/published/306f40997d58/AVCamBarcodeDetectingBarcodesAndFaces.zip"
      },
      "id": "avfoundation/avcambarcode-detecting-barcodes-and-faces",
      "identifier": "doc://com.apple.avfoundation/documentation/AVFoundation/avcambarcode-detecting-barcodes-and-faces",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFoundation/avcambarcode-detecting-barcodes-and-faces.json",
      "module": "AVFoundation",
      "modules": [
        "AVFoundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "AVCamBarcode: detecting barcodes and faces"
    },
    {
      "abstract": "Render a capture stream with rose-colored filtering and depth effects.",
      "categories": [
        "AVFoundation"
      ],
      "doc_path": "/documentation/AVFoundation/avcamfilter-applying-filters-to-a-capture-stream",
      "doc_url": "https://developer.apple.com/documentation/AVFoundation/avcamfilter-applying-filters-to-a-capture-stream",
      "download": {
        "filename": "AVCamFilterApplyingFiltersToACaptureStream.zip",
        "identifier": "282ed3531606/AVCamFilterApplyingFiltersToACaptureStream.zip",
        "url": "https://docs-assets.developer.apple.com/published/282ed3531606/AVCamFilterApplyingFiltersToACaptureStream.zip"
      },
      "id": "avfoundation/avcamfilter-applying-filters-to-a-capture-stream",
      "identifier": "doc://com.apple.avfoundation/documentation/AVFoundation/avcamfilter-applying-filters-to-a-capture-stream",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFoundation/avcamfilter-applying-filters-to-a-capture-stream.json",
      "module": "AVFoundation",
      "modules": [
        "AVFoundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "AVCamFilter: Applying filters to a capture stream"
    },
    {
      "abstract": "Simultaneously record the output from the front and back cameras into a single movie file by using a multi-camera capture session.",
      "categories": [
        "AVFoundation"
      ],
      "doc_path": "/documentation/AVFoundation/avmulticampip-capturing-from-multiple-cameras",
      "doc_url": "https://developer.apple.com/documentation/AVFoundation/avmulticampip-capturing-from-multiple-cameras",
      "download": {
        "filename": "AVMultiCamPiPCapturingFromMultipleCameras.zip",
        "identifier": "cc1a2216fde0/AVMultiCamPiPCapturingFromMultipleCameras.zip",
        "url": "https://docs-assets.developer.apple.com/published/cc1a2216fde0/AVMultiCamPiPCapturingFromMultipleCameras.zip"
      },
      "id": "avfoundation/avmulticampip-capturing-from-multiple-cameras",
      "identifier": "doc://com.apple.avfoundation/documentation/AVFoundation/avmulticampip-capturing-from-multiple-cameras",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFoundation/avmulticampip-capturing-from-multiple-cameras.json",
      "module": "AVFoundation",
      "modules": [
        "AVFoundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "AVMultiCamPiP: Capturing from Multiple Cameras"
    },
    {
      "abstract": "Build a fast camera launch experience for your iOS and iPadOS apps.",
      "categories": [
        "WWDC26"
      ],
      "doc_path": "/documentation/AVFoundation/build-a-responsive-camera-app-that-launches-quickly",
      "doc_url": "https://developer.apple.com/documentation/AVFoundation/build-a-responsive-camera-app-that-launches-quickly",
      "download": {
        "filename": "BuildAResponsiveCameraAppThatLaunchesQuickly.zip",
        "identifier": "950948118967/BuildAResponsiveCameraAppThatLaunchesQuickly.zip",
        "url": "https://docs-assets.developer.apple.com/published/950948118967/BuildAResponsiveCameraAppThatLaunchesQuickly.zip"
      },
      "id": "avfoundation/build-a-responsive-camera-app-that-launches-quickly",
      "identifier": "doc://com.apple.avfoundation/documentation/AVFoundation/build-a-responsive-camera-app-that-launches-quickly",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFoundation/build-a-responsive-camera-app-that-launches-quickly.json",
      "module": "AVFoundation",
      "modules": [
        "AVFoundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iPadOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "macOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Build a responsive camera app that launches quickly"
    },
    {
      "abstract": "Capture video with an adjustable depth of field and focus points.",
      "categories": [
        "AVFoundation"
      ],
      "doc_path": "/documentation/AVFoundation/capturing-cinematic-video",
      "doc_url": "https://developer.apple.com/documentation/AVFoundation/capturing-cinematic-video",
      "download": {
        "filename": "CapturingCinematicVideo.zip",
        "identifier": "b444cc630428/CapturingCinematicVideo.zip",
        "url": "https://docs-assets.developer.apple.com/published/b444cc630428/CapturingCinematicVideo.zip"
      },
      "id": "avfoundation/capturing-cinematic-video",
      "identifier": "doc://com.apple.avfoundation/documentation/AVFoundation/capturing-cinematic-video",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFoundation/capturing-cinematic-video.json",
      "module": "AVFoundation",
      "modules": [
        "AVFoundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Capturing Cinematic video"
    },
    {
      "abstract": "Add the power of a photography studio and lighting rig to your app with the new Constant Color API.",
      "categories": [
        "AVFoundation"
      ],
      "doc_path": "/documentation/AVFoundation/capturing-consistent-color-images",
      "doc_url": "https://developer.apple.com/documentation/AVFoundation/capturing-consistent-color-images",
      "download": {
        "filename": "CapturingConsistentColorImages.zip",
        "identifier": "abe78d7af292/CapturingConsistentColorImages.zip",
        "url": "https://docs-assets.developer.apple.com/published/abe78d7af292/CapturingConsistentColorImages.zip"
      },
      "id": "avfoundation/capturing-consistent-color-images",
      "identifier": "doc://com.apple.avfoundation/documentation/AVFoundation/capturing-consistent-color-images",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFoundation/capturing-consistent-color-images.json",
      "module": "AVFoundation",
      "modules": [
        "AVFoundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Capturing consistent color images"
    },
    {
      "abstract": "Access the LiDAR camera on supporting devices to capture precise depth data.",
      "categories": [
        "AVFoundation"
      ],
      "doc_path": "/documentation/AVFoundation/capturing-depth-using-the-lidar-camera",
      "doc_url": "https://developer.apple.com/documentation/AVFoundation/capturing-depth-using-the-lidar-camera",
      "download": {
        "filename": "CapturingDepthUsingTheLiDARCamera.zip",
        "identifier": "fc8364208145/CapturingDepthUsingTheLiDARCamera.zip",
        "url": "https://docs-assets.developer.apple.com/published/fc8364208145/CapturingDepthUsingTheLiDARCamera.zip"
      },
      "id": "avfoundation/capturing-depth-using-the-lidar-camera",
      "identifier": "doc://com.apple.avfoundation/documentation/AVFoundation/capturing-depth-using-the-lidar-camera",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFoundation/capturing-depth-using-the-lidar-camera.json",
      "module": "AVFoundation",
      "modules": [
        "AVFoundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.6",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.6",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.6",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Capturing depth using the LiDAR camera"
    },
    {
      "abstract": "Enhance your app’s audio recording capabilities by supporting Spatial Audio capture.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/AVFoundation/capturing-spatial-audio-in-your-ios-app",
      "doc_url": "https://developer.apple.com/documentation/AVFoundation/capturing-spatial-audio-in-your-ios-app",
      "download": {
        "filename": "CapturingSpatialAudioInYourIOSApp.zip",
        "identifier": "884affb07a9b/CapturingSpatialAudioInYourIOSApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/884affb07a9b/CapturingSpatialAudioInYourIOSApp.zip"
      },
      "id": "avfoundation/capturing-spatial-audio-in-your-ios-app",
      "identifier": "doc://com.apple.avfoundation/documentation/AVFoundation/capturing-spatial-audio-in-your-ios-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFoundation/capturing-spatial-audio-in-your-ios-app.json",
      "module": "AVFoundation",
      "modules": [
        "AVFoundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Capturing Spatial Audio in your iOS app"
    },
    {
      "abstract": "Convert content with equirectangular or half-equirectangular projection to APMP.",
      "categories": [
        "AVFoundation"
      ],
      "doc_path": "/documentation/AVFoundation/converting-projected-video-to-apple-projected-media-profile",
      "doc_url": "https://developer.apple.com/documentation/AVFoundation/converting-projected-video-to-apple-projected-media-profile",
      "download": {
        "filename": "ConvertingProjectedVideoToAppleProjectedMediaProfile.zip",
        "identifier": "6a11c3cf4e6d/ConvertingProjectedVideoToAppleProjectedMediaProfile.zip",
        "url": "https://docs-assets.developer.apple.com/published/6a11c3cf4e6d/ConvertingProjectedVideoToAppleProjectedMediaProfile.zip"
      },
      "id": "avfoundation/converting-projected-video-to-apple-projected-media-profile",
      "identifier": "doc://com.apple.avfoundation/documentation/AVFoundation/converting-projected-video-to-apple-projected-media-profile",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFoundation/converting-projected-video-to-apple-projected-media-profile.json",
      "module": "AVFoundation",
      "modules": [
        "AVFoundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Converting projected video to Apple Projected Media Profile"
    },
    {
      "abstract": "Create video content for visionOS by converting an existing 3D HEVC file to a multiview HEVC format, optionally adding spatial metadata to create a spatial video.",
      "categories": [
        "AVFoundation"
      ],
      "doc_path": "/documentation/AVFoundation/converting-side-by-side-3d-video-to-multiview-hevc-and-spatial-video",
      "doc_url": "https://developer.apple.com/documentation/AVFoundation/converting-side-by-side-3d-video-to-multiview-hevc-and-spatial-video",
      "download": {
        "filename": "ConvertingSideBySide3DVideoToMultiviewHEVCAndSpatialVideo.zip",
        "identifier": "4a60632cecb7/ConvertingSideBySide3DVideoToMultiviewHEVCAndSpatialVideo.zip",
        "url": "https://docs-assets.developer.apple.com/published/4a60632cecb7/ConvertingSideBySide3DVideoToMultiviewHEVCAndSpatialVideo.zip"
      },
      "id": "avfoundation/converting-side-by-side-3d-video-to-multiview-hevc-and-spatial-video",
      "identifier": "doc://com.apple.avfoundation/documentation/AVFoundation/converting-side-by-side-3d-video-to-multiview-hevc-and-spatial-video",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFoundation/converting-side-by-side-3d-video-to-multiview-hevc-and-spatial-video.json",
      "module": "AVFoundation",
      "modules": [
        "AVFoundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Converting side-by-side 3D video to multiview HEVC and spatial video"
    },
    {
      "abstract": "Build advanced multiview playback experiences with the AVFoundation and AVRouting frameworks.",
      "categories": [
        "AVFoundation"
      ],
      "doc_path": "/documentation/AVFoundation/creating-a-seamless-multiview-playback-experience",
      "doc_url": "https://developer.apple.com/documentation/AVFoundation/creating-a-seamless-multiview-playback-experience",
      "download": {
        "filename": "CreatingASeamlessMultiviewPlaybackExperience.zip",
        "identifier": "4bd19326ff2f/CreatingASeamlessMultiviewPlaybackExperience.zip",
        "url": "https://docs-assets.developer.apple.com/published/4bd19326ff2f/CreatingASeamlessMultiviewPlaybackExperience.zip"
      },
      "id": "avfoundation/creating-a-seamless-multiview-playback-experience",
      "identifier": "doc://com.apple.avfoundation/documentation/AVFoundation/creating-a-seamless-multiview-playback-experience",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFoundation/creating-a-seamless-multiview-playback-experience.json",
      "module": "AVFoundation",
      "modules": [
        "AVFoundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating a seamless multiview playback experience"
    },
    {
      "abstract": "Resolve common problems when creating compositions, video compositions, and audio mixes.",
      "categories": [
        "AVFoundation"
      ],
      "doc_path": "/documentation/AVFoundation/debugging-avfoundation-audio-mixes-compositions-and-video-compositions",
      "doc_url": "https://developer.apple.com/documentation/AVFoundation/debugging-avfoundation-audio-mixes-compositions-and-video-compositions",
      "download": {
        "filename": "DebuggingAVFoundationAudioMixesCompositionsAndVideoCompositions.zip",
        "identifier": "46bb8c54cf2e/DebuggingAVFoundationAudioMixesCompositionsAndVideoCompositions.zip",
        "url": "https://docs-assets.developer.apple.com/published/46bb8c54cf2e/DebuggingAVFoundationAudioMixesCompositionsAndVideoCompositions.zip"
      },
      "id": "avfoundation/debugging-avfoundation-audio-mixes-compositions-and-video-compositions",
      "identifier": "doc://com.apple.avfoundation/documentation/AVFoundation/debugging-avfoundation-audio-mixes-compositions-and-video-compositions",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFoundation/debugging-avfoundation-audio-mixes-compositions-and-video-compositions.json",
      "module": "AVFoundation",
      "modules": [
        "AVFoundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.5",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.5",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.5",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.4",
          "name": "Xcode"
        }
      ],
      "title": "Debugging AVFoundation audio mixes, compositions, and video compositions"
    },
    {
      "abstract": "Support high-dynamic-range (HDR) video content in your app by using the HDR editing and playback capabilities of AVFoundation.",
      "categories": [
        "AVFoundation"
      ],
      "doc_path": "/documentation/AVFoundation/editing-and-playing-hdr-video",
      "doc_url": "https://developer.apple.com/documentation/AVFoundation/editing-and-playing-hdr-video",
      "download": {
        "filename": "EditingAndPlayingHDRVideo.zip",
        "identifier": "690ad4b1d285/EditingAndPlayingHDRVideo.zip",
        "url": "https://docs-assets.developer.apple.com/published/690ad4b1d285/EditingAndPlayingHDRVideo.zip"
      },
      "id": "avfoundation/editing-and-playing-hdr-video",
      "identifier": "doc://com.apple.avfoundation/documentation/AVFoundation/editing-and-playing-hdr-video",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFoundation/editing-and-playing-hdr-video.json",
      "module": "AVFoundation",
      "modules": [
        "AVFoundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Xcode"
        }
      ],
      "title": "Editing and playing HDR video"
    },
    {
      "abstract": "Apply your own background to a live capture feed streamed from the front-facing TrueDepth camera.",
      "categories": [
        "AVFoundation"
      ],
      "doc_path": "/documentation/AVFoundation/enhancing-live-video-by-leveraging-truedepth-camera-data",
      "doc_url": "https://developer.apple.com/documentation/AVFoundation/enhancing-live-video-by-leveraging-truedepth-camera-data",
      "download": {
        "filename": "EnhancingLiveVideoByLeveragingTrueDepthCameraData.zip",
        "identifier": "3cc4556ec9ec/EnhancingLiveVideoByLeveragingTrueDepthCameraData.zip",
        "url": "https://docs-assets.developer.apple.com/published/3cc4556ec9ec/EnhancingLiveVideoByLeveragingTrueDepthCameraData.zip"
      },
      "id": "avfoundation/enhancing-live-video-by-leveraging-truedepth-camera-data",
      "identifier": "doc://com.apple.avfoundation/documentation/AVFoundation/enhancing-live-video-by-leveraging-truedepth-camera-data",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFoundation/enhancing-live-video-by-leveraging-truedepth-camera-data.json",
      "module": "AVFoundation",
      "modules": [
        "AVFoundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Enhancing live video by leveraging TrueDepth camera data"
    },
    {
      "abstract": "Integrate AirPlay features and implement a dedicated external playback experience by preparing the routing system for long-form video playback.",
      "categories": [
        "AVFoundation"
      ],
      "doc_path": "/documentation/AVFoundation/integrating-airplay-for-long-form-video-apps",
      "doc_url": "https://developer.apple.com/documentation/AVFoundation/integrating-airplay-for-long-form-video-apps",
      "download": {
        "filename": "IntegratingAirPlayForLongFormVideoApps.zip",
        "identifier": "a687ba227f31/IntegratingAirPlayForLongFormVideoApps.zip",
        "url": "https://docs-assets.developer.apple.com/published/a687ba227f31/IntegratingAirPlayForLongFormVideoApps.zip"
      },
      "id": "avfoundation/integrating-airplay-for-long-form-video-apps",
      "identifier": "doc://com.apple.avfoundation/documentation/AVFoundation/integrating-airplay-for-long-form-video-apps",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFoundation/integrating-airplay-for-long-form-video-apps.json",
      "module": "AVFoundation",
      "modules": [
        "AVFoundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "Xcode"
        }
      ],
      "title": "Integrating AirPlay for long-form video apps"
    },
    {
      "abstract": "Create a custom video compositor to edit spatial video for playback and export.",
      "categories": [
        "AVFoundation"
      ],
      "doc_path": "/documentation/AVFoundation/processing-spatial-video-with-a-custom-video-compositor",
      "doc_url": "https://developer.apple.com/documentation/AVFoundation/processing-spatial-video-with-a-custom-video-compositor",
      "download": {
        "filename": "ProcessingSpatialVideoWithACustomVideoCompositor.zip",
        "identifier": "31c34ca0bfce/ProcessingSpatialVideoWithACustomVideoCompositor.zip",
        "url": "https://docs-assets.developer.apple.com/published/31c34ca0bfce/ProcessingSpatialVideoWithACustomVideoCompositor.zip"
      },
      "id": "avfoundation/processing-spatial-video-with-a-custom-video-compositor",
      "identifier": "doc://com.apple.avfoundation/documentation/AVFoundation/processing-spatial-video-with-a-custom-video-compositor",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFoundation/processing-spatial-video-with-a-custom-video-compositor.json",
      "module": "AVFoundation",
      "modules": [
        "AVFoundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Processing spatial video with a custom video compositor"
    },
    {
      "abstract": "Go beyond simple ad insertion with point and fill occupancy HLS interstitials.",
      "categories": [
        "AVFoundation"
      ],
      "doc_path": "/documentation/AVFoundation/providing-an-integrated-view-of-your-timeline-when-playing-hls-interstitials",
      "doc_url": "https://developer.apple.com/documentation/AVFoundation/providing-an-integrated-view-of-your-timeline-when-playing-hls-interstitials",
      "download": {
        "filename": "ProvidingAnIntegratedViewOfYourTimelineWhenPlayingHLSInterstitials.zip",
        "identifier": "f879c5e639a6/ProvidingAnIntegratedViewOfYourTimelineWhenPlayingHLSInterstitials.zip",
        "url": "https://docs-assets.developer.apple.com/published/f879c5e639a6/ProvidingAnIntegratedViewOfYourTimelineWhenPlayingHLSInterstitials.zip"
      },
      "id": "avfoundation/providing-an-integrated-view-of-your-timeline-when-playing-hls-interstitials",
      "identifier": "doc://com.apple.avfoundation/documentation/AVFoundation/providing-an-integrated-view-of-your-timeline-when-playing-hls-interstitials",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFoundation/providing-an-integrated-view-of-your-timeline-when-playing-hls-interstitials.json",
      "module": "AVFoundation",
      "modules": [
        "AVFoundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Providing an integrated view of your timeline when playing HLS interstitials"
    },
    {
      "abstract": "Render single images for the left eye and right eye from a multiview High Efficiency Video Coding format file by reading individual video frames.",
      "categories": [
        "AVFoundation"
      ],
      "doc_path": "/documentation/AVFoundation/reading-multiview-3d-video-files",
      "doc_url": "https://developer.apple.com/documentation/AVFoundation/reading-multiview-3d-video-files",
      "download": {
        "filename": "ReadingMultiview3DVideoFiles.zip",
        "identifier": "03b0a926288f/ReadingMultiview3DVideoFiles.zip",
        "url": "https://docs-assets.developer.apple.com/published/03b0a926288f/ReadingMultiview3DVideoFiles.zip"
      },
      "id": "avfoundation/reading-multiview-3d-video-files",
      "identifier": "doc://com.apple.avfoundation/documentation/AVFoundation/reading-multiview-3d-video-files",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFoundation/reading-multiview-3d-video-files.json",
      "module": "AVFoundation",
      "modules": [
        "AVFoundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.2",
          "name": "Xcode"
        }
      ],
      "title": "Reading multiview 3D video files"
    },
    {
      "abstract": "Visualize depth data in 2D and 3D from the TrueDepth camera.",
      "categories": [
        "AVFoundation"
      ],
      "doc_path": "/documentation/AVFoundation/streaming-depth-data-from-the-truedepth-camera",
      "doc_url": "https://developer.apple.com/documentation/AVFoundation/streaming-depth-data-from-the-truedepth-camera",
      "download": {
        "filename": "StreamingDepthDataFromTheTrueDepthCamera.zip",
        "identifier": "1bc13e22cdde/StreamingDepthDataFromTheTrueDepthCamera.zip",
        "url": "https://docs-assets.developer.apple.com/published/1bc13e22cdde/StreamingDepthDataFromTheTrueDepthCamera.zip"
      },
      "id": "avfoundation/streaming-depth-data-from-the-truedepth-camera",
      "identifier": "doc://com.apple.avfoundation/documentation/AVFoundation/streaming-depth-data-from-the-truedepth-camera",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFoundation/streaming-depth-data-from-the-truedepth-camera.json",
      "module": "AVFoundation",
      "modules": [
        "AVFoundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Streaming depth data from the TrueDepth camera"
    },
    {
      "abstract": "Enable Center Stage for photos and videos on the iPhone front camera.",
      "categories": [
        "WWDC26"
      ],
      "doc_path": "/documentation/AVFoundation/supporting-center-stage-front-camera-in-your-ios-app",
      "doc_url": "https://developer.apple.com/documentation/AVFoundation/supporting-center-stage-front-camera-in-your-ios-app",
      "download": {
        "filename": "SupportingCenterStageFrontCameraInYourIOSApp.zip",
        "identifier": "8670064af87f/SupportingCenterStageFrontCameraInYourIOSApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/8670064af87f/SupportingCenterStageFrontCameraInYourIOSApp.zip"
      },
      "id": "avfoundation/supporting-center-stage-front-camera-in-your-ios-app",
      "identifier": "doc://com.apple.avfoundation/documentation/AVFoundation/supporting-center-stage-front-camera-in-your-ios-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFoundation/supporting-center-stage-front-camera-in-your-ios-app.json",
      "module": "AVFoundation",
      "modules": [
        "AVFoundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iPadOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Supporting Center Stage front camera in your iOS app"
    },
    {
      "abstract": "Enable high-quality photo and video capture by using an iPhone camera as an external capture device.",
      "categories": [
        "AVFoundation"
      ],
      "doc_path": "/documentation/AVFoundation/supporting-continuity-camera-in-your-macos-app",
      "doc_url": "https://developer.apple.com/documentation/AVFoundation/supporting-continuity-camera-in-your-macos-app",
      "download": {
        "filename": "SupportingContinuityCameraInYourMacOSApp.zip",
        "identifier": "5e4b3abd4b85/SupportingContinuityCameraInYourMacOSApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/5e4b3abd4b85/SupportingContinuityCameraInYourMacOSApp.zip"
      },
      "id": "avfoundation/supporting-continuity-camera-in-your-macos-app",
      "identifier": "doc://com.apple.avfoundation/documentation/AVFoundation/supporting-continuity-camera-in-your-macos-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFoundation/supporting-continuity-camera-in-your-macos-app.json",
      "module": "AVFoundation",
      "modules": [
        "AVFoundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Supporting Continuity Camera in your macOS app"
    },
    {
      "abstract": "Create synchronized media experiences that enable users to watch and listen across devices.",
      "categories": [
        "AVFoundation"
      ],
      "doc_path": "/documentation/AVFoundation/supporting-coordinated-media-playback",
      "doc_url": "https://developer.apple.com/documentation/AVFoundation/supporting-coordinated-media-playback",
      "download": {
        "filename": "SupportingCoordinatedMediaPlayback.zip",
        "identifier": "367117687a0a/SupportingCoordinatedMediaPlayback.zip",
        "url": "https://docs-assets.developer.apple.com/published/367117687a0a/SupportingCoordinatedMediaPlayback.zip"
      },
      "id": "avfoundation/supporting-coordinated-media-playback",
      "identifier": "doc://com.apple.avfoundation/documentation/AVFoundation/supporting-coordinated-media-playback",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFoundation/supporting-coordinated-media-playback.json",
      "module": "AVFoundation",
      "modules": [
        "AVFoundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:Group Activities",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Supporting coordinated media playback"
    },
    {
      "abstract": "Set up your app to support remote commands and events in a variety of scenarios by using the relevant approach.",
      "categories": [
        "AVFoundation"
      ],
      "doc_path": "/documentation/AVFoundation/supporting-remote-interactions-in-tvos",
      "doc_url": "https://developer.apple.com/documentation/AVFoundation/supporting-remote-interactions-in-tvos",
      "download": {
        "filename": "SupportingRemoteInteractionsInTvOS.zip",
        "identifier": "684fd81a8996/SupportingRemoteInteractionsInTvOS.zip",
        "url": "https://docs-assets.developer.apple.com/published/684fd81a8996/SupportingRemoteInteractionsInTvOS.zip"
      },
      "id": "avfoundation/supporting-remote-interactions-in-tvos",
      "identifier": "doc://com.apple.avfoundation/documentation/AVFoundation/supporting-remote-interactions-in-tvos",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFoundation/supporting-remote-interactions-in-tvos.json",
      "module": "AVFoundation",
      "modules": [
        "AVFoundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Xcode"
        }
      ],
      "title": "Supporting remote interactions in tvOS"
    },
    {
      "abstract": "Play HTTP Live Streams and persist streams on disk for offline playback using AVFoundation.",
      "categories": [
        "AVFoundation"
      ],
      "doc_path": "/documentation/AVFoundation/using-avfoundation-to-play-and-persist-http-live-streams",
      "doc_url": "https://developer.apple.com/documentation/AVFoundation/using-avfoundation-to-play-and-persist-http-live-streams",
      "download": {
        "filename": "UsingAVFoundationToPlayAndPersistHTTPLiveStreams.zip",
        "identifier": "24fb505506c6/UsingAVFoundationToPlayAndPersistHTTPLiveStreams.zip",
        "url": "https://docs-assets.developer.apple.com/published/24fb505506c6/UsingAVFoundationToPlayAndPersistHTTPLiveStreams.zip"
      },
      "id": "avfoundation/using-avfoundation-to-play-and-persist-http-live-streams",
      "identifier": "doc://com.apple.avfoundation/documentation/AVFoundation/using-avfoundation-to-play-and-persist-http-live-streams",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFoundation/using-avfoundation-to-play-and-persist-http-live-streams.json",
      "module": "AVFoundation",
      "modules": [
        "AVFoundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Using AVFoundation to play and persist HTTP live streams"
    },
    {
      "abstract": "Play, write, and export HEVC video with an alpha channel to add overlay effects to your video processing.",
      "categories": [
        "AVFoundation"
      ],
      "doc_path": "/documentation/AVFoundation/using-hevc-video-with-alpha",
      "doc_url": "https://developer.apple.com/documentation/AVFoundation/using-hevc-video-with-alpha",
      "download": {
        "filename": "UsingHEVCVideoWithAlpha.zip",
        "identifier": "b44b3ea82aec/UsingHEVCVideoWithAlpha.zip",
        "url": "https://docs-assets.developer.apple.com/published/b44b3ea82aec/UsingHEVCVideoWithAlpha.zip"
      },
      "id": "avfoundation/using-hevc-video-with-alpha",
      "identifier": "doc://com.apple.avfoundation/documentation/AVFoundation/using-hevc-video-with-alpha",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFoundation/using-hevc-video-with-alpha.json",
      "module": "AVFoundation",
      "modules": [
        "AVFoundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "10.15",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "Xcode"
        }
      ],
      "title": "Using HEVC video with alpha"
    },
    {
      "abstract": "Create an HTTP Live Streaming presentation by turning a movie file into a sequence of fragmented MPEG-4 files.",
      "categories": [
        "AVFoundation"
      ],
      "doc_path": "/documentation/AVFoundation/writing-fragmented-mpeg-4-files-for-http-live-streaming",
      "doc_url": "https://developer.apple.com/documentation/AVFoundation/writing-fragmented-mpeg-4-files-for-http-live-streaming",
      "download": {
        "filename": "WritingFragmentedMPEG4FilesForHTTPLiveStreaming.zip",
        "identifier": "454a64e24941/WritingFragmentedMPEG4FilesForHTTPLiveStreaming.zip",
        "url": "https://docs-assets.developer.apple.com/published/454a64e24941/WritingFragmentedMPEG4FilesForHTTPLiveStreaming.zip"
      },
      "id": "avfoundation/writing-fragmented-mpeg-4-files-for-http-live-streaming",
      "identifier": "doc://com.apple.avfoundation/documentation/AVFoundation/writing-fragmented-mpeg-4-files-for-http-live-streaming",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVFoundation/writing-fragmented-mpeg-4-files-for-http-live-streaming.json",
      "module": "AVFoundation",
      "modules": [
        "AVFoundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Xcode"
        }
      ],
      "title": "Writing fragmented MPEG-4 files for HTTP Live Streaming"
    },
    {
      "abstract": "Add advanced multitasking capabilities to your video apps by using Picture in Picture playback in tvOS.",
      "categories": [
        "TV"
      ],
      "doc_path": "/documentation/AVKit/adopting-picture-in-picture-playback-in-tvos",
      "doc_url": "https://developer.apple.com/documentation/AVKit/adopting-picture-in-picture-playback-in-tvos",
      "download": {
        "filename": "AdoptingPictureInPicturePlaybackInTvOS.zip",
        "identifier": "5ddfebe4f792/AdoptingPictureInPicturePlaybackInTvOS.zip",
        "url": "https://docs-assets.developer.apple.com/published/5ddfebe4f792/AdoptingPictureInPicturePlaybackInTvOS.zip"
      },
      "id": "avkit/adopting-picture-in-picture-playback-in-tvos",
      "identifier": "doc://com.apple.avkit/documentation/AVKit/adopting-picture-in-picture-playback-in-tvos",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVKit/adopting-picture-in-picture-playback-in-tvos.json",
      "module": "AVKit",
      "modules": [
        "AVKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "12.5",
          "name": "Xcode"
        }
      ],
      "title": "Adopting Picture in Picture Playback in tvOS"
    },
    {
      "abstract": "Build an interface that plays multiple videos simultaneously and handles transitions to different experience types gracefully.",
      "categories": [
        "WWDC26",
        "TV"
      ],
      "doc_path": "/documentation/AVKit/creating-a-multiview-video-playback-experience-in-visionos",
      "doc_url": "https://developer.apple.com/documentation/AVKit/creating-a-multiview-video-playback-experience-in-visionos",
      "download": {
        "filename": "CreatingAMultiviewVideoPlaybackExperienceInVisionOS.zip",
        "identifier": "d63cdb997493/CreatingAMultiviewVideoPlaybackExperienceInVisionOS.zip",
        "url": "https://docs-assets.developer.apple.com/published/d63cdb997493/CreatingAMultiviewVideoPlaybackExperienceInVisionOS.zip"
      },
      "id": "avkit/creating-a-multiview-video-playback-experience-in-visionos",
      "identifier": "doc://com.apple.avkit/documentation/AVKit/creating-a-multiview-video-playback-experience-in-visionos",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVKit/creating-a-multiview-video-playback-experience-in-visionos.json",
      "module": "AVKit",
      "modules": [
        "AVKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVKit",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "visionOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating a multiview video playback experience in visionOS"
    },
    {
      "abstract": "Adopt the system playback interface to provide an immersive video watching experience.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/AVKit/playing-immersive-media-with-avkit",
      "doc_url": "https://developer.apple.com/documentation/AVKit/playing-immersive-media-with-avkit",
      "download": {
        "filename": "PlayingImmersiveMediaWithAVKit.zip",
        "identifier": "f69a3f13c26a/PlayingImmersiveMediaWithAVKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/f69a3f13c26a/PlayingImmersiveMediaWithAVKit.zip"
      },
      "id": "avkit/playing-immersive-media-with-avkit",
      "identifier": "doc://com.apple.avkit/documentation/AVKit/playing-immersive-media-with-avkit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVKit/playing-immersive-media-with-avkit.json",
      "module": "AVKit",
      "modules": [
        "AVKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Playing immersive media with AVKit"
    },
    {
      "abstract": "Play media full screen, embedded inline, or in a floating Picture in Picture (PiP) window using a player view controller.",
      "categories": [
        "TV"
      ],
      "doc_path": "/documentation/AVKit/playing-video-content-in-a-standard-user-interface",
      "doc_url": "https://developer.apple.com/documentation/AVKit/playing-video-content-in-a-standard-user-interface",
      "download": {
        "filename": "PlayingVideoContentInAStandardUserInterface.zip",
        "identifier": "43f2e96e5b3e/PlayingVideoContentInAStandardUserInterface.zip",
        "url": "https://docs-assets.developer.apple.com/published/43f2e96e5b3e/PlayingVideoContentInAStandardUserInterface.zip"
      },
      "id": "avkit/playing-video-content-in-a-standard-user-interface",
      "identifier": "doc://com.apple.avkit/documentation/AVKit/playing-video-content-in-a-standard-user-interface",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVKit/playing-video-content-in-a-standard-user-interface.json",
      "module": "AVKit",
      "modules": [
        "AVKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.4",
          "name": "Xcode"
        }
      ],
      "title": "Playing video content in a standard user interface"
    },
    {
      "abstract": "Capture high-quality photos, video, and audio in your Apple TV app by connecting an iPhone or iPad as a continuity device.",
      "categories": [
        "TV"
      ],
      "doc_path": "/documentation/AVKit/supporting-continuity-camera-in-your-tvos-app",
      "doc_url": "https://developer.apple.com/documentation/AVKit/supporting-continuity-camera-in-your-tvos-app",
      "download": {
        "filename": "SupportingContinuityCameraInYourTvOSApp.zip",
        "identifier": "68f244622734/SupportingContinuityCameraInYourTvOSApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/68f244622734/SupportingContinuityCameraInYourTvOSApp.zip"
      },
      "id": "avkit/supporting-continuity-camera-in-your-tvos-app",
      "identifier": "doc://com.apple.avkit/documentation/AVKit/supporting-continuity-camera-in-your-tvos-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVKit/supporting-continuity-camera-in-your-tvos-app.json",
      "module": "AVKit",
      "modules": [
        "AVKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:AVKit",
        "technology-index:Sample Code Library",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "15.3",
          "name": "Xcode"
        }
      ],
      "title": "Supporting Continuity Camera in your tvOS app"
    },
    {
      "abstract": "Add interactive overlays, parental controls, and livestream channel flipping using a player view controller.",
      "categories": [
        "TV"
      ],
      "doc_path": "/documentation/AVKit/working-with-overlays-and-parental-controls-in-tvos",
      "doc_url": "https://developer.apple.com/documentation/AVKit/working-with-overlays-and-parental-controls-in-tvos",
      "download": {
        "filename": "WorkingWithOverlaysAndParentalControlsInTvOS.zip",
        "identifier": "1dd35d609d9b/WorkingWithOverlaysAndParentalControlsInTvOS.zip",
        "url": "https://docs-assets.developer.apple.com/published/1dd35d609d9b/WorkingWithOverlaysAndParentalControlsInTvOS.zip"
      },
      "id": "avkit/working-with-overlays-and-parental-controls-in-tvos",
      "identifier": "doc://com.apple.avkit/documentation/AVKit/working-with-overlays-and-parental-controls-in-tvos",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/AVKit/working-with-overlays-and-parental-controls-in-tvos.json",
      "module": "AVKit",
      "modules": [
        "AVKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "15.3",
          "name": "Xcode"
        }
      ],
      "title": "Working with Overlays and Parental Controls in tvOS"
    },
    {
      "abstract": "Fetch the assets your app requires before its first launch using an app extension and the Background Assets framework.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/BackgroundAssets/downloading-essential-assets-in-the-background",
      "doc_url": "https://developer.apple.com/documentation/BackgroundAssets/downloading-essential-assets-in-the-background",
      "download": {
        "filename": "DownloadingEssentialAssetsInTheBackground.zip",
        "identifier": "a922b525ed1f/DownloadingEssentialAssetsInTheBackground.zip",
        "url": "https://docs-assets.developer.apple.com/published/a922b525ed1f/DownloadingEssentialAssetsInTheBackground.zip"
      },
      "id": "backgroundassets/downloading-essential-assets-in-the-background",
      "identifier": "doc://com.apple.backgroundassets/documentation/BackgroundAssets/downloading-essential-assets-in-the-background",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/BackgroundAssets/downloading-essential-assets-in-the-background.json",
      "module": "Background Assets",
      "modules": [
        "Background Assets"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Background Assets",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.4",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.4",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.4",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.3",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "18.4",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "2.4",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Downloading essential assets in the background"
    },
    {
      "abstract": "Use scheduled background tasks for refreshing your app content and for performing maintenance.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/BackgroundTasks/refreshing-and-maintaining-your-app-using-background-tasks",
      "doc_url": "https://developer.apple.com/documentation/BackgroundTasks/refreshing-and-maintaining-your-app-using-background-tasks",
      "download": {
        "filename": "RefreshingAndMaintainingYourAppUsingBackgroundTasks.zip",
        "identifier": "059fe58a5ca5/RefreshingAndMaintainingYourAppUsingBackgroundTasks.zip",
        "url": "https://docs-assets.developer.apple.com/published/059fe58a5ca5/RefreshingAndMaintainingYourAppUsingBackgroundTasks.zip"
      },
      "id": "backgroundtasks/refreshing-and-maintaining-your-app-using-background-tasks",
      "identifier": "doc://com.apple.backgroundtasks/documentation/BackgroundTasks/refreshing-and-maintaining-your-app-using-background-tasks",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/BackgroundTasks/refreshing-and-maintaining-your-app-using-background-tasks.json",
      "module": "Background Tasks",
      "modules": [
        "Background Tasks"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Background Tasks",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Xcode"
        }
      ],
      "title": "Refreshing and Maintaining Your App Using Background Tasks"
    },
    {
      "abstract": "Create a browser app and associated extensions.",
      "categories": [
        "Web"
      ],
      "doc_path": "/documentation/BrowserEngineKit/developing-a-browser-app-that-uses-an-alternative-browser-engine",
      "doc_url": "https://developer.apple.com/documentation/BrowserEngineKit/developing-a-browser-app-that-uses-an-alternative-browser-engine",
      "download": {
        "filename": "DevelopingABrowserAppThatUsesAnAlternativeBrowserEngine.zip",
        "identifier": "d8154d7fe23a/DevelopingABrowserAppThatUsesAnAlternativeBrowserEngine.zip",
        "url": "https://docs-assets.developer.apple.com/published/d8154d7fe23a/DevelopingABrowserAppThatUsesAnAlternativeBrowserEngine.zip"
      },
      "id": "browserenginekit/developing-a-browser-app-that-uses-an-alternative-browser-engine",
      "identifier": "doc://com.apple.BrowserEngineKit/documentation/BrowserEngineKit/developing-a-browser-app-that-uses-an-alternative-browser-engine",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/BrowserEngineKit/developing-a-browser-app-that-uses-an-alternative-browser-engine.json",
      "module": "BrowserEngineKit",
      "modules": [
        "BrowserEngineKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:BrowserEngineKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.4",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.4",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.3",
          "name": "Xcode"
        }
      ],
      "title": "Developing a browser app that uses an alternative browser engine"
    },
    {
      "abstract": "Use the CallKit framework to integrate native VoIP calling.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/CallKit/voip-calling-with-callkit",
      "doc_url": "https://developer.apple.com/documentation/CallKit/voip-calling-with-callkit",
      "download": {
        "filename": "MakingAndReceivingVoIPCallsWithCallKit.zip",
        "identifier": "8e99045a90e2/MakingAndReceivingVoIPCallsWithCallKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/8e99045a90e2/MakingAndReceivingVoIPCallsWithCallKit.zip"
      },
      "id": "callkit/voip-calling-with-callkit",
      "identifier": "doc://com.apple.callkit/documentation/CallKit/voip-calling-with-callkit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CallKit/voip-calling-with-callkit.json",
      "module": "CallKit",
      "modules": [
        "CallKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:CallKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "9.0",
          "name": "watchOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "VoIP calling with CallKit"
    },
    {
      "abstract": "Configure your music app to work with CarPlay by displaying a custom UI.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/CarPlay/integrating-carplay-with-your-music-app",
      "doc_url": "https://developer.apple.com/documentation/CarPlay/integrating-carplay-with-your-music-app",
      "download": {
        "filename": "IntegratingCarPlayWithYourMusicApp.zip",
        "identifier": "f5c58cac38e6/IntegratingCarPlayWithYourMusicApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/f5c58cac38e6/IntegratingCarPlayWithYourMusicApp.zip"
      },
      "id": "carplay/integrating-carplay-with-your-music-app",
      "identifier": "doc://com.apple.carplay/documentation/CarPlay/integrating-carplay-with-your-music-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CarPlay/integrating-carplay-with-your-music-app.json",
      "module": "CarPlay",
      "modules": [
        "CarPlay"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:CarPlay",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Integrating CarPlay with Your Music App"
    },
    {
      "abstract": "Configure your navigation app to work with CarPlay by displaying your custom map and directions.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/CarPlay/integrating-carplay-with-your-navigation-app",
      "doc_url": "https://developer.apple.com/documentation/CarPlay/integrating-carplay-with-your-navigation-app",
      "download": {
        "filename": "IntegratingCarPlayWithYourNavigationApp.zip",
        "identifier": "49e398fe2cd4/IntegratingCarPlayWithYourNavigationApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/49e398fe2cd4/IntegratingCarPlayWithYourNavigationApp.zip"
      },
      "id": "carplay/integrating-carplay-with-your-navigation-app",
      "identifier": "doc://com.apple.carplay/documentation/CarPlay/integrating-carplay-with-your-navigation-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CarPlay/integrating-carplay-with-your-navigation-app.json",
      "module": "CarPlay",
      "modules": [
        "CarPlay"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:CarPlay",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.4",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.4",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.4",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Integrating CarPlay with Your Navigation App"
    },
    {
      "abstract": "Configure your food-ordering app to work with CarPlay.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/CarPlay/integrating-carplay-with-your-quick-ordering-app",
      "doc_url": "https://developer.apple.com/documentation/CarPlay/integrating-carplay-with-your-quick-ordering-app",
      "download": {
        "filename": "IntegratingCarPlayWithYourQuickOrderingApp.zip",
        "identifier": "51654e33d2be/IntegratingCarPlayWithYourQuickOrderingApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/51654e33d2be/IntegratingCarPlayWithYourQuickOrderingApp.zip"
      },
      "id": "carplay/integrating-carplay-with-your-quick-ordering-app",
      "identifier": "doc://com.apple.carplay/documentation/CarPlay/integrating-carplay-with-your-quick-ordering-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CarPlay/integrating-carplay-with-your-quick-ordering-app.json",
      "module": "CarPlay",
      "modules": [
        "CarPlay"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:CarPlay",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.2",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.2",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.2",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.4",
          "name": "Xcode"
        }
      ],
      "title": "Integrating CarPlay with your quick-ordering app"
    },
    {
      "abstract": "Visualize an entire data collection efficiently by instantiating a single vectorized plot in Swift Charts.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/Charts/creating-a-data-visualization-dashboard-with-swift-charts",
      "doc_url": "https://developer.apple.com/documentation/Charts/creating-a-data-visualization-dashboard-with-swift-charts",
      "download": {
        "filename": "CreatingADataVisualizationDashboardWithSwiftCharts.zip",
        "identifier": "9dc7606e4293/CreatingADataVisualizationDashboardWithSwiftCharts.zip",
        "url": "https://docs-assets.developer.apple.com/published/9dc7606e4293/CreatingADataVisualizationDashboardWithSwiftCharts.zip"
      },
      "id": "charts/creating-a-data-visualization-dashboard-with-swift-charts",
      "identifier": "doc://com.apple.Charts/documentation/Charts/creating-a-data-visualization-dashboard-with-swift-charts",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Charts/creating-a-data-visualization-dashboard-with-swift-charts.json",
      "module": "Swift Charts",
      "modules": [
        "Swift Charts"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Swift Charts",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating a data visualization dashboard with Swift Charts"
    },
    {
      "abstract": "Build complex and interactive charts using Swift Charts.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/Charts/visualizing-your-app-s-data",
      "doc_url": "https://developer.apple.com/documentation/Charts/visualizing-your-app-s-data",
      "download": {
        "filename": "VisualizingYourAppsData.zip",
        "identifier": "a6477695b10d/VisualizingYourAppsData.zip",
        "url": "https://docs-assets.developer.apple.com/published/a6477695b10d/VisualizingYourAppsData.zip"
      },
      "id": "charts/visualizing-your-app-s-data",
      "identifier": "doc://com.apple.Charts/documentation/Charts/visualizing-your-app-s-data",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Charts/visualizing-your-app-s-data.json",
      "module": "Swift Charts",
      "modules": [
        "Swift Charts"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Swift Charts"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Visualizing your app’s data"
    },
    {
      "abstract": "Add Spatial Audio editing capabilities with the Audio Mix API in the Cinematic framework.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/Cinematic/editing-spatial-audio-with-an-audio-mix",
      "doc_url": "https://developer.apple.com/documentation/Cinematic/editing-spatial-audio-with-an-audio-mix",
      "download": {
        "filename": "EditingSpatialAudioWithAnAudioMix.zip",
        "identifier": "202c6393ee70/EditingSpatialAudioWithAnAudioMix.zip",
        "url": "https://docs-assets.developer.apple.com/published/202c6393ee70/EditingSpatialAudioWithAnAudioMix.zip"
      },
      "id": "cinematic/editing-spatial-audio-with-an-audio-mix",
      "identifier": "doc://com.apple.cinematic/documentation/Cinematic/editing-spatial-audio-with-an-audio-mix",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Cinematic/editing-spatial-audio-with-an-audio-mix.json",
      "module": "Cinematic",
      "modules": [
        "Cinematic"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Cinematic",
        "technology-index:Sample Code Library",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Editing Spatial Audio with an audio mix"
    },
    {
      "abstract": "Play and edit Cinematic mode video with an adjustable depth of field and focus points.",
      "categories": [
        "Photos and video"
      ],
      "doc_path": "/documentation/Cinematic/playing-and-editing-cinematic-mode-video",
      "doc_url": "https://developer.apple.com/documentation/Cinematic/playing-and-editing-cinematic-mode-video",
      "download": {
        "filename": "PlayingAndEditingCinematicModeVideo.zip",
        "identifier": "9aea6c9ac3f7/PlayingAndEditingCinematicModeVideo.zip",
        "url": "https://docs-assets.developer.apple.com/published/9aea6c9ac3f7/PlayingAndEditingCinematicModeVideo.zip"
      },
      "id": "cinematic/playing-and-editing-cinematic-mode-video",
      "identifier": "doc://com.apple.cinematic/documentation/Cinematic/playing-and-editing-cinematic-mode-video",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Cinematic/playing-and-editing-cinematic-mode-video.json",
      "module": "Cinematic",
      "modules": [
        "Cinematic"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Cinematic",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Playing and editing Cinematic mode video"
    },
    {
      "abstract": "Walk through the process of setting up assignments and recording student progress.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/ClassKit/incorporating-classkit-into-an-educational-app",
      "doc_url": "https://developer.apple.com/documentation/ClassKit/incorporating-classkit-into-an-educational-app",
      "download": {
        "filename": "IncorporatingClassKitIntoAnEducationalApp.zip",
        "identifier": "e9fc53147345/IncorporatingClassKitIntoAnEducationalApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/e9fc53147345/IncorporatingClassKitIntoAnEducationalApp.zip"
      },
      "id": "classkit/incorporating-classkit-into-an-educational-app",
      "identifier": "doc://com.apple.classkit/documentation/ClassKit/incorporating-classkit-into-an-educational-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ClassKit/incorporating-classkit-into-an-educational-app.json",
      "module": "ClassKit",
      "modules": [
        "ClassKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ClassKit",
        "technology-index:ClassKit UI",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "11.3",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "11.3",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "11.3",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "10.2",
          "name": "Xcode"
        }
      ],
      "title": "Incorporating ClassKit into an Educational App"
    },
    {
      "abstract": "Create complications that batch-load a timeline of future entries and run periodic background sessions to update the timeline.",
      "categories": [
        "Watch"
      ],
      "doc_path": "/documentation/ClockKit/creating-and-updating-a-complication-s-timeline",
      "doc_url": "https://developer.apple.com/documentation/ClockKit/creating-and-updating-a-complication-s-timeline",
      "download": {
        "filename": "CreatingAndUpdatingAComplicationsTimeline.zip",
        "identifier": "15770ba891b4/CreatingAndUpdatingAComplicationsTimeline.zip",
        "url": "https://docs-assets.developer.apple.com/published/15770ba891b4/CreatingAndUpdatingAComplicationsTimeline.zip"
      },
      "id": "clockkit/creating-and-updating-a-complication-s-timeline",
      "identifier": "doc://com.apple.clockkit/documentation/ClockKit/creating-and-updating-a-complication-s-timeline",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ClockKit/creating-and-updating-a-complication-s-timeline.json",
      "module": "ClockKit",
      "modules": [
        "ClockKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ClockKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "8.0",
          "name": "watchOS"
        },
        {
          "beta": false,
          "introduced_at": "14.2",
          "name": "Xcode"
        }
      ],
      "title": "Creating and updating a complication’s timeline"
    },
    {
      "abstract": "Implement complications in a watch app to display essential information on a watch face.",
      "categories": [
        "Watch"
      ],
      "doc_path": "/documentation/ClockKit/displaying-essential-information-on-a-watch-face",
      "doc_url": "https://developer.apple.com/documentation/ClockKit/displaying-essential-information-on-a-watch-face",
      "download": {
        "filename": "DisplayingEssentialInformationOnAWatchFace.zip",
        "identifier": "11090b519daa/DisplayingEssentialInformationOnAWatchFace.zip",
        "url": "https://docs-assets.developer.apple.com/published/11090b519daa/DisplayingEssentialInformationOnAWatchFace.zip"
      },
      "id": "clockkit/displaying-essential-information-on-a-watch-face",
      "identifier": "doc://com.apple.clockkit/documentation/ClockKit/displaying-essential-information-on-a-watch-face",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ClockKit/displaying-essential-information-on-a-watch-face.json",
      "module": "ClockKit",
      "modules": [
        "ClockKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ClockKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "6.1",
          "name": "watchOS"
        },
        {
          "beta": false,
          "introduced_at": "14.2",
          "name": "Xcode"
        }
      ],
      "title": "Displaying essential information on a watch face"
    },
    {
      "abstract": "Present multiple complications for a single complication family using descriptors.",
      "categories": [
        "Watch"
      ],
      "doc_path": "/documentation/ClockKit/providing-multiple-complications",
      "doc_url": "https://developer.apple.com/documentation/ClockKit/providing-multiple-complications",
      "download": {
        "filename": "ProvidingMultipleComplications.zip",
        "identifier": "08ce5d5a7923/ProvidingMultipleComplications.zip",
        "url": "https://docs-assets.developer.apple.com/published/08ce5d5a7923/ProvidingMultipleComplications.zip"
      },
      "id": "clockkit/providing-multiple-complications",
      "identifier": "doc://com.apple.clockkit/documentation/ClockKit/providing-multiple-complications",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ClockKit/providing-multiple-complications.json",
      "module": "ClockKit",
      "modules": [
        "ClockKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ClockKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "7.1",
          "name": "watchOS"
        },
        {
          "beta": false,
          "introduced_at": "12.5",
          "name": "Xcode"
        }
      ],
      "title": "Providing Multiple Complications"
    },
    {
      "abstract": "Create and share private CloudKit data with other users by implementing the sharing UI.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/CloudKit/sharing-cloudkit-data-with-other-icloud-users",
      "doc_url": "https://developer.apple.com/documentation/CloudKit/sharing-cloudkit-data-with-other-icloud-users",
      "download": {
        "filename": "SharingCloudKitDataWithOtherICloudUsers.zip",
        "identifier": "2c475bde7d81/SharingCloudKitDataWithOtherICloudUsers.zip",
        "url": "https://docs-assets.developer.apple.com/published/2c475bde7d81/SharingCloudKitDataWithOtherICloudUsers.zip"
      },
      "id": "cloudkit/sharing-cloudkit-data-with-other-icloud-users",
      "identifier": "doc://com.apple.cloudkit/documentation/CloudKit/sharing-cloudkit-data-with-other-icloud-users",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CloudKit/sharing-cloudkit-data-with-other-icloud-users.json",
      "module": "CloudKit",
      "modules": [
        "CloudKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:CloudKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Sharing CloudKit Data with Other iCloud Users"
    },
    {
      "abstract": "Present a mixed immersion style space to draw content in a person’s surroundings, and choose how upper limbs appear with respect to rendered content.",
      "categories": [
        "Games"
      ],
      "doc_path": "/documentation/CompositorServices/interacting-with-virtual-content-blended-with-passthrough",
      "doc_url": "https://developer.apple.com/documentation/CompositorServices/interacting-with-virtual-content-blended-with-passthrough",
      "download": {
        "filename": "InteractingWithVirtualContentBlendedWithPassthrough.zip",
        "identifier": "0096f3314c24/InteractingWithVirtualContentBlendedWithPassthrough.zip",
        "url": "https://docs-assets.developer.apple.com/published/0096f3314c24/InteractingWithVirtualContentBlendedWithPassthrough.zip"
      },
      "id": "compositorservices/interacting-with-virtual-content-blended-with-passthrough",
      "identifier": "doc://com.apple.compositorservices/documentation/CompositorServices/interacting-with-virtual-content-blended-with-passthrough",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CompositorServices/interacting-with-virtual-content-blended-with-passthrough.json",
      "module": "Compositor Services",
      "modules": [
        "Compositor Services"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Compositor Services",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Interacting with virtual content blended with passthrough"
    },
    {
      "abstract": "Change the appearance of a rendered onscreen element when a player gazes at it.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/CompositorServices/rendering_hover_effects_in_metal_immersive_apps",
      "doc_url": "https://developer.apple.com/documentation/CompositorServices/rendering_hover_effects_in_metal_immersive_apps",
      "download": {
        "filename": "RenderingHoverEffectsInMetalImmersiveApps.zip",
        "identifier": "0636f9d812a4/RenderingHoverEffectsInMetalImmersiveApps.zip",
        "url": "https://docs-assets.developer.apple.com/published/0636f9d812a4/RenderingHoverEffectsInMetalImmersiveApps.zip"
      },
      "id": "compositorservices/rendering_hover_effects_in_metal_immersive_apps",
      "identifier": "doc://com.apple.compositorservices/documentation/CompositorServices/rendering_hover_effects_in_metal_immersive_apps",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CompositorServices/rendering_hover_effects_in_metal_immersive_apps.json",
      "module": "Compositor Services",
      "modules": [
        "Compositor Services"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Compositor Services",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Rendering hover effects in Metal immersive apps"
    },
    {
      "abstract": "Allow people to grant your app access to contact data by adding the Contact access button and Contact access picker to your app.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/Contacts/accessing-a-person-s-contact-data-using-contacts-and-contactsui",
      "doc_url": "https://developer.apple.com/documentation/Contacts/accessing-a-person-s-contact-data-using-contacts-and-contactsui",
      "download": {
        "filename": "AccessingAPersonsContactDataUsingContactsAndContactsUI.zip",
        "identifier": "afb4a67e7563/AccessingAPersonsContactDataUsingContactsAndContactsUI.zip",
        "url": "https://docs-assets.developer.apple.com/published/afb4a67e7563/AccessingAPersonsContactDataUsingContactsAndContactsUI.zip"
      },
      "id": "contacts/accessing-a-person-s-contact-data-using-contacts-and-contactsui",
      "identifier": "doc://com.apple.contacts/documentation/Contacts/accessing-a-person-s-contact-data-using-contacts-and-contactsui",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Contacts/accessing-a-person-s-contact-data-using-contacts-and-contactsui.json",
      "module": "Contacts",
      "modules": [
        "Contacts"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Contacts",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Accessing a person’s contact data using Contacts and ContactsUI"
    },
    {
      "abstract": "Create a plug-in and driver extension to support an audio device in macOS.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/CoreAudio/building-an-audio-server-plug-in-and-driver-extension",
      "doc_url": "https://developer.apple.com/documentation/CoreAudio/building-an-audio-server-plug-in-and-driver-extension",
      "download": {
        "filename": "BuildingAnAudioServerPlugInAndDriverExtension.zip",
        "identifier": "9b27b11a4824/BuildingAnAudioServerPlugInAndDriverExtension.zip",
        "url": "https://docs-assets.developer.apple.com/published/9b27b11a4824/BuildingAnAudioServerPlugInAndDriverExtension.zip"
      },
      "id": "coreaudio/building-an-audio-server-plug-in-and-driver-extension",
      "identifier": "doc://com.apple.coreaudio/documentation/CoreAudio/building-an-audio-server-plug-in-and-driver-extension",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreAudio/building-an-audio-server-plug-in-and-driver-extension.json",
      "module": "Core Audio",
      "modules": [
        "Core Audio"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core Audio",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "20.0",
          "name": "DriverKit"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "12.2",
          "name": "Xcode"
        }
      ],
      "title": "Building an Audio Server Plug-in and Driver Extension"
    },
    {
      "abstract": "Use a Core Audio tap to capture outgoing audio from a process or group of processes.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/CoreAudio/capturing-system-audio-with-core-audio-taps",
      "doc_url": "https://developer.apple.com/documentation/CoreAudio/capturing-system-audio-with-core-audio-taps",
      "download": {
        "filename": "CapturingSystemAudioWithCoreAudioTaps.zip",
        "identifier": "02fe64305fe7/CapturingSystemAudioWithCoreAudioTaps.zip",
        "url": "https://docs-assets.developer.apple.com/published/02fe64305fe7/CapturingSystemAudioWithCoreAudioTaps.zip"
      },
      "id": "coreaudio/capturing-system-audio-with-core-audio-taps",
      "identifier": "doc://com.apple.coreaudio/documentation/CoreAudio/capturing-system-audio-with-core-audio-taps",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreAudio/capturing-system-audio-with-core-audio-taps.json",
      "module": "Core Audio",
      "modules": [
        "Core Audio"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core Audio",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Capturing system audio with Core Audio taps"
    },
    {
      "abstract": "Build a virtual audio device by creating a custom driver plug-in.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/CoreAudio/creating-an-audio-server-driver-plug-in",
      "doc_url": "https://developer.apple.com/documentation/CoreAudio/creating-an-audio-server-driver-plug-in",
      "download": {
        "filename": "CreatingAnAudioServerDriverPlugIn.zip",
        "identifier": "430ad6501f6f/CreatingAnAudioServerDriverPlugIn.zip",
        "url": "https://docs-assets.developer.apple.com/published/430ad6501f6f/CreatingAnAudioServerDriverPlugIn.zip"
      },
      "id": "coreaudio/creating-an-audio-server-driver-plug-in",
      "identifier": "doc://com.apple.coreaudio/documentation/CoreAudio/creating-an-audio-server-driver-plug-in",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreAudio/creating-an-audio-server-driver-plug-in.json",
      "module": "Core Audio",
      "modules": [
        "Core Audio"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core Audio",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating an Audio Server Driver Plug-in"
    },
    {
      "abstract": "Measure the distance between two Bluetooth Low Energy devices in real time with Channel Sounding.",
      "categories": [
        "WWDC26"
      ],
      "doc_path": "/documentation/CoreBluetooth/measuring-distance-between-devices-using-channel-sounding",
      "doc_url": "https://developer.apple.com/documentation/CoreBluetooth/measuring-distance-between-devices-using-channel-sounding",
      "download": {
        "filename": "MeasuringDistanceBetweenDevicesUsingChannelSounding.zip",
        "identifier": "f710ac24903f/MeasuringDistanceBetweenDevicesUsingChannelSounding.zip",
        "url": "https://docs-assets.developer.apple.com/published/f710ac24903f/MeasuringDistanceBetweenDevicesUsingChannelSounding.zip"
      },
      "id": "corebluetooth/measuring-distance-between-devices-using-channel-sounding",
      "identifier": "doc://com.apple.corebluetooth/documentation/CoreBluetooth/measuring-distance-between-devices-using-channel-sounding",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreBluetooth/measuring-distance-between-devices-using-channel-sounding.json",
      "module": "Core Bluetooth",
      "modules": [
        "Core Bluetooth"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core Bluetooth",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iPadOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Measuring distance between devices using Channel Sounding"
    },
    {
      "abstract": "Create a Bluetooth low energy central and peripheral device, and allow them to discover each other and exchange data.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/CoreBluetooth/transferring-data-between-bluetooth-low-energy-devices",
      "doc_url": "https://developer.apple.com/documentation/CoreBluetooth/transferring-data-between-bluetooth-low-energy-devices",
      "download": {
        "filename": "TransferringDataBetweenBluetoothLowEnergyDevices.zip",
        "identifier": "68b84653b34e/TransferringDataBetweenBluetoothLowEnergyDevices.zip",
        "url": "https://docs-assets.developer.apple.com/published/68b84653b34e/TransferringDataBetweenBluetoothLowEnergyDevices.zip"
      },
      "id": "corebluetooth/transferring-data-between-bluetooth-low-energy-devices",
      "identifier": "doc://com.apple.corebluetooth/documentation/CoreBluetooth/transferring-data-between-bluetooth-low-energy-devices",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreBluetooth/transferring-data-between-bluetooth-low-energy-devices.json",
      "module": "Core Bluetooth",
      "modules": [
        "Core Bluetooth"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core Bluetooth",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.1",
          "name": "Xcode"
        }
      ],
      "title": "Transferring Data Between Bluetooth Low Energy Devices"
    },
    {
      "abstract": "Discover and communicate with a Bluetooth Classic device by using the Core Bluetooth APIs.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/CoreBluetooth/using-core-bluetooth-classic",
      "doc_url": "https://developer.apple.com/documentation/CoreBluetooth/using-core-bluetooth-classic",
      "download": {
        "filename": "UsingCoreBluetoothClassic.zip",
        "identifier": "887ceff61b84/UsingCoreBluetoothClassic.zip",
        "url": "https://docs-assets.developer.apple.com/published/887ceff61b84/UsingCoreBluetoothClassic.zip"
      },
      "id": "corebluetooth/using-core-bluetooth-classic",
      "identifier": "doc://com.apple.corebluetooth/documentation/CoreBluetooth/using-core-bluetooth-classic",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreBluetooth/using-core-bluetooth-classic.json",
      "module": "Core Bluetooth",
      "modules": [
        "Core Bluetooth"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core Bluetooth",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "Xcode"
        }
      ],
      "title": "Using Core Bluetooth Classic"
    },
    {
      "abstract": "Persist data in your app intuitively with the Swift native persistence framework.",
      "categories": [
        "WWDC26",
        "App services"
      ],
      "doc_path": "/documentation/CoreData/adopting-swiftdata-for-a-core-data-app",
      "doc_url": "https://developer.apple.com/documentation/CoreData/adopting-swiftdata-for-a-core-data-app",
      "download": {
        "filename": "AdoptingSwiftDataForACoreDataApp.zip",
        "identifier": "a9a06dad143a/AdoptingSwiftDataForACoreDataApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/a9a06dad143a/AdoptingSwiftDataForACoreDataApp.zip"
      },
      "id": "coredata/adopting-swiftdata-for-a-core-data-app",
      "identifier": "doc://com.apple.coredata/documentation/CoreData/adopting-swiftdata-for-a-core-data-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreData/adopting-swiftdata-for-a-core-data-app.json",
      "module": "Core Data",
      "modules": [
        "Core Data"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core Data",
        "technology-index:Sample Code Library",
        "technology-index:SwiftData"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iPadOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "macOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Adopting SwiftData for a Core Data app"
    },
    {
      "abstract": "Create, store, and present records for a variety of data types.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/CoreData/handling-different-data-types-in-core-data",
      "doc_url": "https://developer.apple.com/documentation/CoreData/handling-different-data-types-in-core-data",
      "download": {
        "filename": "HandlingDifferentDataTypesInCoreData.zip",
        "identifier": "73ed48112035/HandlingDifferentDataTypesInCoreData.zip",
        "url": "https://docs-assets.developer.apple.com/published/73ed48112035/HandlingDifferentDataTypesInCoreData.zip"
      },
      "id": "coredata/handling-different-data-types-in-core-data",
      "identifier": "doc://com.apple.coredata/documentation/CoreData/handling-different-data-types-in-core-data",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreData/handling-different-data-types-in-core-data.json",
      "module": "Core Data",
      "modules": [
        "Core Data"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core Data",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.2",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.2",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.4",
          "name": "Xcode"
        }
      ],
      "title": "Handling Different Data Types in Core Data"
    },
    {
      "abstract": "Organize data in two different stores and implement a link between them.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/CoreData/linking-data-between-two-core-data-stores",
      "doc_url": "https://developer.apple.com/documentation/CoreData/linking-data-between-two-core-data-stores",
      "download": {
        "filename": "LinkingDataBetweenTwoCoreDataStores.zip",
        "identifier": "c9a68b653b7d/LinkingDataBetweenTwoCoreDataStores.zip",
        "url": "https://docs-assets.developer.apple.com/published/c9a68b653b7d/LinkingDataBetweenTwoCoreDataStores.zip"
      },
      "id": "coredata/linking-data-between-two-core-data-stores",
      "identifier": "doc://com.apple.coredata/documentation/CoreData/linking-data-between-two-core-data-stores",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreData/linking-data-between-two-core-data-stores.json",
      "module": "Core Data",
      "modules": [
        "Core Data"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core Data",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.2",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.2",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.2",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.4",
          "name": "Xcode"
        }
      ],
      "title": "Linking Data Between Two Core Data Stores"
    },
    {
      "abstract": "Use Core Data and CloudKit to synchronize data between devices of an iCloud user and share data between different iCloud users.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/CoreData/sharing-core-data-objects-between-icloud-users",
      "doc_url": "https://developer.apple.com/documentation/CoreData/sharing-core-data-objects-between-icloud-users",
      "download": {
        "filename": "SharingCoreDataObjectsBetweenICloudUsers.zip",
        "identifier": "d3e48d795efa/SharingCoreDataObjectsBetweenICloudUsers.zip",
        "url": "https://docs-assets.developer.apple.com/published/d3e48d795efa/SharingCoreDataObjectsBetweenICloudUsers.zip"
      },
      "id": "coredata/sharing-core-data-objects-between-icloud-users",
      "identifier": "doc://com.apple.coredata/documentation/CoreData/sharing-core-data-objects-between-icloud-users",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreData/sharing-core-data-objects-between-icloud-users.json",
      "module": "Core Data",
      "modules": [
        "Core Data"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:CloudKit",
        "technology-index:Core Data",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.4",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.4",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.4",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.4",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "9.4",
          "name": "watchOS"
        },
        {
          "beta": false,
          "introduced_at": "15.3",
          "name": "Xcode"
        }
      ],
      "title": "Sharing Core Data objects between iCloud users"
    },
    {
      "abstract": "Index app data so users can find it by using Spotlight search.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/CoreData/showcase-app-data-in-spotlight",
      "doc_url": "https://developer.apple.com/documentation/CoreData/showcase-app-data-in-spotlight",
      "download": {
        "filename": "ShowcaseAppDataInSpotlight.zip",
        "identifier": "f08acd44c6ed/ShowcaseAppDataInSpotlight.zip",
        "url": "https://docs-assets.developer.apple.com/published/f08acd44c6ed/ShowcaseAppDataInSpotlight.zip"
      },
      "id": "coredata/showcase-app-data-in-spotlight",
      "identifier": "doc://com.apple.coredata/documentation/CoreData/showcase-app-data-in-spotlight",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreData/showcase-app-data-in-spotlight.json",
      "module": "Core Data",
      "modules": [
        "Core Data"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core Data",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Showcase App Data in Spotlight"
    },
    {
      "abstract": "Share data between a user’s devices and other iCloud users.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/CoreData/synchronizing-a-local-store-to-the-cloud",
      "doc_url": "https://developer.apple.com/documentation/CoreData/synchronizing-a-local-store-to-the-cloud",
      "download": {
        "filename": "SynchronizingALocalStoreToTheCloud.zip",
        "identifier": "dbcc19631790/SynchronizingALocalStoreToTheCloud.zip",
        "url": "https://docs-assets.developer.apple.com/published/dbcc19631790/SynchronizingALocalStoreToTheCloud.zip"
      },
      "id": "coredata/synchronizing-a-local-store-to-the-cloud",
      "identifier": "doc://com.apple.coredata/documentation/CoreData/synchronizing-a-local-store-to-the-cloud",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreData/synchronizing-a-local-store-to-the-cloud.json",
      "module": "Core Data",
      "modules": [
        "Core Data"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core Data",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.1",
          "name": "Xcode"
        }
      ],
      "title": "Synchronizing a local store to the cloud"
    },
    {
      "abstract": "Enhance your app’s experience by incorporating haptic and sound feedback into key interactive moments.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/CoreHaptics/delivering-rich-app-experiences-with-haptics",
      "doc_url": "https://developer.apple.com/documentation/CoreHaptics/delivering-rich-app-experiences-with-haptics",
      "download": {
        "filename": "DeliveringRichAppExperiencesWithHaptics.zip",
        "identifier": "334e89162949/DeliveringRichAppExperiencesWithHaptics.zip",
        "url": "https://docs-assets.developer.apple.com/published/334e89162949/DeliveringRichAppExperiencesWithHaptics.zip"
      },
      "id": "corehaptics/delivering-rich-app-experiences-with-haptics",
      "identifier": "doc://com.apple.corehaptics/documentation/CoreHaptics/delivering-rich-app-experiences-with-haptics",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreHaptics/delivering-rich-app-experiences-with-haptics.json",
      "module": "Core Haptics",
      "modules": [
        "Core Haptics"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core Haptics",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.5",
          "name": "Xcode"
        }
      ],
      "title": "Delivering Rich App Experiences with Haptics"
    },
    {
      "abstract": "Sample predesigned Apple Haptic Audio Pattern files, and learn how to play your own.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/CoreHaptics/playing-a-custom-haptic-pattern-from-a-file",
      "doc_url": "https://developer.apple.com/documentation/CoreHaptics/playing-a-custom-haptic-pattern-from-a-file",
      "download": {
        "filename": "PlayingACustomHapticPatternFromAFile.zip",
        "identifier": "21755acf0d86/PlayingACustomHapticPatternFromAFile.zip",
        "url": "https://docs-assets.developer.apple.com/published/21755acf0d86/PlayingACustomHapticPatternFromAFile.zip"
      },
      "id": "corehaptics/playing-a-custom-haptic-pattern-from-a-file",
      "identifier": "doc://com.apple.corehaptics/documentation/CoreHaptics/playing-a-custom-haptic-pattern-from-a-file",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreHaptics/playing-a-custom-haptic-pattern-from-a-file.json",
      "module": "Core Haptics",
      "modules": [
        "Core Haptics"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core Haptics",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.3",
          "name": "Xcode"
        }
      ],
      "title": "Playing a Custom Haptic Pattern from a File"
    },
    {
      "abstract": "Play a custom haptic pattern whose strength depends on an object’s collision speed.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/CoreHaptics/playing-collision-based-haptic-patterns",
      "doc_url": "https://developer.apple.com/documentation/CoreHaptics/playing-collision-based-haptic-patterns",
      "download": {
        "filename": "PlayingCollisionBasedHapticPatterns.zip",
        "identifier": "fd8a00b4273b/PlayingCollisionBasedHapticPatterns.zip",
        "url": "https://docs-assets.developer.apple.com/published/fd8a00b4273b/PlayingCollisionBasedHapticPatterns.zip"
      },
      "id": "corehaptics/playing-collision-based-haptic-patterns",
      "identifier": "doc://com.apple.corehaptics/documentation/CoreHaptics/playing-collision-based-haptic-patterns",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreHaptics/playing-collision-based-haptic-patterns.json",
      "module": "Core Haptics",
      "modules": [
        "Core Haptics"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core Haptics",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Xcode"
        }
      ],
      "title": "Playing Collision-Based Haptic Patterns"
    },
    {
      "abstract": "Add haptic feedback to supported game controllers by using Core Haptics.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/CoreHaptics/playing-haptics-on-game-controllers",
      "doc_url": "https://developer.apple.com/documentation/CoreHaptics/playing-haptics-on-game-controllers",
      "download": {
        "filename": "PlayingHapticsOnGameControllers.zip",
        "identifier": "2fec4dffc7f0/PlayingHapticsOnGameControllers.zip",
        "url": "https://docs-assets.developer.apple.com/published/2fec4dffc7f0/PlayingHapticsOnGameControllers.zip"
      },
      "id": "corehaptics/playing-haptics-on-game-controllers",
      "identifier": "doc://com.apple.corehaptics/documentation/CoreHaptics/playing-haptics-on-game-controllers",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreHaptics/playing-haptics-on-game-controllers.json",
      "module": "Core Haptics",
      "modules": [
        "Core Haptics"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core Haptics",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Xcode"
        }
      ],
      "title": "Playing Haptics on Game Controllers"
    },
    {
      "abstract": "Generate continuous and transient haptic patterns in response to user touch.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/CoreHaptics/updating-continuous-and-transient-haptic-parameters-in-real-time",
      "doc_url": "https://developer.apple.com/documentation/CoreHaptics/updating-continuous-and-transient-haptic-parameters-in-real-time",
      "download": {
        "filename": "UpdatingContinuousAndTransientHapticParametersInRealTime.zip",
        "identifier": "b45ba5211f73/UpdatingContinuousAndTransientHapticParametersInRealTime.zip",
        "url": "https://docs-assets.developer.apple.com/published/b45ba5211f73/UpdatingContinuousAndTransientHapticParametersInRealTime.zip"
      },
      "id": "corehaptics/updating-continuous-and-transient-haptic-parameters-in-real-time",
      "identifier": "doc://com.apple.corehaptics/documentation/CoreHaptics/updating-continuous-and-transient-haptic-parameters-in-real-time",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreHaptics/updating-continuous-and-transient-haptic-parameters-in-real-time.json",
      "module": "Core Haptics",
      "modules": [
        "Core Haptics"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core Haptics",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Xcode"
        }
      ],
      "title": "Updating Continuous and Transient Haptic Parameters in Real Time"
    },
    {
      "abstract": "Animate a filtered image to a Metal view in a SwiftUI app using a Core Image Render Destination.",
      "categories": [
        "Graphics"
      ],
      "doc_path": "/documentation/CoreImage/generating-an-animation-with-a-core-image-render-destination",
      "doc_url": "https://developer.apple.com/documentation/CoreImage/generating-an-animation-with-a-core-image-render-destination",
      "download": {
        "filename": "GeneratingAnAnimationWithACoreImageRenderDestination.zip",
        "identifier": "726628ea1ca0/GeneratingAnAnimationWithACoreImageRenderDestination.zip",
        "url": "https://docs-assets.developer.apple.com/published/726628ea1ca0/GeneratingAnAnimationWithACoreImageRenderDestination.zip"
      },
      "id": "coreimage/generating-an-animation-with-a-core-image-render-destination",
      "identifier": "doc://com.apple.coreimage/documentation/CoreImage/generating-an-animation-with-a-core-image-render-destination",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreImage/generating-an-animation-with-a-core-image-render-destination.json",
      "module": "Core Image",
      "modules": [
        "Core Image"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core Image",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.5",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.5",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.5",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "Generating an animation with a Core Image Render Destination"
    },
    {
      "abstract": "Simplify location delivery using asynchronous events in Swift.",
      "categories": [
        "Location and MapKit"
      ],
      "doc_path": "/documentation/CoreLocation/adopting-live-updates-in-core-location",
      "doc_url": "https://developer.apple.com/documentation/CoreLocation/adopting-live-updates-in-core-location",
      "download": {
        "filename": "AdoptingLiveUpdatesInCoreLocation.zip",
        "identifier": "eb2b3dccb542/AdoptingLiveUpdatesInCoreLocation.zip",
        "url": "https://docs-assets.developer.apple.com/published/eb2b3dccb542/AdoptingLiveUpdatesInCoreLocation.zip"
      },
      "id": "corelocation/adopting-live-updates-in-core-location",
      "identifier": "doc://com.apple.corelocation/documentation/CoreLocation/adopting-live-updates-in-core-location",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreLocation/adopting-live-updates-in-core-location.json",
      "module": "Core Location",
      "modules": [
        "Core Location"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core Location",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.3",
          "name": "Xcode"
        }
      ],
      "title": "Adopting live updates in Core Location"
    },
    {
      "abstract": "Define boundaries and act on user location updates.",
      "categories": [
        "Location and MapKit"
      ],
      "doc_path": "/documentation/CoreLocation/monitoring-location-changes-with-core-location",
      "doc_url": "https://developer.apple.com/documentation/CoreLocation/monitoring-location-changes-with-core-location",
      "download": {
        "filename": "MonitoringLocationChangesWithCoreLocation.zip",
        "identifier": "60d004152b62/MonitoringLocationChangesWithCoreLocation.zip",
        "url": "https://docs-assets.developer.apple.com/published/60d004152b62/MonitoringLocationChangesWithCoreLocation.zip"
      },
      "id": "corelocation/monitoring-location-changes-with-core-location",
      "identifier": "doc://com.apple.corelocation/documentation/CoreLocation/monitoring-location-changes-with-core-location",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreLocation/monitoring-location-changes-with-core-location.json",
      "module": "Core Location",
      "modules": [
        "Core Location"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core Location",
        "technology-index:Sample Code Library",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.3",
          "name": "Xcode"
        }
      ],
      "title": "Monitoring location changes with Core Location"
    },
    {
      "abstract": "Configure a device to act as a beacon and to detect surrounding beacons.",
      "categories": [
        "Location and MapKit"
      ],
      "doc_path": "/documentation/CoreLocation/ranging-for-beacons",
      "doc_url": "https://developer.apple.com/documentation/CoreLocation/ranging-for-beacons",
      "download": {
        "filename": "RangingForBeacons.zip",
        "identifier": "d7d2b5ab19c1/RangingForBeacons.zip",
        "url": "https://docs-assets.developer.apple.com/published/d7d2b5ab19c1/RangingForBeacons.zip"
      },
      "id": "corelocation/ranging-for-beacons",
      "identifier": "doc://com.apple.corelocation/documentation/CoreLocation/ranging-for-beacons",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreLocation/ranging-for-beacons.json",
      "module": "Core Location",
      "modules": [
        "Core Location"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core Location",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.2",
          "name": "Xcode"
        }
      ],
      "title": "Ranging for Beacons"
    },
    {
      "abstract": "Ask for location access using a customizable location button.",
      "categories": [
        "Location and MapKit"
      ],
      "doc_path": "/documentation/CoreLocationUI/sharing-your-location-to-find-a-park",
      "doc_url": "https://developer.apple.com/documentation/CoreLocationUI/sharing-your-location-to-find-a-park",
      "download": {
        "filename": "SharingYourLocationToFindAPark.zip",
        "identifier": "fc8ca9a16ea9/SharingYourLocationToFindAPark.zip",
        "url": "https://docs-assets.developer.apple.com/published/fc8ca9a16ea9/SharingYourLocationToFindAPark.zip"
      },
      "id": "corelocationui/sharing-your-location-to-find-a-park",
      "identifier": "doc://com.apple.CoreLocationUI/documentation/CoreLocationUI/sharing-your-location-to-find-a-park",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreLocationUI/sharing-your-location-to-find-a-park.json",
      "module": "CoreLocationUI",
      "modules": [
        "CoreLocationUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core Location UI",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Sharing Your Location to Find a Park"
    },
    {
      "abstract": "Add precision and improve musical control for your MIDI apps.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/CoreMIDI/incorporating-midi-2-into-your-apps",
      "doc_url": "https://developer.apple.com/documentation/CoreMIDI/incorporating-midi-2-into-your-apps",
      "download": {
        "filename": "IncorporatingMIDI2IntoYourApps.zip",
        "identifier": "cc0dcf5f1743/IncorporatingMIDI2IntoYourApps.zip",
        "url": "https://docs-assets.developer.apple.com/published/cc0dcf5f1743/IncorporatingMIDI2IntoYourApps.zip"
      },
      "id": "coremidi/incorporating-midi-2-into-your-apps",
      "identifier": "doc://com.apple.coremidi/documentation/CoreMIDI/incorporating-midi-2-into-your-apps",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreMIDI/incorporating-midi-2-into-your-apps.json",
      "module": "Core MIDI",
      "modules": [
        "Core MIDI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core MIDI",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.2",
          "name": "Xcode"
        }
      ],
      "title": "Incorporating MIDI 2 into your apps"
    },
    {
      "abstract": "Crop and scale photos using the Vision framework and classify them with a Core ML model.",
      "categories": [
        "Machine learning"
      ],
      "doc_path": "/documentation/CoreML/classifying-images-with-vision-and-core-ml",
      "doc_url": "https://developer.apple.com/documentation/CoreML/classifying-images-with-vision-and-core-ml",
      "download": {
        "filename": "ClassifyingImagesWithVisionAndCoreML.zip",
        "identifier": "bd38aaabfb4e/ClassifyingImagesWithVisionAndCoreML.zip",
        "url": "https://docs-assets.developer.apple.com/published/bd38aaabfb4e/ClassifyingImagesWithVisionAndCoreML.zip"
      },
      "id": "coreml/classifying-images-with-vision-and-core-ml",
      "identifier": "doc://com.apple.coreml/documentation/CoreML/classifying-images-with-vision-and-core-ml",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreML/classifying-images-with-vision-and-core-ml.json",
      "module": "Core ML",
      "modules": [
        "Core ML"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core ML",
        "technology-index:Sample Code Library",
        "technology-index:Vision"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.4",
          "name": "Xcode"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPad"
        }
      ],
      "title": "Classifying Images with Vision and Core ML"
    },
    {
      "abstract": "Locate people and the stance of their bodies by analyzing an image with a PoseNet model.",
      "categories": [
        "Machine learning"
      ],
      "doc_path": "/documentation/CoreML/detecting-human-body-poses-in-an-image",
      "doc_url": "https://developer.apple.com/documentation/CoreML/detecting-human-body-poses-in-an-image",
      "download": {
        "filename": "DetectingHumanBodyPosesInAnImage.zip",
        "identifier": "3e1c865293a0/DetectingHumanBodyPosesInAnImage.zip",
        "url": "https://docs-assets.developer.apple.com/published/3e1c865293a0/DetectingHumanBodyPosesInAnImage.zip"
      },
      "id": "coreml/detecting-human-body-poses-in-an-image",
      "identifier": "doc://com.apple.coreml/documentation/CoreML/detecting-human-body-poses-in-an-image",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreML/detecting-human-body-poses-in-an-image.json",
      "module": "Core ML",
      "modules": [
        "Core ML"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core ML",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.2",
          "name": "Xcode"
        }
      ],
      "title": "Detecting human body poses in an image"
    },
    {
      "abstract": "Locate relevant passages in a document by asking the Bidirectional Encoder Representations from Transformers (BERT) model a question.",
      "categories": [
        "Machine learning"
      ],
      "doc_path": "/documentation/CoreML/finding-answers-to-questions-in-a-text-document",
      "doc_url": "https://developer.apple.com/documentation/CoreML/finding-answers-to-questions-in-a-text-document",
      "download": {
        "filename": "FindingAnswersToQuestionsInATextDocument.zip",
        "identifier": "027f89fdf072/FindingAnswersToQuestionsInATextDocument.zip",
        "url": "https://docs-assets.developer.apple.com/published/027f89fdf072/FindingAnswersToQuestionsInATextDocument.zip"
      },
      "id": "coreml/finding-answers-to-questions-in-a-text-document",
      "identifier": "doc://com.apple.coreml/documentation/CoreML/finding-answers-to-questions-in-a-text-document",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreML/finding-answers-to-questions-in-a-text-document.json",
      "module": "Core ML",
      "modules": [
        "Core ML"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core ML",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.2",
          "name": "Xcode"
        }
      ],
      "title": "Finding answers to questions in a text document"
    },
    {
      "abstract": "Add a simple model to an app, pass input data to the model, and process the model’s predictions.",
      "categories": [
        "Machine learning"
      ],
      "doc_path": "/documentation/CoreML/integrating-a-core-ml-model-into-your-app",
      "doc_url": "https://developer.apple.com/documentation/CoreML/integrating-a-core-ml-model-into-your-app",
      "download": {
        "filename": "IntegratingACoreMLModelIntoYourApp.zip",
        "identifier": "daeacfd7a9fd/IntegratingACoreMLModelIntoYourApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/daeacfd7a9fd/IntegratingACoreMLModelIntoYourApp.zip"
      },
      "id": "coreml/integrating-a-core-ml-model-into-your-app",
      "identifier": "doc://com.apple.coreml/documentation/CoreML/integrating-a-core-ml-model-into-your-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreML/integrating-a-core-ml-model-into-your-app.json",
      "module": "Core ML",
      "modules": [
        "Core ML"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core ML",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.2",
          "name": "Xcode"
        }
      ],
      "title": "Integrating a Core ML Model into Your App"
    },
    {
      "abstract": "Modify an updatable Core ML model by running an update task with labeled data.",
      "categories": [
        "Machine learning"
      ],
      "doc_path": "/documentation/CoreML/personalizing-a-model-with-on-device-updates",
      "doc_url": "https://developer.apple.com/documentation/CoreML/personalizing-a-model-with-on-device-updates",
      "download": {
        "filename": "PersonalizingAModelWithOnDeviceUpdates.zip",
        "identifier": "9a8ff1fea55d/PersonalizingAModelWithOnDeviceUpdates.zip",
        "url": "https://docs-assets.developer.apple.com/published/9a8ff1fea55d/PersonalizingAModelWithOnDeviceUpdates.zip"
      },
      "id": "coreml/personalizing-a-model-with-on-device-updates",
      "identifier": "doc://com.apple.coreml/documentation/CoreML/personalizing-a-model-with-on-device-updates",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreML/personalizing-a-model-with-on-device-updates.json",
      "module": "Core ML",
      "modules": [
        "Core ML"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core ML",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.2",
          "name": "Xcode"
        }
      ],
      "title": "Personalizing a Model with On-Device Updates"
    },
    {
      "abstract": "Detect dice position and values shown in a camera frame, and determine the end of a roll by leveraging a dice detection model.",
      "categories": [
        "Machine learning"
      ],
      "doc_path": "/documentation/CoreML/understanding-a-dice-roll-with-vision-and-object-detection",
      "doc_url": "https://developer.apple.com/documentation/CoreML/understanding-a-dice-roll-with-vision-and-object-detection",
      "download": {
        "filename": "UnderstandingADiceRollWithVisionAndObjectDetection.zip",
        "identifier": "637284ef8498/UnderstandingADiceRollWithVisionAndObjectDetection.zip",
        "url": "https://docs-assets.developer.apple.com/published/637284ef8498/UnderstandingADiceRollWithVisionAndObjectDetection.zip"
      },
      "id": "coreml/understanding-a-dice-roll-with-vision-and-object-detection",
      "identifier": "doc://com.apple.coreml/documentation/CoreML/understanding-a-dice-roll-with-vision-and-object-detection",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreML/understanding-a-dice-roll-with-vision-and-object-detection.json",
      "module": "Core ML",
      "modules": [
        "Core ML"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core ML",
        "technology-index:Sample Code Library",
        "technology-index:Vision"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Xcode"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPad"
        }
      ],
      "title": "Understanding a Dice Roll with Vision and Object Detection"
    },
    {
      "abstract": "Identify multiple objects in an image by using the DEtection TRansformer image-segmentation model.",
      "categories": [
        "Machine learning"
      ],
      "doc_path": "/documentation/CoreML/using-core-ml-for-semantic-image-segmentation",
      "doc_url": "https://developer.apple.com/documentation/CoreML/using-core-ml-for-semantic-image-segmentation",
      "download": {
        "filename": "UsingCoreMLForSemanticImageSegmentation.zip",
        "identifier": "00ad11cf32e4/UsingCoreMLForSemanticImageSegmentation.zip",
        "url": "https://docs-assets.developer.apple.com/published/00ad11cf32e4/UsingCoreMLForSemanticImageSegmentation.zip"
      },
      "id": "coreml/using-core-ml-for-semantic-image-segmentation",
      "identifier": "doc://com.apple.coreml/documentation/CoreML/using-core-ml-for-semantic-image-segmentation",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreML/using-core-ml-for-semantic-image-segmentation.json",
      "module": "Core ML",
      "modules": [
        "Core ML"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core ML",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Using Core ML for semantic image segmentation"
    },
    {
      "abstract": "Configure your app to listen for motion-activity changes from headphones.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/CoreMotion/getting-motion-activity-data-from-headphones",
      "doc_url": "https://developer.apple.com/documentation/CoreMotion/getting-motion-activity-data-from-headphones",
      "download": {
        "filename": "GettingMotionActivityDataFromHeadphones.zip",
        "identifier": "dc6ec1e7e547/GettingMotionActivityDataFromHeadphones.zip",
        "url": "https://docs-assets.developer.apple.com/published/dc6ec1e7e547/GettingMotionActivityDataFromHeadphones.zip"
      },
      "id": "coremotion/getting-motion-activity-data-from-headphones",
      "identifier": "doc://com.apple.coremotion/documentation/CoreMotion/getting-motion-activity-data-from-headphones",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreMotion/getting-motion-activity-data-from-headphones.json",
      "module": "Core Motion",
      "modules": [
        "Core Motion"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core Motion",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.1",
          "name": "Xcode"
        }
      ],
      "title": "Getting motion-activity data from headphones"
    },
    {
      "abstract": "Read NFC tags with NDEF messages in your app.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/CoreNFC/building-an-nfc-tag-reader-app",
      "doc_url": "https://developer.apple.com/documentation/CoreNFC/building-an-nfc-tag-reader-app",
      "download": {
        "filename": "BuildingAnNFCTagReaderApp.zip",
        "identifier": "14275bb79e91/BuildingAnNFCTagReaderApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/14275bb79e91/BuildingAnNFCTagReaderApp.zip"
      },
      "id": "corenfc/building-an-nfc-tag-reader-app",
      "identifier": "doc://com.apple.corenfc/documentation/CoreNFC/building-an-nfc-tag-reader-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreNFC/building-an-nfc-tag-reader-app.json",
      "module": "Core NFC",
      "modules": [
        "Core NFC"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core NFC",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "Xcode"
        }
      ],
      "title": "Building an NFC Tag-Reader App"
    },
    {
      "abstract": "Save data to tags, and interact with them using native tag protocols.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/CoreNFC/creating-nfc-tags-from-your-iphone",
      "doc_url": "https://developer.apple.com/documentation/CoreNFC/creating-nfc-tags-from-your-iphone",
      "download": {
        "filename": "CreatingNFCTagsFromYourIPhone.zip",
        "identifier": "9348bb938213/CreatingNFCTagsFromYourIPhone.zip",
        "url": "https://docs-assets.developer.apple.com/published/9348bb938213/CreatingNFCTagsFromYourIPhone.zip"
      },
      "id": "corenfc/creating-nfc-tags-from-your-iphone",
      "identifier": "doc://com.apple.corenfc/documentation/CoreNFC/creating-nfc-tags-from-your-iphone",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CoreNFC/creating-nfc-tags-from-your-iphone.json",
      "module": "Core NFC",
      "modules": [
        "Core NFC"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core NFC",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating NFC Tags from Your iPhone"
    },
    {
      "abstract": "Give a language model access to your app’s Core Spotlight index to enable natural-language queries over searchable content.",
      "categories": [],
      "doc_path": "/documentation/corespotlight/searching-indexed-content-with-natural-language",
      "doc_url": "https://developer.apple.com/documentation/corespotlight/searching-indexed-content-with-natural-language",
      "download": {
        "filename": "SearchingIndexedContentWithNaturalLanguage.zip",
        "identifier": "f9dfe6c6f5d3/SearchingIndexedContentWithNaturalLanguage.zip",
        "url": "https://docs-assets.developer.apple.com/published/f9dfe6c6f5d3/SearchingIndexedContentWithNaturalLanguage.zip"
      },
      "id": "corespotlight/searching-indexed-content-with-natural-language",
      "identifier": "doc://com.apple.corespotlight/documentation/CoreSpotlight/searching-indexed-content-with-natural-language",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/corespotlight/searching-indexed-content-with-natural-language.json",
      "module": "Core Spotlight",
      "modules": [
        "Core Spotlight"
      ],
      "origins": [
        "technology-index:Core Spotlight"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iPadOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Searching indexed content with natural language"
    },
    {
      "abstract": "Train a machine learning model by using Core ML to import and manage tabular data.",
      "categories": [
        "Machine learning"
      ],
      "doc_path": "/documentation/CreateML/creating-a-model-from-tabular-data",
      "doc_url": "https://developer.apple.com/documentation/CreateML/creating-a-model-from-tabular-data",
      "download": {
        "filename": "CreatingAModelFromTabularData.zip",
        "identifier": "ecccf72f7716/CreatingAModelFromTabularData.zip",
        "url": "https://docs-assets.developer.apple.com/published/ecccf72f7716/CreatingAModelFromTabularData.zip"
      },
      "id": "createml/creating-a-model-from-tabular-data",
      "identifier": "doc://com.apple.createml/documentation/CreateML/creating-a-model-from-tabular-data",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CreateML/creating-a-model-from-tabular-data.json",
      "module": "Create ML",
      "modules": [
        "Create ML"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Create ML",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "10.1",
          "name": "Xcode"
        }
      ],
      "title": "Creating a model from tabular data"
    },
    {
      "abstract": "Identify body movements by sending a person’s pose data from a series of video frames to an action-classification model.",
      "categories": [
        "Machine learning"
      ],
      "doc_path": "/documentation/CreateML/detecting-human-actions-in-a-live-video-feed",
      "doc_url": "https://developer.apple.com/documentation/CreateML/detecting-human-actions-in-a-live-video-feed",
      "download": {
        "filename": "DetectingHumanActionsInALiveVideoFeed.zip",
        "identifier": "f1a45aa976a1/DetectingHumanActionsInALiveVideoFeed.zip",
        "url": "https://docs-assets.developer.apple.com/published/f1a45aa976a1/DetectingHumanActionsInALiveVideoFeed.zip"
      },
      "id": "createml/detecting-human-actions-in-a-live-video-feed",
      "identifier": "doc://com.apple.createml/documentation/CreateML/detecting-human-actions-in-a-live-video-feed",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CreateML/detecting-human-actions-in-a-live-video-feed.json",
      "module": "Create ML",
      "modules": [
        "Create ML"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Create ML",
        "technology-index:Sample Code Library",
        "technology-index:Vision"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.3",
          "name": "Xcode"
        }
      ],
      "title": "Detecting human actions in a live video feed"
    },
    {
      "abstract": "Use Create ML Components to analyze a series of video frames and count a person’s repetitive or periodic body movements.",
      "categories": [
        "Machine learning"
      ],
      "doc_path": "/documentation/CreateMLComponents/counting-human-body-action-repetitions-in-a-live-video-feed",
      "doc_url": "https://developer.apple.com/documentation/CreateMLComponents/counting-human-body-action-repetitions-in-a-live-video-feed",
      "download": {
        "filename": "CountingHumanBodyActionRepetitionsInALiveVideoFeed.zip",
        "identifier": "6320e9d157f9/CountingHumanBodyActionRepetitionsInALiveVideoFeed.zip",
        "url": "https://docs-assets.developer.apple.com/published/6320e9d157f9/CountingHumanBodyActionRepetitionsInALiveVideoFeed.zip"
      },
      "id": "createmlcomponents/counting-human-body-action-repetitions-in-a-live-video-feed",
      "identifier": "doc://com.apple.createmlcomponents/documentation/CreateMLComponents/counting-human-body-action-repetitions-in-a-live-video-feed",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CreateMLComponents/counting-human-body-action-repetitions-in-a-live-video-feed.json",
      "module": "Create ML Components",
      "modules": [
        "Create ML Components"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Create ML Components",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "Counting human body action repetitions in a live video feed"
    },
    {
      "abstract": "Use quantum-secure cryptography to protect your app from quantum attacks.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/CryptoKit/enhancing-your-app-s-privacy-and-security-with-quantum-secure-workflows",
      "doc_url": "https://developer.apple.com/documentation/CryptoKit/enhancing-your-app-s-privacy-and-security-with-quantum-secure-workflows",
      "download": {
        "filename": "EnhancingYourAppsPrivacyAndSecurityWithQuantumSecureWorkflows.zip",
        "identifier": "88fe47e5a225/EnhancingYourAppsPrivacyAndSecurityWithQuantumSecureWorkflows.zip",
        "url": "https://docs-assets.developer.apple.com/published/88fe47e5a225/EnhancingYourAppsPrivacyAndSecurityWithQuantumSecureWorkflows.zip"
      },
      "id": "cryptokit/enhancing-your-app-s-privacy-and-security-with-quantum-secure-workflows",
      "identifier": "doc://com.apple.CryptoKit/documentation/CryptoKit/enhancing-your-app-s-privacy-and-security-with-quantum-secure-workflows",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CryptoKit/enhancing-your-app-s-privacy-and-security-with-quantum-secure-workflows.json",
      "module": "Apple CryptoKit",
      "modules": [
        "Apple CryptoKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Apple CryptoKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Enhancing your app’s privacy and security with quantum-secure workflows"
    },
    {
      "abstract": "Use CryptoKit to carry out operations like hashing, key generation, and encryption.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/CryptoKit/performing-common-cryptographic-operations",
      "doc_url": "https://developer.apple.com/documentation/CryptoKit/performing-common-cryptographic-operations",
      "download": {
        "filename": "PerformingCommonCryptographicOperations.zip",
        "identifier": "e5094c3051ea/PerformingCommonCryptographicOperations.zip",
        "url": "https://docs-assets.developer.apple.com/published/e5094c3051ea/PerformingCommonCryptographicOperations.zip"
      },
      "id": "cryptokit/performing-common-cryptographic-operations",
      "identifier": "doc://com.apple.CryptoKit/documentation/CryptoKit/performing-common-cryptographic-operations",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CryptoKit/performing-common-cryptographic-operations.json",
      "module": "Apple CryptoKit",
      "modules": [
        "Apple CryptoKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Apple CryptoKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Performing Common Cryptographic Operations"
    },
    {
      "abstract": "Convert between strongly typed cryptographic keys and native keychain types.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/CryptoKit/storing-cryptokit-keys-in-the-keychain",
      "doc_url": "https://developer.apple.com/documentation/CryptoKit/storing-cryptokit-keys-in-the-keychain",
      "download": {
        "filename": "StoringCryptoKitKeysInTheKeychain.zip",
        "identifier": "e58b2aada138/StoringCryptoKitKeysInTheKeychain.zip",
        "url": "https://docs-assets.developer.apple.com/published/e58b2aada138/StoringCryptoKitKeysInTheKeychain.zip"
      },
      "id": "cryptokit/storing-cryptokit-keys-in-the-keychain",
      "identifier": "doc://com.apple.CryptoKit/documentation/CryptoKit/storing-cryptokit-keys-in-the-keychain",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/CryptoKit/storing-cryptokit-keys-in-the-keychain.json",
      "module": "Apple CryptoKit",
      "modules": [
        "Apple CryptoKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Apple CryptoKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "10.15",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "Xcode"
        }
      ],
      "title": "Storing CryptoKit Keys in the Keychain"
    },
    {
      "abstract": "Create a significant change flow to inform people about important updates in your app and request age-related permissions.",
      "categories": [
        "WWDC26"
      ],
      "doc_path": "/documentation/DeclaredAgeRange/implementing-age-assurance-and-permissions",
      "doc_url": "https://developer.apple.com/documentation/DeclaredAgeRange/implementing-age-assurance-and-permissions",
      "download": {
        "filename": "ImplementingAgeAssuranceAndPermissions.zip",
        "identifier": "048a22e9dd56/ImplementingAgeAssuranceAndPermissions.zip",
        "url": "https://docs-assets.developer.apple.com/published/048a22e9dd56/ImplementingAgeAssuranceAndPermissions.zip"
      },
      "id": "declaredagerange/implementing-age-assurance-and-permissions",
      "identifier": "doc://com.apple.declaredagerange/documentation/DeclaredAgeRange/implementing-age-assurance-and-permissions",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/DeclaredAgeRange/implementing-age-assurance-and-permissions.json",
      "module": "Declared Age Range",
      "modules": [
        "Declared Age Range"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Declared Age Range",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.5",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.5",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.5",
          "name": "Mac Catalyst"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Implementing age assurance and permissions"
    },
    {
      "abstract": "Build an extension that streams media to a server app in iOS or macOS.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/DeviceDiscoveryExtension/discovering-a-third-party-media-streaming-device",
      "doc_url": "https://developer.apple.com/documentation/DeviceDiscoveryExtension/discovering-a-third-party-media-streaming-device",
      "download": {
        "filename": "DiscoveringAThirdPartyMediaStreamingDevice.zip",
        "identifier": "9dd81d7fe75e/DiscoveringAThirdPartyMediaStreamingDevice.zip",
        "url": "https://docs-assets.developer.apple.com/published/9dd81d7fe75e/DiscoveringAThirdPartyMediaStreamingDevice.zip"
      },
      "id": "devicediscoveryextension/discovering-a-third-party-media-streaming-device",
      "identifier": "doc://com.apple.devicediscoveryextension/documentation/DeviceDiscoveryExtension/discovering-a-third-party-media-streaming-device",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/DeviceDiscoveryExtension/discovering-a-third-party-media-streaming-device.json",
      "module": "DeviceDiscoveryExtension",
      "modules": [
        "DeviceDiscoveryExtension"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:DeviceDiscoveryExtension",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Discovering a third-party media-streaming device"
    },
    {
      "abstract": "Follow subjects in real time using an iPhone that you mount on a DockKit accessory.",
      "categories": [
        "Photos and video"
      ],
      "doc_path": "/documentation/DockKit/controlling-a-dockkit-accessory-using-your-camera-app",
      "doc_url": "https://developer.apple.com/documentation/DockKit/controlling-a-dockkit-accessory-using-your-camera-app",
      "download": {
        "filename": "ControllingADockKitAccessoryUsingYourCameraApp.zip",
        "identifier": "8a91b3c4c6e5/ControllingADockKitAccessoryUsingYourCameraApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/8a91b3c4c6e5/ControllingADockKitAccessoryUsingYourCameraApp.zip"
      },
      "id": "dockkit/controlling-a-dockkit-accessory-using-your-camera-app",
      "identifier": "doc://com.apple.DockKit/documentation/DockKit/controlling-a-dockkit-accessory-using-your-camera-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/DockKit/controlling-a-dockkit-accessory-using-your-camera-app.json",
      "module": "DockKit",
      "modules": [
        "DockKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:DockKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.1",
          "name": "Xcode"
        }
      ],
      "title": "Controlling a DockKit accessory using your camera app"
    },
    {
      "abstract": "Send and receive different kinds of data securely by validating inputs and asynchronously by storing and using a callback.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/DriverKit/communicating-between-a-driverkit-extension-and-a-client-app",
      "doc_url": "https://developer.apple.com/documentation/DriverKit/communicating-between-a-driverkit-extension-and-a-client-app",
      "download": {
        "filename": "CommunicatingBetweenADriverKitExtensionAndAClientApp.zip",
        "identifier": "7f67d9d84a48/CommunicatingBetweenADriverKitExtensionAndAClientApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/7f67d9d84a48/CommunicatingBetweenADriverKitExtensionAndAClientApp.zip"
      },
      "id": "driverkit/communicating-between-a-driverkit-extension-and-a-client-app",
      "identifier": "doc://com.apple.driverkit/documentation/DriverKit/communicating-between-a-driverkit-extension-and-a-client-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/DriverKit/communicating-between-a-driverkit-extension-and-a-client-app.json",
      "module": "DriverKit",
      "modules": [
        "DriverKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:DriverKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "20.0",
          "name": "DriverKit"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Communicating between a DriverKit extension and a client app"
    },
    {
      "abstract": "Receive notifications and authorization requests for sensitive operations by creating an Endpoint Security client for your app.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/EndpointSecurity/monitoring-system-events-with-endpoint-security",
      "doc_url": "https://developer.apple.com/documentation/EndpointSecurity/monitoring-system-events-with-endpoint-security",
      "download": {
        "filename": "MonitoringSystemEventsWithEndpointSecurity.zip",
        "identifier": "70ea78a173bc/MonitoringSystemEventsWithEndpointSecurity.zip",
        "url": "https://docs-assets.developer.apple.com/published/70ea78a173bc/MonitoringSystemEventsWithEndpointSecurity.zip"
      },
      "id": "endpointsecurity/monitoring-system-events-with-endpoint-security",
      "identifier": "doc://com.apple.endpointsecurity/documentation/EndpointSecurity/monitoring-system-events-with-endpoint-security",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/EndpointSecurity/monitoring-system-events-with-endpoint-security.json",
      "module": "Endpoint Security",
      "modules": [
        "Endpoint Security"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Endpoint Security",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Monitoring System Events with Endpoint Security"
    },
    {
      "abstract": "Shift electric vehicle charging schedules to times when the grid is cleaner and potentially less expensive.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/EnergyKit/optimizing-home-electricity-usage",
      "doc_url": "https://developer.apple.com/documentation/EnergyKit/optimizing-home-electricity-usage",
      "download": {
        "filename": "OptimizingHomeElectricityUsage.zip",
        "identifier": "d2fb358a5f3f/OptimizingHomeElectricityUsage.zip",
        "url": "https://docs-assets.developer.apple.com/published/d2fb358a5f3f/OptimizingHomeElectricityUsage.zip"
      },
      "id": "energykit/optimizing-home-electricity-usage",
      "identifier": "doc://com.apple.energykit/documentation/EnergyKit/optimizing-home-electricity-usage",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/EnergyKit/optimizing-home-electricity-usage.json",
      "module": "EnergyKit",
      "modules": [
        "EnergyKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:EnergyKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.1",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.1",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.1",
          "name": "Xcode"
        }
      ],
      "title": "Optimizing home electricity usage"
    },
    {
      "abstract": "Measure and improve the quality of your app’s intelligence-powered features using the Evaluations framework.",
      "categories": [
        "WWDC26"
      ],
      "doc_path": "/documentation/Evaluations/book-tracker-using-evaluations-to-evaluate-an-intelligent-feature",
      "doc_url": "https://developer.apple.com/documentation/Evaluations/book-tracker-using-evaluations-to-evaluate-an-intelligent-feature",
      "download": {
        "filename": "BookTrackerUsingEvaluationsToEvaluateAnIntelligentFeature.zip",
        "identifier": "6bb5705513b4/BookTrackerUsingEvaluationsToEvaluateAnIntelligentFeature.zip",
        "url": "https://docs-assets.developer.apple.com/published/6bb5705513b4/BookTrackerUsingEvaluationsToEvaluateAnIntelligentFeature.zip"
      },
      "id": "evaluations/book-tracker-using-evaluations-to-evaluate-an-intelligent-feature",
      "identifier": "doc://com.apple.evaluations/documentation/Evaluations/book-tracker-using-evaluations-to-evaluate-an-intelligent-feature",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Evaluations/book-tracker-using-evaluations-to-evaluate-an-intelligent-feature.json",
      "module": "Evaluations",
      "modules": [
        "Evaluations"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Evaluations",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iPadOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Book Tracker: Using Evaluations to evaluate an intelligent feature"
    },
    {
      "abstract": "Choose and implement the appropriate Calendar access level in your app.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/EventKit/accessing-calendar-using-eventkit-and-eventkitui",
      "doc_url": "https://developer.apple.com/documentation/EventKit/accessing-calendar-using-eventkit-and-eventkitui",
      "download": {
        "filename": "AccessingCalendarUsingEventKitAndEventKitUI.zip",
        "identifier": "8e3d82696aa8/AccessingCalendarUsingEventKitAndEventKitUI.zip",
        "url": "https://docs-assets.developer.apple.com/published/8e3d82696aa8/AccessingCalendarUsingEventKitAndEventKitUI.zip"
      },
      "id": "eventkit/accessing-calendar-using-eventkit-and-eventkitui",
      "identifier": "doc://com.apple.eventkit/documentation/EventKit/accessing-calendar-using-eventkit-and-eventkitui",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/EventKit/accessing-calendar-using-eventkit-and-eventkitui.json",
      "module": "EventKit",
      "modules": [
        "EventKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:EventKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.4",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.4",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.4",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Accessing Calendar using EventKit and EventKitUI"
    },
    {
      "abstract": "Support adding a virtual conference room to an event in Calendar.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/EventKit/implementing-a-virtual-conference-extension",
      "doc_url": "https://developer.apple.com/documentation/EventKit/implementing-a-virtual-conference-extension",
      "download": {
        "filename": "ImplementingAVirtualConferenceExtension.zip",
        "identifier": "c8f8cf6d7972/ImplementingAVirtualConferenceExtension.zip",
        "url": "https://docs-assets.developer.apple.com/published/c8f8cf6d7972/ImplementingAVirtualConferenceExtension.zip"
      },
      "id": "eventkit/implementing-a-virtual-conference-extension",
      "identifier": "doc://com.apple.eventkit/documentation/EventKit/implementing-a-virtual-conference-extension",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/EventKit/implementing-a-virtual-conference-extension.json",
      "module": "EventKit",
      "modules": [
        "EventKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:EventKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.2",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.2",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.2",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.2",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.2",
          "name": "Xcode"
        }
      ],
      "title": "Implementing a virtual conference extension"
    },
    {
      "abstract": "Access reminders set up with geofence-enabled alarms on a person’s calendars.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/EventKit/managing-location-based-reminders",
      "doc_url": "https://developer.apple.com/documentation/EventKit/managing-location-based-reminders",
      "download": {
        "filename": "ManagingLocationBasedReminders.zip",
        "identifier": "2d8ddb1a3c03/ManagingLocationBasedReminders.zip",
        "url": "https://docs-assets.developer.apple.com/published/2d8ddb1a3c03/ManagingLocationBasedReminders.zip"
      },
      "id": "eventkit/managing-location-based-reminders",
      "identifier": "doc://com.apple.eventkit/documentation/EventKit/managing-location-based-reminders",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/EventKit/managing-location-based-reminders.json",
      "module": "EventKit",
      "modules": [
        "EventKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:EventKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Managing location-based reminders"
    },
    {
      "abstract": "Inform people when they may have been exposed to COVID-19.",
      "categories": [
        "Health"
      ],
      "doc_path": "/documentation/ExposureNotification/building-an-app-to-notify-users-of-covid-19-exposure",
      "doc_url": "https://developer.apple.com/documentation/ExposureNotification/building-an-app-to-notify-users-of-covid-19-exposure",
      "download": {
        "filename": "BuildingAnAppToNotifyUsersOfCOVID19Exposure.zip",
        "identifier": "7bc8126ced64/BuildingAnAppToNotifyUsersOfCOVID19Exposure.zip",
        "url": "https://docs-assets.developer.apple.com/published/7bc8126ced64/BuildingAnAppToNotifyUsersOfCOVID19Exposure.zip"
      },
      "id": "exposurenotification/building-an-app-to-notify-users-of-covid-19-exposure",
      "identifier": "doc://com.apple.exposurenotification/documentation/ExposureNotification/building-an-app-to-notify-users-of-covid-19-exposure",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ExposureNotification/building-an-app-to-notify-users-of-covid-19-exposure.json",
      "module": "Exposure Notification",
      "modules": [
        "Exposure Notification"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Exposure Notification",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.5",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "12.5",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "12.5",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.4",
          "name": "Xcode"
        }
      ],
      "title": "Building an App to Notify Users of COVID-19 Exposure"
    },
    {
      "abstract": "Make remote files available in macOS and iOS, and synchronize their states by using file provider extensions.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/FileProvider/synchronizing-files-using-file-provider-extensions",
      "doc_url": "https://developer.apple.com/documentation/FileProvider/synchronizing-files-using-file-provider-extensions",
      "download": {
        "filename": "SynchronizingFilesUsingFileProviderExtensions.zip",
        "identifier": "612c24319d8c/SynchronizingFilesUsingFileProviderExtensions.zip",
        "url": "https://docs-assets.developer.apple.com/published/612c24319d8c/SynchronizingFilesUsingFileProviderExtensions.zip"
      },
      "id": "fileprovider/synchronizing-files-using-file-provider-extensions",
      "identifier": "doc://com.apple.fileprovider/documentation/FileProvider/synchronizing-files-using-file-provider-extensions",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/FileProvider/synchronizing-files-using-file-provider-extensions.json",
      "module": "File Provider",
      "modules": [
        "File Provider"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:File Provider",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Synchronizing files using file provider extensions"
    },
    {
      "abstract": "Receive up-to-date financial data in your app and its extensions by adding a background delivery extension.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/FinanceKit/implementing-a-background-delivery-extension",
      "doc_url": "https://developer.apple.com/documentation/FinanceKit/implementing-a-background-delivery-extension",
      "download": {
        "filename": "ImplementingABackgroundDeliveryExtension.zip",
        "identifier": "91e08631a889/ImplementingABackgroundDeliveryExtension.zip",
        "url": "https://docs-assets.developer.apple.com/published/91e08631a889/ImplementingABackgroundDeliveryExtension.zip"
      },
      "id": "financekit/implementing-a-background-delivery-extension",
      "identifier": "doc://com.apple.financekit/documentation/FinanceKit/implementing-a-background-delivery-extension",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/FinanceKit/implementing-a-background-delivery-extension.json",
      "module": "FinanceKit",
      "modules": [
        "FinanceKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:FinanceKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Implementing a background delivery extension"
    },
    {
      "abstract": "Format, style, and localize your app’s text for use in multiple languages with string formatting, attributed strings, and automatic grammar agreement.",
      "categories": [
        "App frameworks"
      ],
      "doc_path": "/documentation/Foundation/building-a-localized-food-ordering-app",
      "doc_url": "https://developer.apple.com/documentation/Foundation/building-a-localized-food-ordering-app",
      "download": {
        "filename": "BuildingALocalizedFoodOrderingApp.zip",
        "identifier": "fd1004611382/BuildingALocalizedFoodOrderingApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/fd1004611382/BuildingALocalizedFoodOrderingApp.zip"
      },
      "id": "foundation/building-a-localized-food-ordering-app",
      "identifier": "doc://com.apple.foundation/documentation/Foundation/building-a-localized-food-ordering-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Foundation/building-a-localized-food-ordering-app.json",
      "module": "Foundation",
      "modules": [
        "Foundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Foundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "8.0",
          "name": "watchOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Building a Localized Food-Ordering App"
    },
    {
      "abstract": "Support HTTP resumable upload protocol in SwiftNIO by translating resumable uploads to regular uploads.",
      "categories": [
        "App frameworks"
      ],
      "doc_path": "/documentation/Foundation/building-a-resumable-upload-server-with-swiftnio",
      "doc_url": "https://developer.apple.com/documentation/Foundation/building-a-resumable-upload-server-with-swiftnio",
      "download": {
        "filename": "BuildingAResumableUploadServerWithSwiftNIO.zip",
        "identifier": "eecdd62f298f/BuildingAResumableUploadServerWithSwiftNIO.zip",
        "url": "https://docs-assets.developer.apple.com/published/eecdd62f298f/BuildingAResumableUploadServerWithSwiftNIO.zip"
      },
      "id": "foundation/building-a-resumable-upload-server-with-swiftnio",
      "identifier": "doc://com.apple.foundation/documentation/Foundation/building-a-resumable-upload-server-with-swiftnio",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Foundation/building-a-resumable-upload-server-with-swiftnio.json",
      "module": "Foundation",
      "modules": [
        "Foundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Foundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [],
      "title": "Building a resumable upload server with SwiftNIO"
    },
    {
      "abstract": "Define and manage which of your app’s activities can be continued between devices.",
      "categories": [
        "App frameworks"
      ],
      "doc_path": "/documentation/Foundation/continuing-user-activities-with-handoff",
      "doc_url": "https://developer.apple.com/documentation/Foundation/continuing-user-activities-with-handoff",
      "download": {
        "filename": "ContinuingUserActivitiesWithHandoff.zip",
        "identifier": "fb0d52fad60a/ContinuingUserActivitiesWithHandoff.zip",
        "url": "https://docs-assets.developer.apple.com/published/fb0d52fad60a/ContinuingUserActivitiesWithHandoff.zip"
      },
      "id": "foundation/continuing-user-activities-with-handoff",
      "identifier": "doc://com.apple.foundation/documentation/Foundation/continuing-user-activities-with-handoff",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Foundation/continuing-user-activities-with-handoff.json",
      "module": "Foundation",
      "modules": [
        "Foundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Foundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "10.14",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Continuing User Activities with Handoff"
    },
    {
      "abstract": "Convert data into readable strings or Swift objects using formatters.",
      "categories": [
        "App frameworks"
      ],
      "doc_path": "/documentation/Foundation/displaying-human-friendly-content",
      "doc_url": "https://developer.apple.com/documentation/Foundation/displaying-human-friendly-content",
      "download": {
        "filename": "DisplayingHumanFriendlyContent.zip",
        "identifier": "5b02d7f59291/DisplayingHumanFriendlyContent.zip",
        "url": "https://docs-assets.developer.apple.com/published/5b02d7f59291/DisplayingHumanFriendlyContent.zip"
      },
      "id": "foundation/displaying-human-friendly-content",
      "identifier": "doc://com.apple.foundation/documentation/Foundation/displaying-human-friendly-content",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Foundation/displaying-human-friendly-content.json",
      "module": "Foundation",
      "modules": [
        "Foundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Foundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Displaying Human-Friendly Content"
    },
    {
      "abstract": "Provide a continuous user experience by capturing information from your app and displaying this information as proactive suggestions across the system.",
      "categories": [
        "App frameworks"
      ],
      "doc_path": "/documentation/Foundation/increasing-app-usage-with-suggestions-based-on-user-activities",
      "doc_url": "https://developer.apple.com/documentation/Foundation/increasing-app-usage-with-suggestions-based-on-user-activities",
      "download": {
        "filename": "IncreasingAppUsageWithSuggestionsBasedOnUserActivities.zip",
        "identifier": "b8d8e4357791/IncreasingAppUsageWithSuggestionsBasedOnUserActivities.zip",
        "url": "https://docs-assets.developer.apple.com/published/b8d8e4357791/IncreasingAppUsageWithSuggestionsBasedOnUserActivities.zip"
      },
      "id": "foundation/increasing-app-usage-with-suggestions-based-on-user-activities",
      "identifier": "doc://com.apple.foundation/documentation/Foundation/increasing-app-usage-with-suggestions-based-on-user-activities",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Foundation/increasing-app-usage-with-suggestions-based-on-user-activities.json",
      "module": "Foundation",
      "modules": [
        "Foundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Foundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Increasing App Usage with Suggestions Based on User Activities"
    },
    {
      "abstract": "Converts data into human-readable text using formatters and locales.",
      "categories": [
        "App frameworks"
      ],
      "doc_path": "/documentation/Foundation/language-introspector",
      "doc_url": "https://developer.apple.com/documentation/Foundation/language-introspector",
      "download": {
        "filename": "LanguageIntrospector.zip",
        "identifier": "add03cf88969/LanguageIntrospector.zip",
        "url": "https://docs-assets.developer.apple.com/published/add03cf88969/LanguageIntrospector.zip"
      },
      "id": "foundation/language-introspector",
      "identifier": "doc://com.apple.foundation/documentation/Foundation/language-introspector",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Foundation/language-introspector.json",
      "module": "Foundation",
      "modules": [
        "Foundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Foundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Language Introspector"
    },
    {
      "abstract": "Store app preferences in iCloud and share them among instances of your app running on a user’s connected devices.",
      "categories": [
        "App frameworks"
      ],
      "doc_path": "/documentation/Foundation/synchronizing-app-preferences-with-icloud",
      "doc_url": "https://developer.apple.com/documentation/Foundation/synchronizing-app-preferences-with-icloud",
      "download": {
        "filename": "SynchronizingAppPreferencesWithICloud.zip",
        "identifier": "fbdec1516d89/SynchronizingAppPreferencesWithICloud.zip",
        "url": "https://docs-assets.developer.apple.com/published/fbdec1516d89/SynchronizingAppPreferencesWithICloud.zip"
      },
      "id": "foundation/synchronizing-app-preferences-with-icloud",
      "identifier": "doc://com.apple.foundation/documentation/Foundation/synchronizing-app-preferences-with-icloud",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Foundation/synchronizing-app-preferences-with-icloud.json",
      "module": "Foundation",
      "modules": [
        "Foundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Foundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.5",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.5",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.5",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "10.13",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "11.6",
          "name": "Xcode"
        }
      ],
      "title": "Synchronizing App Preferences with iCloud"
    },
    {
      "abstract": "Encode and decode JSON data, regardless of its structure, using Swift’s JSON support.",
      "categories": [
        "App frameworks"
      ],
      "doc_path": "/documentation/Foundation/using-json-with-custom-types",
      "doc_url": "https://developer.apple.com/documentation/Foundation/using-json-with-custom-types",
      "download": {
        "filename": "UsingJSONWithCustomTypes.zip",
        "identifier": "111eb89d287b/UsingJSONWithCustomTypes.zip",
        "url": "https://docs-assets.developer.apple.com/published/111eb89d287b/UsingJSONWithCustomTypes.zip"
      },
      "id": "foundation/using-json-with-custom-types",
      "identifier": "doc://com.apple.foundation/documentation/Foundation/using-json-with-custom-types",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Foundation/using-json-with-custom-types.json",
      "module": "Foundation",
      "modules": [
        "Foundation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Foundation",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "10.0",
          "name": "Xcode"
        }
      ],
      "title": "Using JSON with custom types"
    },
    {
      "abstract": "Build robust apps with guided generation and tool calling by adopting the Foundation Models framework.",
      "categories": [
        "Machine learning"
      ],
      "doc_path": "/documentation/FoundationModels/adding-intelligent-app-features-with-generative-models",
      "doc_url": "https://developer.apple.com/documentation/FoundationModels/adding-intelligent-app-features-with-generative-models",
      "download": {
        "filename": "AddingIntelligentAppFeaturesWithGenerativeModels.zip",
        "identifier": "5414fd17db13/AddingIntelligentAppFeaturesWithGenerativeModels.zip",
        "url": "https://docs-assets.developer.apple.com/published/5414fd17db13/AddingIntelligentAppFeaturesWithGenerativeModels.zip"
      },
      "id": "foundationmodels/adding-intelligent-app-features-with-generative-models",
      "identifier": "doc://com.apple.foundationmodels/documentation/FoundationModels/adding-intelligent-app-features-with-generative-models",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/FoundationModels/adding-intelligent-app-features-with-generative-models.json",
      "module": "Foundation Models",
      "modules": [
        "Foundation Models"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Foundation Models",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Adding intelligent app features with generative models"
    },
    {
      "abstract": "Make gameplay more lively with AI generated dialog and encounters personalized to the player.",
      "categories": [
        "Machine learning"
      ],
      "doc_path": "/documentation/FoundationModels/generate-dynamic-game-content-with-guided-generation-and-tools",
      "doc_url": "https://developer.apple.com/documentation/FoundationModels/generate-dynamic-game-content-with-guided-generation-and-tools",
      "download": {
        "filename": "GenerateDynamicGameContentWithGuidedGenerationAndTools.zip",
        "identifier": "86c65aeb21cc/GenerateDynamicGameContentWithGuidedGenerationAndTools.zip",
        "url": "https://docs-assets.developer.apple.com/published/86c65aeb21cc/GenerateDynamicGameContentWithGuidedGenerationAndTools.zip"
      },
      "id": "foundationmodels/generate-dynamic-game-content-with-guided-generation-and-tools",
      "identifier": "doc://com.apple.foundationmodels/documentation/FoundationModels/generate-dynamic-game-content-with-guided-generation-and-tools",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/FoundationModels/generate-dynamic-game-content-with-guided-generation-and-tools.json",
      "module": "Foundation Models",
      "modules": [
        "Foundation Models"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Foundation Models",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Generate dynamic game content with guided generation and tools"
    },
    {
      "abstract": "Build interactive experiences with Foundation Models and Private Cloud Compute using multimodal prompts.",
      "categories": [
        "WWDC26"
      ],
      "doc_path": "/documentation/FoundationModels/origami-crafting-a-dynamic-tutorial-for-apple-intelligence",
      "doc_url": "https://developer.apple.com/documentation/FoundationModels/origami-crafting-a-dynamic-tutorial-for-apple-intelligence",
      "download": {
        "filename": "OrigamiCraftingADynamicTutorialForAppleIntelligence.zip",
        "identifier": "e843a4026a2e/OrigamiCraftingADynamicTutorialForAppleIntelligence.zip",
        "url": "https://docs-assets.developer.apple.com/published/e843a4026a2e/OrigamiCraftingADynamicTutorialForAppleIntelligence.zip"
      },
      "id": "foundationmodels/origami-crafting-a-dynamic-tutorial-for-apple-intelligence",
      "identifier": "doc://com.apple.foundationmodels/documentation/FoundationModels/origami-crafting-a-dynamic-tutorial-for-apple-intelligence",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/FoundationModels/origami-crafting-a-dynamic-tutorial-for-apple-intelligence.json",
      "module": "Foundation Models",
      "modules": [
        "Foundation Models"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Foundation Models",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iPadOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "macOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Origami: Crafting a dynamic tutorial for Apple Intelligence"
    },
    {
      "abstract": "Build a visionOS app that streams high-fidelity immersive content from a computer or the cloud using the Foveated Streaming framework.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/FoveatedStreaming/creating-a-foveated-streaming-client-on-visionos",
      "doc_url": "https://developer.apple.com/documentation/FoveatedStreaming/creating-a-foveated-streaming-client-on-visionos",
      "download": {
        "filename": "CreatingAFoveatedStreamingClientOnVisionOS.zip",
        "identifier": "e320c39c0b09/CreatingAFoveatedStreamingClientOnVisionOS.zip",
        "url": "https://docs-assets.developer.apple.com/published/e320c39c0b09/CreatingAFoveatedStreamingClientOnVisionOS.zip"
      },
      "id": "foveatedstreaming/creating-a-foveated-streaming-client-on-visionos",
      "identifier": "doc://com.apple.FoveatedStreaming/documentation/FoveatedStreaming/creating-a-foveated-streaming-client-on-visionos",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/FoveatedStreaming/creating-a-foveated-streaming-client-on-visionos.json",
      "module": "Foveated Streaming",
      "modules": [
        "Foveated Streaming"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Foveated Streaming",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.4",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.4",
          "name": "Xcode"
        }
      ],
      "title": "Creating a foveated streaming client on visionOS"
    },
    {
      "abstract": "Expose an existing path as its own file system by using the FSKit framework.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/FSKit/building-a-passthrough-file-system",
      "doc_url": "https://developer.apple.com/documentation/FSKit/building-a-passthrough-file-system",
      "download": {
        "filename": "BuildingAPassthroughFileSystem.zip",
        "identifier": "0b4283600908/BuildingAPassthroughFileSystem.zip",
        "url": "https://docs-assets.developer.apple.com/published/0b4283600908/BuildingAPassthroughFileSystem.zip"
      },
      "id": "fskit/building-a-passthrough-file-system",
      "identifier": "doc://FSKit/documentation/FSKit/building-a-passthrough-file-system",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/FSKit/building-a-passthrough-file-system.json",
      "module": "FSKit",
      "modules": [
        "FSKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:FSKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Building a passthrough file system"
    },
    {
      "abstract": "Support a physical controller or add a virtual controller to enhance how people interact with your game through haptics, lighting, and motion sensing.",
      "categories": [
        "Games"
      ],
      "doc_path": "/documentation/GameController/supporting-game-controllers",
      "doc_url": "https://developer.apple.com/documentation/GameController/supporting-game-controllers",
      "download": {
        "filename": "SupportingGameControllers.zip",
        "identifier": "d7e013f913fb/SupportingGameControllers.zip",
        "url": "https://docs-assets.developer.apple.com/published/d7e013f913fb/SupportingGameControllers.zip"
      },
      "id": "gamecontroller/supporting-game-controllers",
      "identifier": "doc://com.apple.gamecontroller/documentation/GameController/supporting-game-controllers",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/GameController/supporting-game-controllers.json",
      "module": "Game Controller",
      "modules": [
        "Game Controller"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Game Controller",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "12.5",
          "name": "Xcode"
        }
      ],
      "title": "Supporting Game Controllers"
    },
    {
      "abstract": "Encourage competition in your games by adding leaderboards that have a duration and repeat.",
      "categories": [
        "Games"
      ],
      "doc_path": "/documentation/GameKit/adding-recurring-leaderboards-to-your-game",
      "doc_url": "https://developer.apple.com/documentation/GameKit/adding-recurring-leaderboards-to-your-game",
      "download": {
        "filename": "AddingRecurringLeaderboardsToYourGame.zip",
        "identifier": "0acc1471b1d8/AddingRecurringLeaderboardsToYourGame.zip",
        "url": "https://docs-assets.developer.apple.com/published/0acc1471b1d8/AddingRecurringLeaderboardsToYourGame.zip"
      },
      "id": "gamekit/adding-recurring-leaderboards-to-your-game",
      "identifier": "doc://com.apple.gamekit/documentation/GameKit/adding-recurring-leaderboards-to-your-game",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/GameKit/adding-recurring-leaderboards-to-your-game.json",
      "module": "GameKit",
      "modules": [
        "GameKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:GameKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.5",
          "name": "Xcode"
        }
      ],
      "title": "Adding Recurring Leaderboards to Your Game"
    },
    {
      "abstract": "Develop games where multiple players interact in real time.",
      "categories": [
        "Games"
      ],
      "doc_path": "/documentation/GameKit/creating-real-time-games",
      "doc_url": "https://developer.apple.com/documentation/GameKit/creating-real-time-games",
      "download": {
        "filename": "CreatingRealTimeGames.zip",
        "identifier": "bbbac5efeb8f/CreatingRealTimeGames.zip",
        "url": "https://docs-assets.developer.apple.com/published/bbbac5efeb8f/CreatingRealTimeGames.zip"
      },
      "id": "gamekit/creating-real-time-games",
      "identifier": "doc://com.apple.gamekit/documentation/GameKit/creating-real-time-games",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/GameKit/creating-real-time-games.json",
      "module": "GameKit",
      "modules": [
        "GameKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:GameKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.4",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.4",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.4",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.3",
          "name": "Xcode"
        }
      ],
      "title": "Creating real-time games"
    },
    {
      "abstract": "Develop games where multiple players take turns and can exchange data while waiting for their turn.",
      "categories": [
        "Games"
      ],
      "doc_path": "/documentation/GameKit/creating-turn-based-games",
      "doc_url": "https://developer.apple.com/documentation/GameKit/creating-turn-based-games",
      "download": {
        "filename": "CreatingTurnBasedGames.zip",
        "identifier": "90a936966de7/CreatingTurnBasedGames.zip",
        "url": "https://docs-assets.developer.apple.com/published/90a936966de7/CreatingTurnBasedGames.zip"
      },
      "id": "gamekit/creating-turn-based-games",
      "identifier": "doc://com.apple.gamekit/documentation/GameKit/creating-turn-based-games",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/GameKit/creating-turn-based-games.json",
      "module": "GameKit",
      "modules": [
        "GameKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:GameKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating turn-based games"
    },
    {
      "abstract": "Create a team-based guessing game for visionOS using Group Activities.",
      "categories": [
        "Photos and video"
      ],
      "doc_path": "/documentation/GroupActivities/building-a-guessing-game-for-visionos",
      "doc_url": "https://developer.apple.com/documentation/GroupActivities/building-a-guessing-game-for-visionos",
      "download": {
        "filename": "BuildingAGuessingGameForVisionOS.zip",
        "identifier": "8baa890170f0/BuildingAGuessingGameForVisionOS.zip",
        "url": "https://docs-assets.developer.apple.com/published/8baa890170f0/BuildingAGuessingGameForVisionOS.zip"
      },
      "id": "groupactivities/building-a-guessing-game-for-visionos",
      "identifier": "doc://com.apple.GroupActivities/documentation/GroupActivities/building-a-guessing-game-for-visionos",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/GroupActivities/building-a-guessing-game-for-visionos.json",
      "module": "Group Activities",
      "modules": [
        "Group Activities"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Group Activities",
        "technology-index:Sample Code Library",
        "technology-index:Updates",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Building a guessing game for visionOS"
    },
    {
      "abstract": "Build a shared photo gallery by using SharePlay to synchronize images among participants.",
      "categories": [
        "Photos and video"
      ],
      "doc_path": "/documentation/GroupActivities/creating-a-collaborative-photo-gallery-with-shareplay",
      "doc_url": "https://developer.apple.com/documentation/GroupActivities/creating-a-collaborative-photo-gallery-with-shareplay",
      "download": {
        "filename": "CreatingACollaborativePhotoGalleryWithSharePlay.zip",
        "identifier": "f85d2c95cec3/CreatingACollaborativePhotoGalleryWithSharePlay.zip",
        "url": "https://docs-assets.developer.apple.com/published/f85d2c95cec3/CreatingACollaborativePhotoGalleryWithSharePlay.zip"
      },
      "id": "groupactivities/creating-a-collaborative-photo-gallery-with-shareplay",
      "identifier": "doc://com.apple.GroupActivities/documentation/GroupActivities/creating-a-collaborative-photo-gallery-with-shareplay",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/GroupActivities/creating-a-collaborative-photo-gallery-with-shareplay.json",
      "module": "Group Activities",
      "modules": [
        "Group Activities"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Group Activities",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating a collaborative photo gallery with SharePlay"
    },
    {
      "abstract": "Invite your friends to draw on a shared canvas while on a FaceTime call.",
      "categories": [
        "Photos and video"
      ],
      "doc_path": "/documentation/groupactivities/drawing_content_in_a_group_session",
      "doc_url": "https://developer.apple.com/documentation/groupactivities/drawing_content_in_a_group_session",
      "download": {
        "filename": "DrawingContentInAGroupSession.zip",
        "identifier": "https://docs-assets.developer.apple.com/published/b6b88be06d/DrawingContentInAGroupSession.zip",
        "url": "https://docs-assets.developer.apple.com/published/b6b88be06d/DrawingContentInAGroupSession.zip"
      },
      "id": "groupactivities/drawing_content_in_a_group_session",
      "identifier": "doc://com.apple.documentation/documentation/groupactivities/drawing_content_in_a_group_session",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/groupactivities/drawing_content_in_a_group_session.json",
      "module": "GroupActivities",
      "modules": [
        "GroupActivities"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Group Activities",
        "technology-index:Sample Code Library",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Drawing content in a group session"
    },
    {
      "abstract": "Request authorization to query HealthKit for a user’s clinical records and display them in your app.",
      "categories": [
        "Health"
      ],
      "doc_path": "/documentation/HealthKit/accessing-a-user-s-clinical-records",
      "doc_url": "https://developer.apple.com/documentation/HealthKit/accessing-a-user-s-clinical-records",
      "download": {
        "filename": "AccessingAUsersClinicalRecords.zip",
        "identifier": "ab45cb934896/AccessingAUsersClinicalRecords.zip",
        "url": "https://docs-assets.developer.apple.com/published/ab45cb934896/AccessingAUsersClinicalRecords.zip"
      },
      "id": "healthkit/accessing-a-user-s-clinical-records",
      "identifier": "doc://com.apple.healthkit/documentation/HealthKit/accessing-a-user-s-clinical-records",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/HealthKit/accessing-a-user-s-clinical-records.json",
      "module": "HealthKit",
      "modules": [
        "HealthKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:HealthKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.2",
          "name": "Xcode"
        }
      ],
      "title": "Accessing a User’s Clinical Records"
    },
    {
      "abstract": "Query for and validate a verifiable clinical record.",
      "categories": [
        "Health"
      ],
      "doc_path": "/documentation/HealthKit/accessing-data-from-a-smart-health-card",
      "doc_url": "https://developer.apple.com/documentation/HealthKit/accessing-data-from-a-smart-health-card",
      "download": {
        "filename": "AccessingDataFromASMARTHealthCard.zip",
        "identifier": "359d4ef4aeac/AccessingDataFromASMARTHealthCard.zip",
        "url": "https://docs-assets.developer.apple.com/published/359d4ef4aeac/AccessingDataFromASMARTHealthCard.zip"
      },
      "id": "healthkit/accessing-data-from-a-smart-health-card",
      "identifier": "doc://com.apple.healthkit/documentation/HealthKit/accessing-data-from-a-smart-health-card",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/HealthKit/accessing-data-from-a-smart-health-card.json",
      "module": "HealthKit",
      "modules": [
        "HealthKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:HealthKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.3",
          "name": "Xcode"
        }
      ],
      "title": "Accessing Data from a SMART Health Card"
    },
    {
      "abstract": "Create your own workout app, quickly and easily, with HealthKit and SwiftUI.",
      "categories": [
        "Health"
      ],
      "doc_path": "/documentation/HealthKit/build-a-workout-app-for-apple-watch",
      "doc_url": "https://developer.apple.com/documentation/HealthKit/build-a-workout-app-for-apple-watch",
      "download": {
        "filename": "BuildAWorkoutAppForAppleWatch.zip",
        "identifier": "0b8f50987c9a/BuildAWorkoutAppForAppleWatch.zip",
        "url": "https://docs-assets.developer.apple.com/published/0b8f50987c9a/BuildAWorkoutAppForAppleWatch.zip"
      },
      "id": "healthkit/build-a-workout-app-for-apple-watch",
      "identifier": "doc://com.apple.healthkit/documentation/HealthKit/build-a-workout-app-for-apple-watch",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/HealthKit/build-a-workout-app-for-apple-watch.json",
      "module": "HealthKit",
      "modules": [
        "HealthKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:HealthKit",
        "technology-index:Sample Code Library",
        "technology-index:watchOS apps"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "8.0",
          "name": "watchOS"
        },
        {
          "beta": false,
          "introduced_at": "14.2",
          "name": "Xcode"
        }
      ],
      "title": "Build a workout app for Apple Watch"
    },
    {
      "abstract": "Mirror a workout from a watchOS app to its companion iOS app, and perform bidirectional communication between them.",
      "categories": [
        "Health"
      ],
      "doc_path": "/documentation/HealthKit/building-a-multidevice-workout-app",
      "doc_url": "https://developer.apple.com/documentation/HealthKit/building-a-multidevice-workout-app",
      "download": {
        "filename": "BuildingAMultideviceWorkoutApp.zip",
        "identifier": "e23bfc22d80d/BuildingAMultideviceWorkoutApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/e23bfc22d80d/BuildingAMultideviceWorkoutApp.zip"
      },
      "id": "healthkit/building-a-multidevice-workout-app",
      "identifier": "doc://com.apple.healthkit/documentation/HealthKit/building-a-multidevice-workout-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/HealthKit/building-a-multidevice-workout-app.json",
      "module": "HealthKit",
      "modules": [
        "HealthKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:HealthKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "10.0",
          "name": "watchOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Building a multidevice workout app"
    },
    {
      "abstract": "Start a workout in iOS, control it from the Lock Screen with App Intents, and present the workout status with Live Activities.",
      "categories": [
        "Health"
      ],
      "doc_path": "/documentation/HealthKit/building-a-workout-app-for-iphone-and-ipad",
      "doc_url": "https://developer.apple.com/documentation/HealthKit/building-a-workout-app-for-iphone-and-ipad",
      "download": {
        "filename": "BuildingAWorkoutAppForIPhoneAndIPad.zip",
        "identifier": "28a0ce913504/BuildingAWorkoutAppForIPhoneAndIPad.zip",
        "url": "https://docs-assets.developer.apple.com/published/28a0ce913504/BuildingAWorkoutAppForIPhoneAndIPad.zip"
      },
      "id": "healthkit/building-a-workout-app-for-iphone-and-ipad",
      "identifier": "doc://com.apple.healthkit/documentation/HealthKit/building-a-workout-app-for-iphone-and-ipad",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/HealthKit/building-a-workout-app-for-iphone-and-ipad.json",
      "module": "HealthKit",
      "modules": [
        "HealthKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:HealthKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Building a workout app for iPhone and iPad"
    },
    {
      "abstract": "Create a health app that allows a clinical care team to send and receive mobility data.",
      "categories": [
        "Health"
      ],
      "doc_path": "/documentation/HealthKit/creating-a-mobility-health-app",
      "doc_url": "https://developer.apple.com/documentation/HealthKit/creating-a-mobility-health-app",
      "download": {
        "filename": "CreatingAMobilityHealthApp.zip",
        "identifier": "c24529449386/CreatingAMobilityHealthApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/c24529449386/CreatingAMobilityHealthApp.zip"
      },
      "id": "healthkit/creating-a-mobility-health-app",
      "identifier": "doc://com.apple.healthkit/documentation/HealthKit/creating-a-mobility-health-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/HealthKit/creating-a-mobility-health-app.json",
      "module": "HealthKit",
      "modules": [
        "HealthKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:HealthKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.4",
          "name": "Xcode"
        }
      ],
      "title": "Creating a Mobility Health App"
    },
    {
      "abstract": "Fetch medications and dose events from the HealthKit store, and create symptom samples to associate with them.",
      "categories": [
        "Health"
      ],
      "doc_path": "/documentation/HealthKit/logging-symptoms-associated-with-a-medication",
      "doc_url": "https://developer.apple.com/documentation/HealthKit/logging-symptoms-associated-with-a-medication",
      "download": {
        "filename": "LoggingSymptomsAssociatedWithAMedication.zip",
        "identifier": "dbe02a347c0c/LoggingSymptomsAssociatedWithAMedication.zip",
        "url": "https://docs-assets.developer.apple.com/published/dbe02a347c0c/LoggingSymptomsAssociatedWithAMedication.zip"
      },
      "id": "healthkit/logging-symptoms-associated-with-a-medication",
      "identifier": "doc://com.apple.healthkit/documentation/HealthKit/logging-symptoms-associated-with-a-medication",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/HealthKit/logging-symptoms-associated-with-a-medication.json",
      "module": "HealthKit",
      "modules": [
        "HealthKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:HealthKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Logging symptoms associated with a medication"
    },
    {
      "abstract": "Share and read heartbeat and quantity series data using series builders and queries.",
      "categories": [
        "Health"
      ],
      "doc_path": "/documentation/HealthKit/reading-and-writing-healthkit-series-data",
      "doc_url": "https://developer.apple.com/documentation/HealthKit/reading-and-writing-healthkit-series-data",
      "download": {
        "filename": "ReadingAndWritingHealthKitSeriesData.zip",
        "identifier": "0658a642bca4/ReadingAndWritingHealthKitSeriesData.zip",
        "url": "https://docs-assets.developer.apple.com/published/0658a642bca4/ReadingAndWritingHealthKitSeriesData.zip"
      },
      "id": "healthkit/reading-and-writing-healthkit-series-data",
      "identifier": "doc://com.apple.healthkit/documentation/HealthKit/reading-and-writing-healthkit-series-data",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/HealthKit/reading-and-writing-healthkit-series-data.json",
      "module": "HealthKit",
      "modules": [
        "HealthKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:HealthKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "Xcode"
        }
      ],
      "title": "Reading and Writing HealthKit Series Data"
    },
    {
      "abstract": "Start a workout on iOS or watchOS and track and display heart rate zones.",
      "categories": [
        "WWDC26"
      ],
      "doc_path": "/documentation/HealthKit/tracking-heart-rate-zones-for-workouts",
      "doc_url": "https://developer.apple.com/documentation/HealthKit/tracking-heart-rate-zones-for-workouts",
      "download": {
        "filename": "TrackingHeartRateZonesForWorkouts.zip",
        "identifier": "af9519cac99f/TrackingHeartRateZonesForWorkouts.zip",
        "url": "https://docs-assets.developer.apple.com/published/af9519cac99f/TrackingHeartRateZonesForWorkouts.zip"
      },
      "id": "healthkit/tracking-heart-rate-zones-for-workouts",
      "identifier": "doc://com.apple.healthkit/documentation/HealthKit/tracking-heart-rate-zones-for-workouts",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/HealthKit/tracking-heart-rate-zones-for-workouts.json",
      "module": "HealthKit",
      "modules": [
        "HealthKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:HealthKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iPadOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "watchOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Tracking heart rate zones for workouts"
    },
    {
      "abstract": "Incorporate HealthKit State of Mind into your app and visualize the data in visionOS.",
      "categories": [
        "Health"
      ],
      "doc_path": "/documentation/HealthKit/visualizing-healthkit-state-of-mind-in-visionos",
      "doc_url": "https://developer.apple.com/documentation/HealthKit/visualizing-healthkit-state-of-mind-in-visionos",
      "download": {
        "filename": "VisualizingHealthKitStateOfMindInVisionOS.zip",
        "identifier": "7227217a75ce/VisualizingHealthKitStateOfMindInVisionOS.zip",
        "url": "https://docs-assets.developer.apple.com/published/7227217a75ce/VisualizingHealthKitStateOfMindInVisionOS.zip"
      },
      "id": "healthkit/visualizing-healthkit-state-of-mind-in-visionos",
      "identifier": "doc://com.apple.healthkit/documentation/HealthKit/visualizing-healthkit-state-of-mind-in-visionos",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/HealthKit/visualizing-healthkit-state-of-mind-in-visionos.json",
      "module": "HealthKit",
      "modules": [
        "HealthKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:HealthKit",
        "technology-index:Sample Code Library",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.1",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.1",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.1",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "2.1",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.1",
          "name": "Xcode"
        }
      ],
      "title": "Visualizing HealthKit State of Mind in visionOS"
    },
    {
      "abstract": "Process keyboard-related data from a human interface device and dispatch events to the system.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/HIDDriverKit/handling-keyboard-events-from-a-human-interface-device",
      "doc_url": "https://developer.apple.com/documentation/HIDDriverKit/handling-keyboard-events-from-a-human-interface-device",
      "download": {
        "filename": "HandlingKeyboardEventsFromAHumanInterfaceDevice.zip",
        "identifier": "40a242cdc60b/HandlingKeyboardEventsFromAHumanInterfaceDevice.zip",
        "url": "https://docs-assets.developer.apple.com/published/40a242cdc60b/HandlingKeyboardEventsFromAHumanInterfaceDevice.zip"
      },
      "id": "hiddriverkit/handling-keyboard-events-from-a-human-interface-device",
      "identifier": "doc://com.apple.hiddriverkit/documentation/HIDDriverKit/handling-keyboard-events-from-a-human-interface-device",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/HIDDriverKit/handling-keyboard-events-from-a-human-interface-device.json",
      "module": "HIDDriverKit",
      "modules": [
        "HIDDriverKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:DriverKit",
        "technology-index:HIDDriverKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "19.0",
          "name": "DriverKit"
        },
        {
          "beta": false,
          "introduced_at": "10.15",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Xcode"
        }
      ],
      "title": "Handling Keyboard Events from a Human Interface Device"
    },
    {
      "abstract": "Process stylus-related input from a human interface device and dispatch events to the system.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/HIDDriverKit/handling-stylus-input-from-a-human-interface-device",
      "doc_url": "https://developer.apple.com/documentation/HIDDriverKit/handling-stylus-input-from-a-human-interface-device",
      "download": {
        "filename": "HandlingStylusInputFromAHumanInterfaceDevice.zip",
        "identifier": "e73ddf0204c5/HandlingStylusInputFromAHumanInterfaceDevice.zip",
        "url": "https://docs-assets.developer.apple.com/published/e73ddf0204c5/HandlingStylusInputFromAHumanInterfaceDevice.zip"
      },
      "id": "hiddriverkit/handling-stylus-input-from-a-human-interface-device",
      "identifier": "doc://com.apple.hiddriverkit/documentation/HIDDriverKit/handling-stylus-input-from-a-human-interface-device",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/HIDDriverKit/handling-stylus-input-from-a-human-interface-device.json",
      "module": "HIDDriverKit",
      "modules": [
        "HIDDriverKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:DriverKit",
        "technology-index:HIDDriverKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "19.0",
          "name": "DriverKit"
        },
        {
          "beta": false,
          "introduced_at": "10.15",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Xcode"
        }
      ],
      "title": "Handling Stylus Input from a Human Interface Device"
    },
    {
      "abstract": "Give users a familiar experience when they manage HomeKit accessories.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/HomeKit/configuring-a-home-automation-device",
      "doc_url": "https://developer.apple.com/documentation/HomeKit/configuring-a-home-automation-device",
      "download": {
        "filename": "ConfiguringAHomeAutomationDevice.zip",
        "identifier": "41e814f00d11/ConfiguringAHomeAutomationDevice.zip",
        "url": "https://docs-assets.developer.apple.com/published/41e814f00d11/ConfiguringAHomeAutomationDevice.zip"
      },
      "id": "homekit/configuring-a-home-automation-device",
      "identifier": "doc://com.apple.homekit/documentation/HomeKit/configuring-a-home-automation-device",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/HomeKit/configuring-a-home-automation-device.json",
      "module": "HomeKit",
      "modules": [
        "HomeKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:HomeKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.1",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "12.1",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "12.1",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "10.2",
          "name": "Xcode"
        }
      ],
      "title": "Configuring a home automation device"
    },
    {
      "abstract": "Find all the automation accessories in the primary home and control their state.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/HomeKit/interacting-with-a-home-automation-network",
      "doc_url": "https://developer.apple.com/documentation/HomeKit/interacting-with-a-home-automation-network",
      "download": {
        "filename": "InteractingWithAHomeAutomationNetwork.zip",
        "identifier": "cece14a55f82/InteractingWithAHomeAutomationNetwork.zip",
        "url": "https://docs-assets.developer.apple.com/published/cece14a55f82/InteractingWithAHomeAutomationNetwork.zip"
      },
      "id": "homekit/interacting-with-a-home-automation-network",
      "identifier": "doc://com.apple.homekit/documentation/HomeKit/interacting-with-a-home-automation-network",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/HomeKit/interacting-with-a-home-automation-network.json",
      "module": "HomeKit",
      "modules": [
        "HomeKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:HomeKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.1",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "12.1",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "12.1",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.3",
          "name": "Xcode"
        }
      ],
      "title": "Interacting with a home automation network"
    },
    {
      "abstract": "Create spatial photos for visionOS by packaging a pair of left- and right-eye images as a stereo HEIC file with related spatial metadata.",
      "categories": [
        "Graphics"
      ],
      "doc_path": "/documentation/ImageIO/writing-spatial-photos",
      "doc_url": "https://developer.apple.com/documentation/ImageIO/writing-spatial-photos",
      "download": {
        "filename": "WritingSpatialPhotos.zip",
        "identifier": "f576a7476465/WritingSpatialPhotos.zip",
        "url": "https://docs-assets.developer.apple.com/published/f576a7476465/WritingSpatialPhotos.zip"
      },
      "id": "imageio/writing-spatial-photos",
      "identifier": "doc://com.apple.imageio/documentation/ImageIO/writing-spatial-photos",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ImageIO/writing-spatial-photos.json",
      "module": "Image I/O",
      "modules": [
        "Image I/O"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Image I/O",
        "technology-index:Sample Code Library",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Writing spatial photos"
    },
    {
      "abstract": "Prepare and package immersive video content for delivery.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/ImmersiveMediaSupport/authoring-apple-immersive-video",
      "doc_url": "https://developer.apple.com/documentation/ImmersiveMediaSupport/authoring-apple-immersive-video",
      "download": {
        "filename": "AuthoringAppleImmersiveVideo.zip",
        "identifier": "b64c668d9fd1/AuthoringAppleImmersiveVideo.zip",
        "url": "https://docs-assets.developer.apple.com/published/b64c668d9fd1/AuthoringAppleImmersiveVideo.zip"
      },
      "id": "immersivemediasupport/authoring-apple-immersive-video",
      "identifier": "doc://com.apple.immersivemediasupport/documentation/ImmersiveMediaSupport/authoring-apple-immersive-video",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ImmersiveMediaSupport/authoring-apple-immersive-video.json",
      "module": "Immersive Media Support",
      "modules": [
        "Immersive Media Support"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Immersive Media Support",
        "technology-index:Sample Code Library",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Authoring Apple Immersive Video"
    },
    {
      "abstract": "Reduce a video’s data rate while maintaining high acuity in the center of the imagery by applying foveation to immersive video content.",
      "categories": [
        "WWDC26"
      ],
      "doc_path": "/documentation/ImmersiveMediaSupport/processing-apple-immersive-video-with-foveation",
      "doc_url": "https://developer.apple.com/documentation/ImmersiveMediaSupport/processing-apple-immersive-video-with-foveation",
      "download": {
        "filename": "ProcessingAppleImmersiveVideoWithFoveation.zip",
        "identifier": "605d0f1360ab/ProcessingAppleImmersiveVideoWithFoveation.zip",
        "url": "https://docs-assets.developer.apple.com/published/605d0f1360ab/ProcessingAppleImmersiveVideoWithFoveation.zip"
      },
      "id": "immersivemediasupport/processing-apple-immersive-video-with-foveation",
      "identifier": "doc://com.apple.immersivemediasupport/documentation/ImmersiveMediaSupport/processing-apple-immersive-video-with-foveation",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ImmersiveMediaSupport/processing-apple-immersive-video-with-foveation.json",
      "module": "Immersive Media Support",
      "modules": [
        "Immersive Media Support"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Immersive Media Support",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "macOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Processing Apple Immersive Video with foveation"
    },
    {
      "abstract": "Find and connect to a modem attached to a serial port using IOKit.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/iokit/communicating_with_a_modem_on_a_serial_port",
      "doc_url": "https://developer.apple.com/documentation/iokit/communicating_with_a_modem_on_a_serial_port",
      "download": {
        "filename": "CommunicatingWithAModemOnASerialPort.zip",
        "identifier": "https://docs-assets.developer.apple.com/published/e3fdf67f42/CommunicatingWithAModemOnASerialPort.zip",
        "url": "https://docs-assets.developer.apple.com/published/e3fdf67f42/CommunicatingWithAModemOnASerialPort.zip"
      },
      "id": "iokit/communicating_with_a_modem_on_a_serial_port",
      "identifier": "doc://com.apple.documentation/documentation/iokit/communicating_with_a_modem_on_a_serial_port",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/iokit/communicating_with_a_modem_on_a_serial_port.json",
      "module": "IOKit",
      "modules": [
        "IOKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:IOKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "introduced_at": "10.6",
          "name": "macOS"
        },
        {
          "introduced_at": "11.2",
          "name": "Xcode"
        }
      ],
      "title": "Communicating with a Modem on a Serial Port"
    },
    {
      "abstract": "Set up and load a driver that logs output to the Console app.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/kernel/hardware_families/usb/building_a_simple_usb_driver",
      "doc_url": "https://developer.apple.com/documentation/kernel/hardware_families/usb/building_a_simple_usb_driver",
      "download": {
        "filename": "BuildingASimpleUSBDriver.zip",
        "identifier": "https://docs-assets.developer.apple.com/published/5a32f9bf23/BuildingASimpleUSBDriver.zip",
        "url": "https://docs-assets.developer.apple.com/published/5a32f9bf23/BuildingASimpleUSBDriver.zip"
      },
      "id": "kernel/hardware_families/usb/building_a_simple_usb_driver",
      "identifier": "doc://com.apple.documentation/documentation/kernel/hardware_families/usb/building_a_simple_usb_driver",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/kernel/hardware_families/usb/building_a_simple_usb_driver.json",
      "module": "Kernel",
      "modules": [
        "Kernel"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Kernel",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "introduced_at": "10.15",
          "name": "macOS"
        },
        {
          "introduced_at": "12.0",
          "name": "Xcode"
        }
      ],
      "title": "Building a Simple USB Driver"
    },
    {
      "abstract": "Protect a keychain item with biometric authentication.",
      "categories": [
        "Authentication"
      ],
      "doc_path": "/documentation/LocalAuthentication/accessing-keychain-items-with-face-id-or-touch-id",
      "doc_url": "https://developer.apple.com/documentation/LocalAuthentication/accessing-keychain-items-with-face-id-or-touch-id",
      "download": {
        "filename": "AccessingKeychainItemsWithFaceIDOrTouchID.zip",
        "identifier": "8f3df253eb87/AccessingKeychainItemsWithFaceIDOrTouchID.zip",
        "url": "https://docs-assets.developer.apple.com/published/8f3df253eb87/AccessingKeychainItemsWithFaceIDOrTouchID.zip"
      },
      "id": "localauthentication/accessing-keychain-items-with-face-id-or-touch-id",
      "identifier": "doc://com.apple.localauthentication/documentation/LocalAuthentication/accessing-keychain-items-with-face-id-or-touch-id",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/LocalAuthentication/accessing-keychain-items-with-face-id-or-touch-id.json",
      "module": "Local Authentication",
      "modules": [
        "Local Authentication"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Local Authentication",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.5",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.5",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.5",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.1",
          "name": "Xcode"
        }
      ],
      "title": "Accessing Keychain Items with Face ID or Touch ID"
    },
    {
      "abstract": "Supplement your own authentication scheme with biometric authentication, making it easy for users to access sensitive parts of your app.",
      "categories": [
        "Authentication"
      ],
      "doc_path": "/documentation/LocalAuthentication/logging-a-user-into-your-app-with-face-id-or-touch-id",
      "doc_url": "https://developer.apple.com/documentation/LocalAuthentication/logging-a-user-into-your-app-with-face-id-or-touch-id",
      "download": {
        "filename": "LoggingAUserIntoYourAppWithFaceIDOrTouchID.zip",
        "identifier": "a6e7eb261400/LoggingAUserIntoYourAppWithFaceIDOrTouchID.zip",
        "url": "https://docs-assets.developer.apple.com/published/a6e7eb261400/LoggingAUserIntoYourAppWithFaceIDOrTouchID.zip"
      },
      "id": "localauthentication/logging-a-user-into-your-app-with-face-id-or-touch-id",
      "identifier": "doc://com.apple.localauthentication/documentation/LocalAuthentication/logging-a-user-into-your-app-with-face-id-or-touch-id",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/LocalAuthentication/logging-a-user-into-your-app-with-face-id-or-touch-id.json",
      "module": "Local Authentication",
      "modules": [
        "Local Authentication"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Bundle Resources",
        "technology-index:Local Authentication",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.5",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.5",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.5",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.1",
          "name": "Xcode"
        }
      ],
      "title": "Logging a User into Your App with Face ID or Touch ID"
    },
    {
      "abstract": "Create app extensions that block content, perform message and composing actions, and help message security.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/MailKit/build-mail-app-extensions",
      "doc_url": "https://developer.apple.com/documentation/MailKit/build-mail-app-extensions",
      "download": {
        "filename": "BuildMailAppExtensions.zip",
        "identifier": "968e72841118/BuildMailAppExtensions.zip",
        "url": "https://docs-assets.developer.apple.com/published/968e72841118/BuildMailAppExtensions.zip"
      },
      "id": "mailkit/build-mail-app-extensions",
      "identifier": "doc://com.apple.mailkit/documentation/MailKit/build-mail-app-extensions",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/MailKit/build-mail-app-extensions.json",
      "module": "MailKit",
      "modules": [
        "MailKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AppKit",
        "technology-index:MailKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.2",
          "name": "Xcode"
        }
      ],
      "title": "Build Mail App Extensions"
    },
    {
      "abstract": "Annotate a map with location-specific data using default and customized annotation views and callouts.",
      "categories": [
        "Location and MapKit"
      ],
      "doc_path": "/documentation/MapKit/annotating-a-map-with-custom-data",
      "doc_url": "https://developer.apple.com/documentation/MapKit/annotating-a-map-with-custom-data",
      "download": {
        "filename": "AnnotatingAMapWithCustomData.zip",
        "identifier": "a4bb22946fae/AnnotatingAMapWithCustomData.zip",
        "url": "https://docs-assets.developer.apple.com/published/a4bb22946fae/AnnotatingAMapWithCustomData.zip"
      },
      "id": "mapkit/annotating-a-map-with-custom-data",
      "identifier": "doc://com.apple.mapkit/documentation/MapKit/annotating-a-map-with-custom-data",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/MapKit/annotating-a-map-with-custom-data.json",
      "module": "MapKit",
      "modules": [
        "MapKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:MapKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.1",
          "name": "Xcode"
        }
      ],
      "title": "Annotating a Map with Custom Data"
    },
    {
      "abstract": "Enhance the readability of a map by replacing overlapping annotations with a clustering annotation view.",
      "categories": [
        "Location and MapKit"
      ],
      "doc_path": "/documentation/MapKit/decluttering-a-map-with-mapkit-annotation-clustering",
      "doc_url": "https://developer.apple.com/documentation/MapKit/decluttering-a-map-with-mapkit-annotation-clustering",
      "download": {
        "filename": "DeclutteringAMapWithMapKitAnnotationClustering.zip",
        "identifier": "8f52e0ee5541/DeclutteringAMapWithMapKitAnnotationClustering.zip",
        "url": "https://docs-assets.developer.apple.com/published/8f52e0ee5541/DeclutteringAMapWithMapKitAnnotationClustering.zip"
      },
      "id": "mapkit/decluttering-a-map-with-mapkit-annotation-clustering",
      "identifier": "doc://com.apple.mapkit/documentation/MapKit/decluttering-a-map-with-mapkit-annotation-clustering",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/MapKit/decluttering-a-map-with-mapkit-annotation-clustering.json",
      "module": "MapKit",
      "modules": [
        "MapKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:MapKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.3",
          "name": "Xcode"
        }
      ],
      "title": "Decluttering a Map with MapKit Annotation Clustering"
    },
    {
      "abstract": "Use the Indoor Mapping Data Format (IMDF) to show an indoor map with custom overlays and points of interest.",
      "categories": [
        "Location and MapKit"
      ],
      "doc_path": "/documentation/MapKit/displaying-an-indoor-map",
      "doc_url": "https://developer.apple.com/documentation/MapKit/displaying-an-indoor-map",
      "download": {
        "filename": "DisplayingAnIndoorMap.zip",
        "identifier": "bd14bb210dcb/DisplayingAnIndoorMap.zip",
        "url": "https://docs-assets.developer.apple.com/published/bd14bb210dcb/DisplayingAnIndoorMap.zip"
      },
      "id": "mapkit/displaying-an-indoor-map",
      "identifier": "doc://com.apple.mapkit/documentation/MapKit/displaying-an-indoor-map",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/MapKit/displaying-an-indoor-map.json",
      "module": "MapKit",
      "modules": [
        "MapKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:MapKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.6",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.6",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.6",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Displaying an Indoor Map"
    },
    {
      "abstract": "Continually update a MapKit overlay displaying the path a user travels.",
      "categories": [
        "Location and MapKit"
      ],
      "doc_path": "/documentation/MapKit/displaying-an-updating-path-of-a-user-s-location-history",
      "doc_url": "https://developer.apple.com/documentation/MapKit/displaying-an-updating-path-of-a-user-s-location-history",
      "download": {
        "filename": "DisplayingAnUpdatingPathOfAUsersLocationHistory.zip",
        "identifier": "c00f1c04d71b/DisplayingAnUpdatingPathOfAUsersLocationHistory.zip",
        "url": "https://docs-assets.developer.apple.com/published/c00f1c04d71b/DisplayingAnUpdatingPathOfAUsersLocationHistory.zip"
      },
      "id": "mapkit/displaying-an-updating-path-of-a-user-s-location-history",
      "identifier": "doc://com.apple.mapkit/documentation/MapKit/displaying-an-updating-path-of-a-user-s-location-history",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/MapKit/displaying-an-updating-path-of-a-user-s-location-history.json",
      "module": "MapKit",
      "modules": [
        "MapKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:MapKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Displaying an updating path of a user’s location history"
    },
    {
      "abstract": "Add regions of layered content to a map view.",
      "categories": [
        "Location and MapKit"
      ],
      "doc_path": "/documentation/MapKit/displaying-overlays-on-a-map",
      "doc_url": "https://developer.apple.com/documentation/MapKit/displaying-overlays-on-a-map",
      "download": {
        "filename": "DisplayingOverlaysOnAMap.zip",
        "identifier": "f14a9bc447c5/DisplayingOverlaysOnAMap.zip",
        "url": "https://docs-assets.developer.apple.com/published/f14a9bc447c5/DisplayingOverlaysOnAMap.zip"
      },
      "id": "mapkit/displaying-overlays-on-a-map",
      "identifier": "doc://com.apple.mapkit/documentation/MapKit/displaying-overlays-on-a-map",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/MapKit/displaying-overlays-on-a-map.json",
      "module": "MapKit",
      "modules": [
        "MapKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:MapKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.1",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.1",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.1",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Displaying overlays on a map"
    },
    {
      "abstract": "Provide automatic search completions for a partial search query, search the map for relevant locations nearby, and retrieve details for selected points of interest.",
      "categories": [
        "Location and MapKit"
      ],
      "doc_path": "/documentation/MapKit/interacting-with-nearby-points-of-interest",
      "doc_url": "https://developer.apple.com/documentation/MapKit/interacting-with-nearby-points-of-interest",
      "download": {
        "filename": "InteractingWithNearbyPointsOfInterest.zip",
        "identifier": "97c441e2ff4d/InteractingWithNearbyPointsOfInterest.zip",
        "url": "https://docs-assets.developer.apple.com/published/97c441e2ff4d/InteractingWithNearbyPointsOfInterest.zip"
      },
      "id": "mapkit/interacting-with-nearby-points-of-interest",
      "identifier": "doc://com.apple.mapkit/documentation/MapKit/interacting-with-nearby-points-of-interest",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/MapKit/interacting-with-nearby-points-of-interest.json",
      "module": "MapKit",
      "modules": [
        "MapKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:MapKit",
        "technology-index:Sample Code Library",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "2.2",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.2",
          "name": "Xcode"
        }
      ],
      "title": "Interacting with nearby points of interest"
    },
    {
      "abstract": "Display a richly detailed map, and use Look Around to experience an interactive view of landmarks.",
      "categories": [
        "Location and MapKit"
      ],
      "doc_path": "/documentation/mapkit/mapkit_for_appkit_and_uikit/explore_a_location_with_a_highly_detailed_map_and_look_around",
      "doc_url": "https://developer.apple.com/documentation/mapkit/mapkit_for_appkit_and_uikit/explore_a_location_with_a_highly_detailed_map_and_look_around",
      "download": {
        "filename": "ExploreALocationWithAHighlyDetailedMapAndLookAround.zip",
        "identifier": "https://docs-assets.developer.apple.com/published/693676fe6d/ExploreALocationWithAHighlyDetailedMapAndLookAround.zip",
        "url": "https://docs-assets.developer.apple.com/published/693676fe6d/ExploreALocationWithAHighlyDetailedMapAndLookAround.zip"
      },
      "id": "mapkit/mapkit_for_appkit_and_uikit/explore_a_location_with_a_highly_detailed_map_and_look_around",
      "identifier": "doc://com.apple.documentation/documentation/mapkit/mapkit_for_appkit_and_uikit/explore_a_location_with_a_highly_detailed_map_and_look_around",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/mapkit/mapkit_for_appkit_and_uikit/explore_a_location_with_a_highly_detailed_map_and_look_around.json",
      "module": "MapKit",
      "modules": [
        "MapKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "introduced_at": "16.0",
          "name": "iOS"
        },
        {
          "introduced_at": "16.0",
          "name": "iPadOS"
        },
        {
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "Explore a location with a highly detailed map and Look Around"
    },
    {
      "abstract": "Display a map that is relevant to the user by filtering points of interest and search results, and constraining the visible region.",
      "categories": [
        "Location and MapKit"
      ],
      "doc_path": "/documentation/mapkit/mkmapview/optimizing_map_views_with_filtering_and_camera_constraints",
      "doc_url": "https://developer.apple.com/documentation/mapkit/mkmapview/optimizing_map_views_with_filtering_and_camera_constraints",
      "download": {
        "filename": "OptimizingMapViewsWithFilteringAndCameraConstraints.zip",
        "identifier": "https://docs-assets.developer.apple.com/published/33a559f007/OptimizingMapViewsWithFilteringAndCameraConstraints.zip",
        "url": "https://docs-assets.developer.apple.com/published/33a559f007/OptimizingMapViewsWithFilteringAndCameraConstraints.zip"
      },
      "id": "mapkit/mkmapview/optimizing_map_views_with_filtering_and_camera_constraints",
      "identifier": "doc://com.apple.documentation/documentation/mapkit/mkmapview/optimizing_map_views_with_filtering_and_camera_constraints",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/mapkit/mkmapview/optimizing_map_views_with_filtering_and_camera_constraints.json",
      "module": "MapKit",
      "modules": [
        "MapKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "introduced_at": "11.0",
          "name": "Xcode"
        }
      ],
      "title": "Optimizing Map Views with Filtering and Camera Constraints"
    },
    {
      "abstract": "Convert place information between coordinates and user-friendly place names, get cycling directions, and conveniently display formatted addresses.",
      "categories": [
        "Location and MapKit"
      ],
      "doc_path": "/documentation/MapKit/searching-displaying-and-navigating-to-places",
      "doc_url": "https://developer.apple.com/documentation/MapKit/searching-displaying-and-navigating-to-places",
      "download": {
        "filename": "SearchingDisplayingAndNavigatingToPlaces.zip",
        "identifier": "78061535b53d/SearchingDisplayingAndNavigatingToPlaces.zip",
        "url": "https://docs-assets.developer.apple.com/published/78061535b53d/SearchingDisplayingAndNavigatingToPlaces.zip"
      },
      "id": "mapkit/searching-displaying-and-navigating-to-places",
      "identifier": "doc://com.apple.mapkit/documentation/MapKit/searching-displaying-and-navigating-to-places",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/MapKit/searching-displaying-and-navigating-to-places.json",
      "module": "MapKit",
      "modules": [
        "MapKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:MapKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Searching, displaying, and navigating to places"
    },
    {
      "abstract": "Use the Indoor Mapping Data Format (IMDF) to show an indoor map with custom overlays and points of interest in your browser.",
      "categories": [
        "Location and MapKit"
      ],
      "doc_path": "/documentation/MapKitJS/displaying-indoor-maps-with-mapkit-js",
      "doc_url": "https://developer.apple.com/documentation/MapKitJS/displaying-indoor-maps-with-mapkit-js",
      "download": {
        "filename": "DisplayingIndoorMapsWithMapKitJS.zip",
        "identifier": "5fdc9ab9f11f/DisplayingIndoorMapsWithMapKitJS.zip",
        "url": "https://docs-assets.developer.apple.com/published/5fdc9ab9f11f/DisplayingIndoorMapsWithMapKitJS.zip"
      },
      "id": "mapkitjs/displaying-indoor-maps-with-mapkit-js",
      "identifier": "doc://com.apple.mapkitjs/documentation/MapKitJS/displaying-indoor-maps-with-mapkit-js",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/MapKitJS/displaying-indoor-maps-with-mapkit-js.json",
      "module": "MapKit JS",
      "modules": [
        "MapKit JS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:MapKit JS",
        "technology-index:Sample Code Library"
      ],
      "platforms": [],
      "title": "Displaying Indoor Maps with MapKit JS"
    },
    {
      "abstract": "Adjust your UI when a person chooses to dim flashing lights on their Apple device.",
      "categories": [
        "Accessibility"
      ],
      "doc_path": "/documentation/MediaAccessibility/responding-to-changes-in-the-flashing-lights-setting",
      "doc_url": "https://developer.apple.com/documentation/MediaAccessibility/responding-to-changes-in-the-flashing-lights-setting",
      "download": {
        "filename": "RespondingToChangesInTheFlashingLightsSetting.zip",
        "identifier": "04a9293f1d3b/RespondingToChangesInTheFlashingLightsSetting.zip",
        "url": "https://docs-assets.developer.apple.com/published/04a9293f1d3b/RespondingToChangesInTheFlashingLightsSetting.zip"
      },
      "id": "mediaaccessibility/responding-to-changes-in-the-flashing-lights-setting",
      "identifier": "doc://com.apple.mediaaccessibility/documentation/MediaAccessibility/responding-to-changes-in-the-flashing-lights-setting",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/MediaAccessibility/responding-to-changes-in-the-flashing-lights-setting.json",
      "module": "Media Accessibility",
      "modules": [
        "Media Accessibility"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Media Accessibility",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.4",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.4",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.4",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Xcode"
        }
      ],
      "title": "Responding to changes in the flashing lights setting"
    },
    {
      "abstract": "Ensure your app is eligible to become the Now Playing app by adopting best practices for providing Now Playing info and registering for remote command center actions.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/MediaPlayer/becoming-a-now-playable-app",
      "doc_url": "https://developer.apple.com/documentation/MediaPlayer/becoming-a-now-playable-app",
      "download": {
        "filename": "BecomingANowPlayableApp.zip",
        "identifier": "6eacaf8a4885/BecomingANowPlayableApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/6eacaf8a4885/BecomingANowPlayableApp.zip"
      },
      "id": "mediaplayer/becoming-a-now-playable-app",
      "identifier": "doc://com.apple.mediaplayer/documentation/MediaPlayer/becoming-a-now-playable-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/MediaPlayer/becoming-a-now-playable-app.json",
      "module": "Media Player",
      "modules": [
        "Media Player"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Media Player",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.2",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "12.2",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "12.2",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "10.14",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "12.2",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Xcode"
        }
      ],
      "title": "Becoming a now playable app"
    },
    {
      "abstract": "Expand on the Messages sticker app template to create an app with a customized user interface.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/Messages/creating-a-sticker-app-with-a-custom-layout",
      "doc_url": "https://developer.apple.com/documentation/Messages/creating-a-sticker-app-with-a-custom-layout",
      "download": {
        "filename": "CreatingAStickerAppWithACustomLayout.zip",
        "identifier": "f8e004f3708c/CreatingAStickerAppWithACustomLayout.zip",
        "url": "https://docs-assets.developer.apple.com/published/f8e004f3708c/CreatingAStickerAppWithACustomLayout.zip"
      },
      "id": "messages/creating-a-sticker-app-with-a-custom-layout",
      "identifier": "doc://com.apple.messages/documentation/Messages/creating-a-sticker-app-with-a-custom-layout",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Messages/creating-a-sticker-app-with-a-custom-layout.json",
      "module": "Messages",
      "modules": [
        "Messages"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Messages",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.2",
          "name": "Xcode"
        }
      ],
      "title": "Creating a Sticker App with a Custom Layout"
    },
    {
      "abstract": "Allow users to collaborate on the design of ice cream sundae stickers.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/Messages/icecreambuilder-building-an-imessage-extension",
      "doc_url": "https://developer.apple.com/documentation/Messages/icecreambuilder-building-an-imessage-extension",
      "download": {
        "filename": "IceCreamBuilderBuildingAnIMessageExtension.zip",
        "identifier": "653791dcf16d/IceCreamBuilderBuildingAnIMessageExtension.zip",
        "url": "https://docs-assets.developer.apple.com/published/653791dcf16d/IceCreamBuilderBuildingAnIMessageExtension.zip"
      },
      "id": "messages/icecreambuilder-building-an-imessage-extension",
      "identifier": "doc://com.apple.messages/documentation/Messages/icecreambuilder-building-an-imessage-extension",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Messages/icecreambuilder-building-an-imessage-extension.json",
      "module": "Messages",
      "modules": [
        "Messages"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Messages",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "IceCreamBuilder: Building an iMessage Extension"
    },
    {
      "abstract": "Generate ray-traced images with motion blur using GPU-based parallel processing.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/accelerating-ray-tracing-and-motion-blur-using-metal",
      "doc_url": "https://developer.apple.com/documentation/Metal/accelerating-ray-tracing-and-motion-blur-using-metal",
      "download": {
        "filename": "AcceleratingRayTracingAndMotionBlurUsingMetal.zip",
        "identifier": "88af39825a6e/AcceleratingRayTracingAndMotionBlurUsingMetal.zip",
        "url": "https://docs-assets.developer.apple.com/published/88af39825a6e/AcceleratingRayTracingAndMotionBlurUsingMetal.zip"
      },
      "id": "metal/accelerating-ray-tracing-and-motion-blur-using-metal",
      "identifier": "doc://com.apple.metal/documentation/Metal/accelerating-ray-tracing-and-motion-blur-using-metal",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/accelerating-ray-tracing-and-motion-blur-using-metal.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Metal Performance Shaders",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Accelerating ray tracing and motion blur using Metal"
    },
    {
      "abstract": "Implement ray-traced rendering using GPU-based parallel processing.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/accelerating-ray-tracing-using-metal",
      "doc_url": "https://developer.apple.com/documentation/Metal/accelerating-ray-tracing-using-metal",
      "download": {
        "filename": "AcceleratingRayTracingUsingMetal.zip",
        "identifier": "ade36d76f1bb/AcceleratingRayTracingUsingMetal.zip",
        "url": "https://docs-assets.developer.apple.com/published/ade36d76f1bb/AcceleratingRayTracingUsingMetal.zip"
      },
      "id": "metal/accelerating-ray-tracing-using-metal",
      "identifier": "doc://com.apple.metal/documentation/Metal/accelerating-ray-tracing-using-metal",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/accelerating-ray-tracing-using-metal.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Accelerating ray tracing using Metal"
    },
    {
      "abstract": "Pace rendering with minimal input latency while providing essential information to the operating system for power-efficient rendering, thermal mitigation, and the scheduling of sustainable workloads.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/achieving-smooth-frame-rates-with-a-metal-display-link",
      "doc_url": "https://developer.apple.com/documentation/Metal/achieving-smooth-frame-rates-with-a-metal-display-link",
      "download": {
        "filename": "AchievingSmoothFrameRatesWithMetalsDisplayLink.zip",
        "identifier": "37aa0e2a751f/AchievingSmoothFrameRatesWithMetalsDisplayLink.zip",
        "url": "https://docs-assets.developer.apple.com/published/37aa0e2a751f/AchievingSmoothFrameRatesWithMetalsDisplayLink.zip"
      },
      "id": "metal/achieving-smooth-frame-rates-with-a-metal-display-link",
      "identifier": "doc://com.apple.metal/documentation/Metal/achieving-smooth-frame-rates-with-a-metal-display-link",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/achieving-smooth-frame-rates-with-a-metal-display-link.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Achieving smooth frame rates with a Metal display link"
    },
    {
      "abstract": "Choose and render meshes with several levels of detail using object and mesh shaders.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/adjusting-the-level-of-detail-using-metal-mesh-shaders",
      "doc_url": "https://developer.apple.com/documentation/Metal/adjusting-the-level-of-detail-using-metal-mesh-shaders",
      "download": {
        "filename": "AdjustingTheLevelOfDetailUsingMetalMeshShaders.zip",
        "identifier": "d68116010a56/AdjustingTheLevelOfDetailUsingMetalMeshShaders.zip",
        "url": "https://docs-assets.developer.apple.com/published/d68116010a56/AdjustingTheLevelOfDetailUsingMetalMeshShaders.zip"
      },
      "id": "metal/adjusting-the-level-of-detail-using-metal-mesh-shaders",
      "identifier": "doc://com.apple.metal/documentation/Metal/adjusting-the-level-of-detail-using-metal-mesh-shaders",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/adjusting-the-level-of-detail-using-metal-mesh-shaders.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Adjusting the level of detail using Metal mesh shaders"
    },
    {
      "abstract": "Determine which pixels are visible in a scene by using a depth texture.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/calculating-primitive-visibility-using-depth-testing",
      "doc_url": "https://developer.apple.com/documentation/Metal/calculating-primitive-visibility-using-depth-testing",
      "download": {
        "filename": "CalculatingPrimitiveVisibilityUsingDepthTesting.zip",
        "identifier": "ea4f1de05ccc/CalculatingPrimitiveVisibilityUsingDepthTesting.zip",
        "url": "https://docs-assets.developer.apple.com/published/ea4f1de05ccc/CalculatingPrimitiveVisibilityUsingDepthTesting.zip"
      },
      "id": "metal/calculating-primitive-visibility-using-depth-testing",
      "identifier": "doc://com.apple.metal/documentation/Metal/calculating-primitive-visibility-using-depth-testing",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/calculating-primitive-visibility-using-depth-testing.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Calculating primitive visibility using depth testing"
    },
    {
      "abstract": "Invoke a Metal frame capture from your app, then save the resulting GPU trace to a file or view it in Xcode.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/capturing-metal-commands-programmatically",
      "doc_url": "https://developer.apple.com/documentation/Metal/capturing-metal-commands-programmatically",
      "download": {
        "filename": "CapturingMetalCommandsProgrammatically.zip",
        "identifier": "b3b3093326a2/CapturingMetalCommandsProgrammatically.zip",
        "url": "https://docs-assets.developer.apple.com/published/b3b3093326a2/CapturingMetalCommandsProgrammatically.zip"
      },
      "id": "metal/capturing-metal-commands-programmatically",
      "identifier": "doc://com.apple.metal/documentation/Metal/capturing-metal-commands-programmatically",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/capturing-metal-commands-programmatically.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "10.15",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "Xcode"
        }
      ],
      "title": "Capturing Metal commands programmatically"
    },
    {
      "abstract": "Run concurrent blit commands and then a compute dispatch in a single pass with a unified compute encoder.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/combining-blit-and-compute-operations-in-a-single-pass",
      "doc_url": "https://developer.apple.com/documentation/Metal/combining-blit-and-compute-operations-in-a-single-pass",
      "download": {
        "filename": "CombiningBlitAndComputeOperationsInASinglePass.zip",
        "identifier": "bd2eacf0a83d/CombiningBlitAndComputeOperationsInASinglePass.zip",
        "url": "https://docs-assets.developer.apple.com/published/bd2eacf0a83d/CombiningBlitAndComputeOperationsInASinglePass.zip"
      },
      "id": "metal/combining-blit-and-compute-operations-in-a-single-pass",
      "identifier": "doc://com.apple.metal/documentation/Metal/combining-blit-and-compute-operations-in-a-single-pass",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/combining-blit-and-compute-operations-in-a-single-pass.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Combining blit and compute operations in a single pass"
    },
    {
      "abstract": "Explicitly enumerate a ray’s intersections with acceleration structures by creating an intersection query object.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/control-the-ray-tracing-process-using-intersection-queries",
      "doc_url": "https://developer.apple.com/documentation/Metal/control-the-ray-tracing-process-using-intersection-queries",
      "download": {
        "filename": "ControlTheRayTracingProcessUsingIntersectionQueries.zip",
        "identifier": "e103f06afb0b/ControlTheRayTracingProcessUsingIntersectionQueries.zip",
        "url": "https://docs-assets.developer.apple.com/published/e103f06afb0b/ControlTheRayTracingProcessUsingIntersectionQueries.zip"
      },
      "id": "metal/control-the-ray-tracing-process-using-intersection-queries",
      "identifier": "doc://com.apple.metal/documentation/Metal/control-the-ray-tracing-process-using-intersection-queries",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/control-the-ray-tracing-process-using-intersection-queries.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Control the ray tracing process using intersection queries"
    },
    {
      "abstract": "Build a 3D application that integrates with Hydra and USD.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/creating-a-3d-application-with-hydra-rendering",
      "doc_url": "https://developer.apple.com/documentation/Metal/creating-a-3d-application-with-hydra-rendering",
      "download": {
        "filename": "CreatingA3DApplicationWithHydraRendering.zip",
        "identifier": "fc450e9ee3a6/CreatingA3DApplicationWithHydraRendering.zip",
        "url": "https://docs-assets.developer.apple.com/published/fc450e9ee3a6/CreatingA3DApplicationWithHydraRendering.zip"
      },
      "id": "metal/creating-a-3d-application-with-hydra-rendering",
      "identifier": "doc://com.apple.metal/documentation/Metal/creating-a-3d-application-with-hydra-rendering",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/creating-a-3d-application-with-hydra-rendering.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [],
      "title": "Creating a 3D application with hydra rendering"
    },
    {
      "abstract": "Implement a lightweight view for Metal rendering that’s customized to your app’s needs.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/creating-a-custom-metal-view",
      "doc_url": "https://developer.apple.com/documentation/Metal/creating-a-custom-metal-view",
      "download": {
        "filename": "CreatingACustomMetalView.zip",
        "identifier": "94ef84014d42/CreatingACustomMetalView.zip",
        "url": "https://docs-assets.developer.apple.com/published/94ef84014d42/CreatingACustomMetalView.zip"
      },
      "id": "metal/creating-a-custom-metal-view",
      "identifier": "doc://com.apple.metal/documentation/Metal/creating-a-custom-metal-view",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/creating-a-custom-metal-view.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Creating a custom Metal view"
    },
    {
      "abstract": "Compile a library of shaders and write it to a file as a dynamically linked library.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/creating-a-metal-dynamic-library",
      "doc_url": "https://developer.apple.com/documentation/Metal/creating-a-metal-dynamic-library",
      "download": {
        "filename": "CreatingAMetalDynamicLibrary.zip",
        "identifier": "77f04547135f/CreatingAMetalDynamicLibrary.zip",
        "url": "https://docs-assets.developer.apple.com/published/77f04547135f/CreatingAMetalDynamicLibrary.zip"
      },
      "id": "metal/creating-a-metal-dynamic-library",
      "identifier": "doc://com.apple.metal/documentation/Metal/creating-a-metal-dynamic-library",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/creating-a-metal-dynamic-library.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Creating a Metal dynamic library"
    },
    {
      "abstract": "Load image data into a texture and apply it to a quadrangle.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/creating-and-sampling-textures",
      "doc_url": "https://developer.apple.com/documentation/Metal/creating-and-sampling-textures",
      "download": {
        "filename": "CreatingAndSamplingTextures.zip",
        "identifier": "6f670b0b5d94/CreatingAndSamplingTextures.zip",
        "url": "https://docs-assets.developer.apple.com/published/6f670b0b5d94/CreatingAndSamplingTextures.zip"
      },
      "id": "metal/creating-and-sampling-textures",
      "identifier": "doc://com.apple.metal/documentation/Metal/creating-and-sampling-textures",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/creating-and-sampling-textures.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Creating and sampling textures"
    },
    {
      "abstract": "Draw a scene without rendering hidden geometry by checking whether each object in the scene is visible.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/culling-occluded-geometry-using-the-visibility-result-buffer",
      "doc_url": "https://developer.apple.com/documentation/Metal/culling-occluded-geometry-using-the-visibility-result-buffer",
      "download": {
        "filename": "CullingOccludedGeometryUsingTheVisibilityResultBuffer.zip",
        "identifier": "5cf090541e47/CullingOccludedGeometryUsingTheVisibilityResultBuffer.zip",
        "url": "https://docs-assets.developer.apple.com/published/5cf090541e47/CullingOccludedGeometryUsingTheVisibilityResultBuffer.zip"
      },
      "id": "metal/culling-occluded-geometry-using-the-visibility-result-buffer",
      "identifier": "doc://com.apple.metal/documentation/Metal/culling-occluded-geometry-using-the-visibility-result-buffer",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/culling-occluded-geometry-using-the-visibility-result-buffer.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Culling occluded geometry using the visibility result buffer"
    },
    {
      "abstract": "Implement a custom operation in PyTorch that uses Metal kernels to improve performance.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/customizing-a-pytorch-operation",
      "doc_url": "https://developer.apple.com/documentation/Metal/customizing-a-pytorch-operation",
      "download": {
        "filename": "CustomizingAPyTorchOperation.zip",
        "identifier": "6b82559cf644/CustomizingAPyTorchOperation.zip",
        "url": "https://docs-assets.developer.apple.com/published/6b82559cf644/CustomizingAPyTorchOperation.zip"
      },
      "id": "metal/customizing-a-pytorch-operation",
      "identifier": "doc://com.apple.metal/documentation/Metal/customizing-a-pytorch-operation",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/customizing-a-pytorch-operation.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [],
      "title": "Customizing a PyTorch operation"
    },
    {
      "abstract": "Implement a custom operation that uses Metal kernels to accelerate neural-network training performance.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/customizing-a-tensorflow-operation",
      "doc_url": "https://developer.apple.com/documentation/Metal/customizing-a-tensorflow-operation",
      "download": {
        "filename": "CustomizingATensorFlowOperation.zip",
        "identifier": "da6dd297d52f/CustomizingATensorFlowOperation.zip",
        "url": "https://docs-assets.developer.apple.com/published/da6dd297d52f/CustomizingATensorFlowOperation.zip"
      },
      "id": "metal/customizing-a-tensorflow-operation",
      "identifier": "doc://com.apple.metal/documentation/Metal/customizing-a-tensorflow-operation",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/customizing-a-tensorflow-operation.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [],
      "title": "Customizing a TensorFlow operation"
    },
    {
      "abstract": "Render into an offscreen texture by creating a custom render pass.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/customizing-render-pass-setup",
      "doc_url": "https://developer.apple.com/documentation/Metal/customizing-render-pass-setup",
      "download": {
        "filename": "CustomizingRenderPassSetup.zip",
        "identifier": "b88a5bf6a382/CustomizingRenderPassSetup.zip",
        "url": "https://docs-assets.developer.apple.com/published/b88a5bf6a382/CustomizingRenderPassSetup.zip"
      },
      "id": "metal/customizing-render-pass-setup",
      "identifier": "doc://com.apple.metal/documentation/Metal/customizing-render-pass-setup",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/customizing-render-pass-setup.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Customizing render pass setup"
    },
    {
      "abstract": "Define custom shader behavior at runtime by creating functions from existing ones and preferentially linking to others in a dynamic library.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/customizing-shaders-using-function-pointers-and-stitching",
      "doc_url": "https://developer.apple.com/documentation/Metal/customizing-shaders-using-function-pointers-and-stitching",
      "download": {
        "filename": "CustomizingShadersUsingFunctionPointersAndStitching.zip",
        "identifier": "9978d349150a/CustomizingShadersUsingFunctionPointersAndStitching.zip",
        "url": "https://docs-assets.developer.apple.com/published/9978d349150a/CustomizingShadersUsingFunctionPointersAndStitching.zip"
      },
      "id": "metal/customizing-shaders-using-function-pointers-and-stitching",
      "identifier": "doc://com.apple.metal/documentation/Metal/customizing-shaders-using-function-pointers-and-stitching",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/customizing-shaders-using-function-pointers-and-stitching.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Customizing shaders using function pointers and stitching"
    },
    {
      "abstract": "Render a colorful, rotating 2D triangle by running draw commands with a render pipeline on a GPU.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/drawing-a-triangle-with-metal-4",
      "doc_url": "https://developer.apple.com/documentation/Metal/drawing-a-triangle-with-metal-4",
      "download": {
        "filename": "DrawingATriangleWithMetal4.zip",
        "identifier": "afbc1ba209ed/DrawingATriangleWithMetal4.zip",
        "url": "https://docs-assets.developer.apple.com/published/afbc1ba209ed/DrawingATriangleWithMetal4.zip"
      },
      "id": "metal/drawing-a-triangle-with-metal-4",
      "identifier": "doc://com.apple.metal/documentation/Metal/drawing-a-triangle-with-metal-4",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/drawing-a-triangle-with-metal-4.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Drawing a triangle with Metal 4"
    },
    {
      "abstract": "Use a compute pass to encode an argument buffer and access its arguments in a subsequent render pass.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/encoding-argument-buffers-on-the-gpu",
      "doc_url": "https://developer.apple.com/documentation/Metal/encoding-argument-buffers-on-the-gpu",
      "download": {
        "filename": "EncodingArgumentBuffersOnTheGPU.zip",
        "identifier": "1c138b5e911a/EncodingArgumentBuffersOnTheGPU.zip",
        "url": "https://docs-assets.developer.apple.com/published/1c138b5e911a/EncodingArgumentBuffersOnTheGPU.zip"
      },
      "id": "metal/encoding-argument-buffers-on-the-gpu",
      "identifier": "doc://com.apple.metal/documentation/Metal/encoding-argument-buffers-on-the-gpu",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/encoding-argument-buffers-on-the-gpu.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Encoding argument buffers on the GPU"
    },
    {
      "abstract": "Reduce CPU overhead and simplify your command execution by reusing commands.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/encoding-indirect-command-buffers-on-the-cpu",
      "doc_url": "https://developer.apple.com/documentation/Metal/encoding-indirect-command-buffers-on-the-cpu",
      "download": {
        "filename": "EncodingIndirectCommandBuffersOnTheCPU.zip",
        "identifier": "2af775e98586/EncodingIndirectCommandBuffersOnTheCPU.zip",
        "url": "https://docs-assets.developer.apple.com/published/2af775e98586/EncodingIndirectCommandBuffersOnTheCPU.zip"
      },
      "id": "metal/encoding-indirect-command-buffers-on-the-cpu",
      "identifier": "doc://com.apple.metal/documentation/Metal/encoding-indirect-command-buffers-on-the-cpu",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/encoding-indirect-command-buffers-on-the-cpu.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Encoding indirect command buffers on the CPU"
    },
    {
      "abstract": "Maximize CPU to GPU parallelization by generating render commands on the GPU.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/encoding-indirect-command-buffers-on-the-gpu",
      "doc_url": "https://developer.apple.com/documentation/Metal/encoding-indirect-command-buffers-on-the-gpu",
      "download": {
        "filename": "EncodingIndirectCommandBuffersOnTheGPU.zip",
        "identifier": "7aef47e24b2b/EncodingIndirectCommandBuffersOnTheGPU.zip",
        "url": "https://docs-assets.developer.apple.com/published/7aef47e24b2b/EncodingIndirectCommandBuffersOnTheGPU.zip"
      },
      "id": "metal/encoding-indirect-command-buffers-on-the-gpu",
      "identifier": "doc://com.apple.metal/documentation/Metal/encoding-indirect-command-buffers-on-the-gpu",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/encoding-indirect-command-buffers-on-the-gpu.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Encoding indirect command buffers on the GPU"
    },
    {
      "abstract": "Use events to synchronize access to resources allocated on a heap.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/implementing-a-multistage-image-filter-using-heaps-and-events",
      "doc_url": "https://developer.apple.com/documentation/Metal/implementing-a-multistage-image-filter-using-heaps-and-events",
      "download": {
        "filename": "ImplementingAMultistageImageFilterUsingHeapsAndEvents.zip",
        "identifier": "3371950c95fa/ImplementingAMultistageImageFilterUsingHeapsAndEvents.zip",
        "url": "https://docs-assets.developer.apple.com/published/3371950c95fa/ImplementingAMultistageImageFilterUsingHeapsAndEvents.zip"
      },
      "id": "metal/implementing-a-multistage-image-filter-using-heaps-and-events",
      "identifier": "doc://com.apple.metal/documentation/Metal/implementing-a-multistage-image-filter-using-heaps-and-events",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/implementing-a-multistage-image-filter-using-heaps-and-events.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Implementing a multistage image filter using heaps and events"
    },
    {
      "abstract": "Use fences to synchronize access to resources allocated on a heap.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/implementing-a-multistage-image-filter-using-heaps-and-fences",
      "doc_url": "https://developer.apple.com/documentation/Metal/implementing-a-multistage-image-filter-using-heaps-and-fences",
      "download": {
        "filename": "ImplementingAMultistageImageFilterUsingHeapsAndFences.zip",
        "identifier": "90274df6ea7a/ImplementingAMultistageImageFilterUsingHeapsAndFences.zip",
        "url": "https://docs-assets.developer.apple.com/published/90274df6ea7a/ImplementingAMultistageImageFilterUsingHeapsAndFences.zip"
      },
      "id": "metal/implementing-a-multistage-image-filter-using-heaps-and-fences",
      "identifier": "doc://com.apple.metal/documentation/Metal/implementing-a-multistage-image-filter-using-heaps-and-fences",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/implementing-a-multistage-image-filter-using-heaps-and-fences.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Implementing a multistage image filter using heaps and fences"
    },
    {
      "abstract": "Draw overlapping, transparent surfaces in any order by using tile shaders and image blocks.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/implementing-order-independent-transparency-with-image-blocks",
      "doc_url": "https://developer.apple.com/documentation/Metal/implementing-order-independent-transparency-with-image-blocks",
      "download": {
        "filename": "ImplementingOrderIndependentTransparencyWithImageBlocks.zip",
        "identifier": "f2960914ed50/ImplementingOrderIndependentTransparencyWithImageBlocks.zip",
        "url": "https://docs-assets.developer.apple.com/published/f2960914ed50/ImplementingOrderIndependentTransparencyWithImageBlocks.zip"
      },
      "id": "metal/implementing-order-independent-transparency-with-image-blocks",
      "identifier": "doc://com.apple.metal/documentation/Metal/implementing-order-independent-transparency-with-image-blocks",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/implementing-order-independent-transparency-with-image-blocks.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Implementing order-independent transparency with image blocks"
    },
    {
      "abstract": "Apply MSAA to enhance the rendering of edges with custom resolve options and immediate and tile-based resolve paths.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/improving-edge-rendering-quality-with-multisample-antialiasing-msaa",
      "doc_url": "https://developer.apple.com/documentation/Metal/improving-edge-rendering-quality-with-multisample-antialiasing-msaa",
      "download": {
        "filename": "ImprovingEdgeRenderingQualityWithMultisampleAntialiasingMSAA.zip",
        "identifier": "3bacf1535298/ImprovingEdgeRenderingQualityWithMultisampleAntialiasingMSAA.zip",
        "url": "https://docs-assets.developer.apple.com/published/3bacf1535298/ImprovingEdgeRenderingQualityWithMultisampleAntialiasingMSAA.zip"
      },
      "id": "metal/improving-edge-rendering-quality-with-multisample-antialiasing-msaa",
      "identifier": "doc://com.apple.metal/documentation/Metal/improving-edge-rendering-quality-with-multisample-antialiasing-msaa",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/improving-edge-rendering-quality-with-multisample-antialiasing-msaa.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Improving edge-rendering quality with multisample antialiasing (MSAA)"
    },
    {
      "abstract": "Stream texture and buffer data directly from disk into Metal resources using fast resource loading.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/loading-textures-and-models-using-metal-fast-resource-loading",
      "doc_url": "https://developer.apple.com/documentation/Metal/loading-textures-and-models-using-metal-fast-resource-loading",
      "download": {
        "filename": "LoadingTexturesAndModelsUsingMetalFastResourceLoading.zip",
        "identifier": "6015a250e92b/LoadingTexturesAndModelsUsingMetalFastResourceLoading.zip",
        "url": "https://docs-assets.developer.apple.com/published/6015a250e92b/LoadingTexturesAndModelsUsingMetalFastResourceLoading.zip"
      },
      "id": "metal/loading-textures-and-models-using-metal-fast-resource-loading",
      "identifier": "doc://com.apple.metal/documentation/Metal/loading-textures-and-models-using-metal-fast-resource-loading",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/loading-textures-and-models-using-metal-fast-resource-loading.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "Loading textures and models using Metal fast resource loading"
    },
    {
      "abstract": "Create argument buffers to organize related resources.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/managing-groups-of-resources-with-argument-buffers",
      "doc_url": "https://developer.apple.com/documentation/Metal/managing-groups-of-resources-with-argument-buffers",
      "download": {
        "filename": "ManagingGroupsOfResourcesWithArgumentBuffers.zip",
        "identifier": "16dcfbb48cec/ManagingGroupsOfResourcesWithArgumentBuffers.zip",
        "url": "https://docs-assets.developer.apple.com/published/16dcfbb48cec/ManagingGroupsOfResourcesWithArgumentBuffers.zip"
      },
      "id": "metal/managing-groups-of-resources-with-argument-buffers",
      "identifier": "doc://com.apple.metal/documentation/Metal/managing-groups-of-resources-with-argument-buffers",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/managing-groups-of-resources-with-argument-buffers.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Managing groups of resources with argument buffers"
    },
    {
      "abstract": "Replace your app’s deprecated OpenGL code with Metal.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/migrating-opengl-code-to-metal",
      "doc_url": "https://developer.apple.com/documentation/Metal/migrating-opengl-code-to-metal",
      "download": {
        "filename": "MigratingOpenGLCodeToMetal.zip",
        "identifier": "7eb52e0c29cd/MigratingOpenGLCodeToMetal.zip",
        "url": "https://docs-assets.developer.apple.com/published/7eb52e0c29cd/MigratingOpenGLCodeToMetal.zip"
      },
      "id": "metal/migrating-opengl-code-to-metal",
      "identifier": "doc://com.apple.metal/documentation/Metal/migrating-opengl-code-to-metal",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/migrating-opengl-code-to-metal.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Migrating OpenGL code to Metal"
    },
    {
      "abstract": "Draw with Metal and OpenGL in the same view using an interoperable texture.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/mixing-metal-and-opengl-rendering-in-a-view",
      "doc_url": "https://developer.apple.com/documentation/Metal/mixing-metal-and-opengl-rendering-in-a-view",
      "download": {
        "filename": "MixingMetalAndOpenGLRenderingInAView.zip",
        "identifier": "84862c7e7ce1/MixingMetalAndOpenGLRenderingInAView.zip",
        "url": "https://docs-assets.developer.apple.com/published/84862c7e7ce1/MixingMetalAndOpenGLRenderingInAView.zip"
      },
      "id": "metal/mixing-metal-and-opengl-rendering-in-a-view",
      "identifier": "doc://com.apple.metal/documentation/Metal/mixing-metal-and-opengl-rendering-in-a-view",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/mixing-metal-and-opengl-rendering-in-a-view.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Mixing Metal and OpenGL rendering in a view"
    },
    {
      "abstract": "Use advanced Metal features such as indirect command buffers, sparse textures, and variable rate rasterization to implement complex rendering techniques.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/modern-rendering-with-metal",
      "doc_url": "https://developer.apple.com/documentation/Metal/modern-rendering-with-metal",
      "download": {
        "filename": "ModernRenderingWithMetal.zip",
        "identifier": "757ec6a1e5f6/ModernRenderingWithMetal.zip",
        "url": "https://docs-assets.developer.apple.com/published/757ec6a1e5f6/ModernRenderingWithMetal.zip"
      },
      "id": "metal/modern-rendering-with-metal",
      "identifier": "doc://com.apple.metal/documentation/Metal/modern-rendering-with-metal",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/modern-rendering-with-metal.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Modern rendering with Metal"
    },
    {
      "abstract": "Use Metal to find GPUs and perform calculations on them.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/performing-calculations-on-a-gpu",
      "doc_url": "https://developer.apple.com/documentation/Metal/performing-calculations-on-a-gpu",
      "download": {
        "filename": "PerformingCalculationsOnAGPU.zip",
        "identifier": "d80f8573d811/PerformingCalculationsOnAGPU.zip",
        "url": "https://docs-assets.developer.apple.com/published/d80f8573d811/PerformingCalculationsOnAGPU.zip"
      },
      "id": "metal/performing-calculations-on-a-gpu",
      "identifier": "doc://com.apple.metal/documentation/Metal/performing-calculations-on-a-gpu",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/performing-calculations-on-a-gpu.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "10.14",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "11.3",
          "name": "Xcode"
        }
      ],
      "title": "Performing calculations on a GPU"
    },
    {
      "abstract": "Implement a post-processing pipeline using the latest features on Apple GPUs.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/processing-hdr-images-with-metal",
      "doc_url": "https://developer.apple.com/documentation/Metal/processing-hdr-images-with-metal",
      "download": {
        "filename": "ProcessingHDRImagesWithMetal.zip",
        "identifier": "8bd4230f1aa0/ProcessingHDRImagesWithMetal.zip",
        "url": "https://docs-assets.developer.apple.com/published/8bd4230f1aa0/ProcessingHDRImagesWithMetal.zip"
      },
      "id": "metal/processing-hdr-images-with-metal",
      "identifier": "doc://com.apple.metal/documentation/Metal/processing-hdr-images-with-metal",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/processing-hdr-images-with-metal.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Processing HDR images with Metal"
    },
    {
      "abstract": "Access texture data from the CPU by copying it to a buffer.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/reading-pixel-data-from-a-drawable-texture",
      "doc_url": "https://developer.apple.com/documentation/Metal/reading-pixel-data-from-a-drawable-texture",
      "download": {
        "filename": "ReadingPixelDataFromADrawableTexture.zip",
        "identifier": "6c0bd32987e6/ReadingPixelDataFromADrawableTexture.zip",
        "url": "https://docs-assets.developer.apple.com/published/6c0bd32987e6/ReadingPixelDataFromADrawableTexture.zip"
      },
      "id": "metal/reading-pixel-data-from-a-drawable-texture",
      "identifier": "doc://com.apple.metal/documentation/Metal/reading-pixel-data-from-a-drawable-texture",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/reading-pixel-data-from-a-drawable-texture.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Reading pixel data from a drawable texture"
    },
    {
      "abstract": "Implement ray traced rendering using GPU-based parallel processing.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/rendering-a-curve-primitive-in-a-ray-tracing-scene",
      "doc_url": "https://developer.apple.com/documentation/Metal/rendering-a-curve-primitive-in-a-ray-tracing-scene",
      "download": {
        "filename": "RenderingACurvePrimitiveInARayTracingScene.zip",
        "identifier": "8df3074149f0/RenderingACurvePrimitiveInARayTracingScene.zip",
        "url": "https://docs-assets.developer.apple.com/published/8df3074149f0/RenderingACurvePrimitiveInARayTracingScene.zip"
      },
      "id": "metal/rendering-a-curve-primitive-in-a-ray-tracing-scene",
      "identifier": "doc://com.apple.metal/documentation/Metal/rendering-a-curve-primitive-in-a-ray-tracing-scene",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/rendering-a-curve-primitive-in-a-ray-tracing-scene.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Rendering a curve primitive in a ray tracing scene"
    },
    {
      "abstract": "Avoid expensive lighting calculations by implementing a deferred lighting renderer optimized for immediate mode and tile-based deferred renderer GPUs.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/rendering-a-scene-with-deferred-lighting-in-c++",
      "doc_url": "https://developer.apple.com/documentation/Metal/rendering-a-scene-with-deferred-lighting-in-c++",
      "download": {
        "filename": "RenderingASceneWithDeferredLightingInC++.zip",
        "identifier": "d29e2a233f6b/RenderingASceneWithDeferredLightingInC++.zip",
        "url": "https://docs-assets.developer.apple.com/published/d29e2a233f6b/RenderingASceneWithDeferredLightingInC%2B%2B.zip"
      },
      "id": "metal/rendering-a-scene-with-deferred-lighting-in-c++",
      "identifier": "doc://com.apple.metal/documentation/Metal/rendering-a-scene-with-deferred-lighting-in-c++",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/rendering-a-scene-with-deferred-lighting-in-c%2B%2B.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Rendering a scene with deferred lighting in C++"
    },
    {
      "abstract": "Avoid expensive lighting calculations by implementing a deferred lighting renderer optimized for immediate mode and tile-based deferred renderer GPUs.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/rendering-a-scene-with-deferred-lighting-in-objective-c",
      "doc_url": "https://developer.apple.com/documentation/Metal/rendering-a-scene-with-deferred-lighting-in-objective-c",
      "download": {
        "filename": "RenderingASceneWithDeferredLightingInObjectiveC.zip",
        "identifier": "c4dd45c832b3/RenderingASceneWithDeferredLightingInObjectiveC.zip",
        "url": "https://docs-assets.developer.apple.com/published/c4dd45c832b3/RenderingASceneWithDeferredLightingInObjectiveC.zip"
      },
      "id": "metal/rendering-a-scene-with-deferred-lighting-in-objective-c",
      "identifier": "doc://com.apple.metal/documentation/Metal/rendering-a-scene-with-deferred-lighting-in-objective-c",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/rendering-a-scene-with-deferred-lighting-in-objective-c.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Rendering a scene with deferred lighting in Objective-C"
    },
    {
      "abstract": "Avoid expensive lighting calculations by implementing a deferred lighting renderer optimized for immediate mode and tile-based deferred renderer GPUs.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/rendering-a-scene-with-deferred-lighting-in-swift",
      "doc_url": "https://developer.apple.com/documentation/Metal/rendering-a-scene-with-deferred-lighting-in-swift",
      "download": {
        "filename": "RenderingASceneWithDeferredLightingInSwift.zip",
        "identifier": "badbf3ddc465/RenderingASceneWithDeferredLightingInSwift.zip",
        "url": "https://docs-assets.developer.apple.com/published/badbf3ddc465/RenderingASceneWithDeferredLightingInSwift.zip"
      },
      "id": "metal/rendering-a-scene-with-deferred-lighting-in-swift",
      "identifier": "doc://com.apple.metal/documentation/Metal/rendering-a-scene-with-deferred-lighting-in-swift",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/rendering-a-scene-with-deferred-lighting-in-swift.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Rendering a scene with deferred lighting in Swift"
    },
    {
      "abstract": "Implement a forward plus renderer using the latest features on Apple GPUs.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/rendering-a-scene-with-forward-plus-lighting-using-tile-shaders",
      "doc_url": "https://developer.apple.com/documentation/Metal/rendering-a-scene-with-forward-plus-lighting-using-tile-shaders",
      "download": {
        "filename": "RenderingASceneWithForwardPlusLightingUsingTileShaders.zip",
        "identifier": "73528988a5ff/RenderingASceneWithForwardPlusLightingUsingTileShaders.zip",
        "url": "https://docs-assets.developer.apple.com/published/73528988a5ff/RenderingASceneWithForwardPlusLightingUsingTileShaders.zip"
      },
      "id": "metal/rendering-a-scene-with-forward-plus-lighting-using-tile-shaders",
      "identifier": "doc://com.apple.metal/documentation/Metal/rendering-a-scene-with-forward-plus-lighting-using-tile-shaders",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/rendering-a-scene-with-forward-plus-lighting-using-tile-shaders.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Rendering a scene with forward plus lighting using tile shaders"
    },
    {
      "abstract": "Implement realistic real-time lighting by dynamically generating reflection maps by encoding a ray-tracing compute pass.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/rendering-reflections-in-real-time-using-ray-tracing",
      "doc_url": "https://developer.apple.com/documentation/Metal/rendering-reflections-in-real-time-using-ray-tracing",
      "download": {
        "filename": "RenderingReflectionsInRealTimeUsingRayTracing.zip",
        "identifier": "695c551a3aa3/RenderingReflectionsInRealTimeUsingRayTracing.zip",
        "url": "https://docs-assets.developer.apple.com/published/695c551a3aa3/RenderingReflectionsInRealTimeUsingRayTracing.zip"
      },
      "id": "metal/rendering-reflections-in-real-time-using-ray-tracing",
      "identifier": "doc://com.apple.metal/documentation/Metal/rendering-reflections-in-real-time-using-ray-tracing",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/rendering-reflections-in-real-time-using-ray-tracing.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Rendering reflections in real time using ray tracing"
    },
    {
      "abstract": "Use layer selection to reduce the number of render passes needed to generate an environment map.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/rendering-reflections-with-fewer-render-passes",
      "doc_url": "https://developer.apple.com/documentation/Metal/rendering-reflections-with-fewer-render-passes",
      "download": {
        "filename": "RenderingReflectionsWithFewerRenderPasses.zip",
        "identifier": "251f6b50b864/RenderingReflectionsWithFewerRenderPasses.zip",
        "url": "https://docs-assets.developer.apple.com/published/251f6b50b864/RenderingReflectionsWithFewerRenderPasses.zip"
      },
      "id": "metal/rendering-reflections-with-fewer-render-passes",
      "identifier": "doc://com.apple.metal/documentation/Metal/rendering-reflections-with-fewer-render-passes",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/rendering-reflections-with-fewer-render-passes.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Rendering reflections with fewer render passes"
    },
    {
      "abstract": "Use argument buffers to render terrain in real time with a GPU-driven pipeline.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/rendering-terrain-dynamically-with-argument-buffers",
      "doc_url": "https://developer.apple.com/documentation/Metal/rendering-terrain-dynamically-with-argument-buffers",
      "download": {
        "filename": "RenderingTerrainDynamicallyWithArgumentBuffers.zip",
        "identifier": "56eb378e3977/RenderingTerrainDynamicallyWithArgumentBuffers.zip",
        "url": "https://docs-assets.developer.apple.com/published/56eb378e3977/RenderingTerrainDynamicallyWithArgumentBuffers.zip"
      },
      "id": "metal/rendering-terrain-dynamically-with-argument-buffers",
      "identifier": "doc://com.apple.metal/documentation/Metal/rendering-terrain-dynamically-with-argument-buffers",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/rendering-terrain-dynamically-with-argument-buffers.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Rendering terrain dynamically with argument buffers"
    },
    {
      "abstract": "Dispatch model inference commands with a machine learning pass in a Metal 4 command buffer.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/running-a-machine-learning-model-on-the-gpu-timeline",
      "doc_url": "https://developer.apple.com/documentation/Metal/running-a-machine-learning-model-on-the-gpu-timeline",
      "download": {
        "filename": "RunningAMachineLearningModelOnTheGPUTimeline.zip",
        "identifier": "4e2bbfa8cb52/RunningAMachineLearningModelOnTheGPUTimeline.zip",
        "url": "https://docs-assets.developer.apple.com/published/4e2bbfa8cb52/RunningAMachineLearningModelOnTheGPUTimeline.zip"
      },
      "id": "metal/running-a-machine-learning-model-on-the-gpu-timeline",
      "identifier": "doc://com.apple.metal/documentation/Metal/running-a-machine-learning-model-on-the-gpu-timeline",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/running-a-machine-learning-model-on-the-gpu-timeline.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.2",
          "name": "Xcode"
        }
      ],
      "title": "Running a machine learning model on the GPU timeline"
    },
    {
      "abstract": "Multiply matrices across multiple GPU cores with inline tensor operations.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/running-inline-ml-operations-in-a-shader-with-metal-4",
      "doc_url": "https://developer.apple.com/documentation/Metal/running-inline-ml-operations-in-a-shader-with-metal-4",
      "download": {
        "filename": "RunningInlineMLOperationsInAShaderWithMetal4.zip",
        "identifier": "401ee0182b05/RunningInlineMLOperationsInAShaderWithMetal4.zip",
        "url": "https://docs-assets.developer.apple.com/published/401ee0182b05/RunningInlineMLOperationsInAShaderWithMetal4.zip"
      },
      "id": "metal/running-inline-ml-operations-in-a-shader-with-metal-4",
      "identifier": "doc://com.apple.metal/documentation/Metal/running-inline-ml-operations-in-a-shader-with-metal-4",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/running-inline-ml-operations-in-a-shader-with-metal-4.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Running inline ML operations in a shader with Metal 4"
    },
    {
      "abstract": "Switch dynamically between multiple GPUs to efficiently execute a compute-intensive simulation.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/selecting-device-objects-for-compute-processing",
      "doc_url": "https://developer.apple.com/documentation/Metal/selecting-device-objects-for-compute-processing",
      "download": {
        "filename": "SelectingDeviceObjectsForComputeProcessing.zip",
        "identifier": "9dab948f9c4f/SelectingDeviceObjectsForComputeProcessing.zip",
        "url": "https://docs-assets.developer.apple.com/published/9dab948f9c4f/SelectingDeviceObjectsForComputeProcessing.zip"
      },
      "id": "metal/selecting-device-objects-for-compute-processing",
      "identifier": "doc://com.apple.metal/documentation/Metal/selecting-device-objects-for-compute-processing",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/selecting-device-objects-for-compute-processing.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "10.13",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "12.4",
          "name": "Xcode"
        }
      ],
      "title": "Selecting device objects for compute processing"
    },
    {
      "abstract": "Switch dynamically between multiple GPUs to efficiently render to a display.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/selecting-device-objects-for-graphics-rendering",
      "doc_url": "https://developer.apple.com/documentation/Metal/selecting-device-objects-for-graphics-rendering",
      "download": {
        "filename": "SelectingDeviceObjectsForGraphicsRendering.zip",
        "identifier": "187f3109f6d8/SelectingDeviceObjectsForGraphicsRendering.zip",
        "url": "https://docs-assets.developer.apple.com/published/187f3109f6d8/SelectingDeviceObjectsForGraphicsRendering.zip"
      },
      "id": "metal/selecting-device-objects-for-graphics-rendering",
      "identifier": "doc://com.apple.metal/documentation/Metal/selecting-device-objects-for-graphics-rendering",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/selecting-device-objects-for-graphics-rendering.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "10.13",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "12.4",
          "name": "Xcode"
        }
      ],
      "title": "Selecting device objects for graphics rendering"
    },
    {
      "abstract": "Limit texture memory usage for large textures by loading or unloading image detail on the basis of MIP and tile region.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/streaming-large-images-with-metal-sparse-textures",
      "doc_url": "https://developer.apple.com/documentation/Metal/streaming-large-images-with-metal-sparse-textures",
      "download": {
        "filename": "StreamingLargeImagesWithMetalSparseTextures.zip",
        "identifier": "c625ce6c1899/StreamingLargeImagesWithMetalSparseTextures.zip",
        "url": "https://docs-assets.developer.apple.com/published/c625ce6c1899/StreamingLargeImagesWithMetalSparseTextures.zip"
      },
      "id": "metal/streaming-large-images-with-metal-sparse-textures",
      "identifier": "doc://com.apple.metal/documentation/Metal/streaming-large-images-with-metal-sparse-textures",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/streaming-large-images-with-metal-sparse-textures.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Streaming large images with Metal sparse textures"
    },
    {
      "abstract": "Configure alternative render paths in your Metal app to enable running your app in Simulator.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/supporting-simulator-in-a-metal-app",
      "doc_url": "https://developer.apple.com/documentation/Metal/supporting-simulator-in-a-metal-app",
      "download": {
        "filename": "SupportingSimulatorInAMetalApp.zip",
        "identifier": "3033792dc2af/SupportingSimulatorInAMetalApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/3033792dc2af/SupportingSimulatorInAMetalApp.zip"
      },
      "id": "metal/supporting-simulator-in-a-metal-app",
      "identifier": "doc://com.apple.metal/documentation/Metal/supporting-simulator-in-a-metal-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/supporting-simulator-in-a-metal-app.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Supporting Simulator in a Metal app"
    },
    {
      "abstract": "Avoid stalls between CPU and GPU work by using multiple instances of a resource.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/synchronizing-cpu-and-gpu-work",
      "doc_url": "https://developer.apple.com/documentation/Metal/synchronizing-cpu-and-gpu-work",
      "download": {
        "filename": "SynchronizingCPUAndGPUWork.zip",
        "identifier": "a2ec04f3244c/SynchronizingCPUAndGPUWork.zip",
        "url": "https://docs-assets.developer.apple.com/published/a2ec04f3244c/SynchronizingCPUAndGPUWork.zip"
      },
      "id": "metal/synchronizing-cpu-and-gpu-work",
      "identifier": "doc://com.apple.metal/documentation/Metal/synchronizing-cpu-and-gpu-work",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/synchronizing-cpu-and-gpu-work.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Synchronizing CPU and GPU work"
    },
    {
      "abstract": "Train a small neural network on the GPU to approximate diffuse irradiance, and compare the result against Monte Carlo integration and a pre-trained ML model.",
      "categories": [
        "WWDC26"
      ],
      "doc_path": "/documentation/Metal/training-a-neural-network-to-render-irradiance-in-real-time",
      "doc_url": "https://developer.apple.com/documentation/Metal/training-a-neural-network-to-render-irradiance-in-real-time",
      "download": {
        "filename": "TrainingANeuralNetworkToRenderIrradianceInRealTime.zip",
        "identifier": "210b0e935e71/TrainingANeuralNetworkToRenderIrradianceInRealTime.zip",
        "url": "https://docs-assets.developer.apple.com/published/210b0e935e71/TrainingANeuralNetworkToRenderIrradianceInRealTime.zip"
      },
      "id": "metal/training-a-neural-network-to-render-irradiance-in-real-time",
      "identifier": "doc://com.apple.metal/documentation/Metal/training-a-neural-network-to-render-irradiance-in-real-time",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/training-a-neural-network-to-render-irradiance-in-real-time.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Training a neural network to render irradiance in real time"
    },
    {
      "abstract": "Reduce CPU overhead by using arrays inside argument buffers and combining them with resource heaps.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/using-argument-buffers-with-resource-heaps",
      "doc_url": "https://developer.apple.com/documentation/Metal/using-argument-buffers-with-resource-heaps",
      "download": {
        "filename": "UsingArgumentBuffersWithResourceHeaps.zip",
        "identifier": "514424a93273/UsingArgumentBuffersWithResourceHeaps.zip",
        "url": "https://docs-assets.developer.apple.com/published/514424a93273/UsingArgumentBuffersWithResourceHeaps.zip"
      },
      "id": "metal/using-argument-buffers-with-resource-heaps",
      "identifier": "doc://com.apple.metal/documentation/Metal/using-argument-buffers-with-resource-heaps",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/using-argument-buffers-with-resource-heaps.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Using argument buffers with resource heaps"
    },
    {
      "abstract": "Create pipelines for different levels of detail from a common shader source.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/using-function-specialization-to-build-pipeline-variants",
      "doc_url": "https://developer.apple.com/documentation/Metal/using-function-specialization-to-build-pipeline-variants",
      "download": {
        "filename": "UsingFunctionSpecializationToBuildPipelineVariants.zip",
        "identifier": "014f9e1b1a25/UsingFunctionSpecializationToBuildPipelineVariants.zip",
        "url": "https://docs-assets.developer.apple.com/published/014f9e1b1a25/UsingFunctionSpecializationToBuildPipelineVariants.zip"
      },
      "id": "metal/using-function-specialization-to-build-pipeline-variants",
      "identifier": "doc://com.apple.metal/documentation/Metal/using-function-specialization-to-build-pipeline-variants",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/using-function-specialization-to-build-pipeline-variants.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "26.3",
          "name": "Xcode"
        }
      ],
      "title": "Using function specialization to build pipeline variants"
    },
    {
      "abstract": "Create a MetalKit view and a render pass to draw the view’s contents.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/Metal/using-metal-to-draw-a-view's-contents",
      "doc_url": "https://developer.apple.com/documentation/Metal/using-metal-to-draw-a-view's-contents",
      "download": {
        "filename": "UsingMetalToDrawAViewsContents.zip",
        "identifier": "107fc85eb937/UsingMetalToDrawAViewsContents.zip",
        "url": "https://docs-assets.developer.apple.com/published/107fc85eb937/UsingMetalToDrawAViewsContents.zip"
      },
      "id": "metal/using-metal-to-draw-a-view's-contents",
      "identifier": "doc://com.apple.metal/documentation/Metal/using-metal-to-draw-a-view's-contents",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Metal/using-metal-to-draw-a-view%27s-contents.json",
      "module": "Metal",
      "modules": [
        "Metal"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "10.14",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "12.1",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "Xcode"
        }
      ],
      "title": "Using Metal to draw a view’s contents"
    },
    {
      "abstract": "Reduce render workloads while increasing image detail with MetalFX.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/MetalFX/applying-temporal-antialiasing-and-upscaling-using-metalfx",
      "doc_url": "https://developer.apple.com/documentation/MetalFX/applying-temporal-antialiasing-and-upscaling-using-metalfx",
      "download": {
        "filename": "ApplyingTemporalAntialiasingAndUpscalingUsingMetalFX.zip",
        "identifier": "cd4b8936af25/ApplyingTemporalAntialiasingAndUpscalingUsingMetalFX.zip",
        "url": "https://docs-assets.developer.apple.com/published/cd4b8936af25/ApplyingTemporalAntialiasingAndUpscalingUsingMetalFX.zip"
      },
      "id": "metalfx/applying-temporal-antialiasing-and-upscaling-using-metalfx",
      "identifier": "doc://com.apple.metalfx/documentation/MetalFX/applying-temporal-antialiasing-and-upscaling-using-metalfx",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/MetalFX/applying-temporal-antialiasing-and-upscaling-using-metalfx.json",
      "module": "MetalFX",
      "modules": [
        "MetalFX"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:MetalFX",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "Applying temporal antialiasing and upscaling using MetalFX"
    },
    {
      "abstract": "Use an MPS neural network graph to train a simple neural network digit classifier.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/MetalPerformanceShaders/training-a-neural-network-with-metal-performance-shaders",
      "doc_url": "https://developer.apple.com/documentation/MetalPerformanceShaders/training-a-neural-network-with-metal-performance-shaders",
      "download": {
        "filename": "TrainingANeuralNetworkWithMetalPerformanceShaders.zip",
        "identifier": "9d07e411a750/TrainingANeuralNetworkWithMetalPerformanceShaders.zip",
        "url": "https://docs-assets.developer.apple.com/published/9d07e411a750/TrainingANeuralNetworkWithMetalPerformanceShaders.zip"
      },
      "id": "metalperformanceshaders/training-a-neural-network-with-metal-performance-shaders",
      "identifier": "doc://com.apple.metalperformanceshaders/documentation/MetalPerformanceShaders/training-a-neural-network-with-metal-performance-shaders",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/MetalPerformanceShaders/training-a-neural-network-with-metal-performance-shaders.json",
      "module": "Metal Performance Shaders",
      "modules": [
        "Metal Performance Shaders"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal Performance Shaders",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "10.15",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Training a Neural Network with Metal Performance Shaders"
    },
    {
      "abstract": "Run your own graph functions on the GPU by building the function programmatically.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/MetalPerformanceShadersGraph/adding-custom-functions-to-a-shader-graph",
      "doc_url": "https://developer.apple.com/documentation/MetalPerformanceShadersGraph/adding-custom-functions-to-a-shader-graph",
      "download": {
        "filename": "AddingCustomFunctionsToAShaderGraph.zip",
        "identifier": "abdb15a250d9/AddingCustomFunctionsToAShaderGraph.zip",
        "url": "https://docs-assets.developer.apple.com/published/abdb15a250d9/AddingCustomFunctionsToAShaderGraph.zip"
      },
      "id": "metalperformanceshadersgraph/adding-custom-functions-to-a-shader-graph",
      "identifier": "doc://com.apple.metalperformanceshadersgraph/documentation/MetalPerformanceShadersGraph/adding-custom-functions-to-a-shader-graph",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/MetalPerformanceShadersGraph/adding-custom-functions-to-a-shader-graph.json",
      "module": "Metal Performance Shaders Graph",
      "modules": [
        "Metal Performance Shaders Graph"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal Performance Shaders Graph",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Xcode"
        }
      ],
      "title": "Adding custom functions to a shader graph"
    },
    {
      "abstract": "Filter an image with MPSGraph fast Fourier transforms using the convolutional theorem.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/MetalPerformanceShadersGraph/filtering-images-with-mpsgraph-fft-operations",
      "doc_url": "https://developer.apple.com/documentation/MetalPerformanceShadersGraph/filtering-images-with-mpsgraph-fft-operations",
      "download": {
        "filename": "FilteringImagesWithMPSGraphFFTOperations.zip",
        "identifier": "f90715c6ca32/FilteringImagesWithMPSGraphFFTOperations.zip",
        "url": "https://docs-assets.developer.apple.com/published/f90715c6ca32/FilteringImagesWithMPSGraphFFTOperations.zip"
      },
      "id": "metalperformanceshadersgraph/filtering-images-with-mpsgraph-fft-operations",
      "identifier": "doc://com.apple.metalperformanceshadersgraph/documentation/MetalPerformanceShadersGraph/filtering-images-with-mpsgraph-fft-operations",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/MetalPerformanceShadersGraph/filtering-images-with-mpsgraph-fft-operations.json",
      "module": "Metal Performance Shaders Graph",
      "modules": [
        "Metal Performance Shaders Graph"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal Performance Shaders Graph",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Filtering images with MPSGraph FFT operations"
    },
    {
      "abstract": "Train a simple neural network digit classifier.",
      "categories": [
        "Metal"
      ],
      "doc_path": "/documentation/MetalPerformanceShadersGraph/training-a-neural-network-using-mps-graph",
      "doc_url": "https://developer.apple.com/documentation/MetalPerformanceShadersGraph/training-a-neural-network-using-mps-graph",
      "download": {
        "filename": "TrainingANeuralNetworkUsingMPSGraph.zip",
        "identifier": "a81b46b0b0e0/TrainingANeuralNetworkUsingMPSGraph.zip",
        "url": "https://docs-assets.developer.apple.com/published/a81b46b0b0e0/TrainingANeuralNetworkUsingMPSGraph.zip"
      },
      "id": "metalperformanceshadersgraph/training-a-neural-network-using-mps-graph",
      "identifier": "doc://com.apple.metalperformanceshadersgraph/documentation/MetalPerformanceShadersGraph/training-a-neural-network-using-mps-graph",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/MetalPerformanceShadersGraph/training-a-neural-network-using-mps-graph.json",
      "module": "Metal Performance Shaders Graph",
      "modules": [
        "Metal Performance Shaders Graph"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Metal Performance Shaders Graph",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Xcode"
        }
      ],
      "title": "Training a neural network using MPSGraph"
    },
    {
      "abstract": "Collect performance metrics, diagnostic reports, and experiment data related to your app’s current state using the MetricKit framework.",
      "categories": [
        "WWDC26"
      ],
      "doc_path": "/documentation/MetricKit/track-performance-by-app-state-using-metrickit",
      "doc_url": "https://developer.apple.com/documentation/MetricKit/track-performance-by-app-state-using-metrickit",
      "download": {
        "filename": "TrackPerformanceByAppStateUsingMetricKit.zip",
        "identifier": "3625b37a1b16/TrackPerformanceByAppStateUsingMetricKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/3625b37a1b16/TrackPerformanceByAppStateUsingMetricKit.zip"
      },
      "id": "metrickit/track-performance-by-app-state-using-metrickit",
      "identifier": "doc://com.apple.metrickit/documentation/MetricKit/track-performance-by-app-state-using-metrickit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/MetricKit/track-performance-by-app-state-using-metrickit.json",
      "module": "MetricKit",
      "modules": [
        "MetricKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:MetricKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iPadOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Track performance by app state using MetricKit"
    },
    {
      "abstract": "Implement a configurable virtual MIDI driver as a driver extension that runs in user space in macOS and iPadOS.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/MIDIDriverKit/creating-a-midi-device-driver",
      "doc_url": "https://developer.apple.com/documentation/MIDIDriverKit/creating-a-midi-device-driver",
      "download": {
        "filename": "CreatingAMIDIDeviceDriver.zip",
        "identifier": "3da01fc79284/CreatingAMIDIDeviceDriver.zip",
        "url": "https://docs-assets.developer.apple.com/published/3da01fc79284/CreatingAMIDIDeviceDriver.zip"
      },
      "id": "mididriverkit/creating-a-midi-device-driver",
      "identifier": "doc://com.apple.mididriverkit/documentation/MIDIDriverKit/creating-a-midi-device-driver",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/MIDIDriverKit/creating-a-midi-device-driver.json",
      "module": "MIDIDriverKit",
      "modules": [
        "MIDIDriverKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:MIDIDriverKit",
        "technology-index:Sample Code Library",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "24.0",
          "name": "DriverKit"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating a MIDI device driver"
    },
    {
      "abstract": "Track your outdoor runs with access to the Apple Music catalog, personal recommendations, and your own personal music library.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/MusicKit/explore-more-content-with-musickit",
      "doc_url": "https://developer.apple.com/documentation/MusicKit/explore-more-content-with-musickit",
      "download": {
        "filename": "ExploreMoreContentWithMusicKit.zip",
        "identifier": "17d2089979bd/ExploreMoreContentWithMusicKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/17d2089979bd/ExploreMoreContentWithMusicKit.zip"
      },
      "id": "musickit/explore-more-content-with-musickit",
      "identifier": "doc://com.apple.MusicKit/documentation/MusicKit/explore-more-content-with-musickit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/MusicKit/explore-more-content-with-musickit.json",
      "module": "MusicKit",
      "modules": [
        "MusicKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:MusicKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "Explore more content with MusicKit"
    },
    {
      "abstract": "Enhance your workouts with Apple Music playback.",
      "categories": [
        "WWDC26"
      ],
      "doc_path": "/documentation/MusicKit/integrating-musickit-into-your-app",
      "doc_url": "https://developer.apple.com/documentation/MusicKit/integrating-musickit-into-your-app",
      "download": {
        "filename": "IntegratingMusicKitIntoYourApp.zip",
        "identifier": "ba4910eaf1b0/IntegratingMusicKitIntoYourApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/ba4910eaf1b0/IntegratingMusicKitIntoYourApp.zip"
      },
      "id": "musickit/integrating-musickit-into-your-app",
      "identifier": "doc://com.apple.MusicKit/documentation/MusicKit/integrating-musickit-into-your-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/MusicKit/integrating-musickit-into-your-app.json",
      "module": "MusicKit",
      "modules": [
        "MusicKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:MusicKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iPadOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Integrating MusicKit into your app"
    },
    {
      "abstract": "Find an album in Apple Music that corresponds to a CD in a user’s collection, and present the information for the album.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/MusicKit/using-musickit-to-integrate-with-apple-music",
      "doc_url": "https://developer.apple.com/documentation/MusicKit/using-musickit-to-integrate-with-apple-music",
      "download": {
        "filename": "UsingMusicKitToIntegrateWithAppleMusic.zip",
        "identifier": "3be04fd26a5c/UsingMusicKitToIntegrateWithAppleMusic.zip",
        "url": "https://docs-assets.developer.apple.com/published/3be04fd26a5c/UsingMusicKitToIntegrateWithAppleMusic.zip"
      },
      "id": "musickit/using-musickit-to-integrate-with-apple-music",
      "identifier": "doc://com.apple.MusicKit/documentation/MusicKit/using-musickit-to-integrate-with-apple-music",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/MusicKit/using-musickit-to-integrate-with-apple-music.json",
      "module": "MusicKit",
      "modules": [
        "MusicKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:MusicKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Using MusicKit to integrate with Apple Music"
    },
    {
      "abstract": "Create a multiplatform app that presents analysis results from the Music Understanding framework.",
      "categories": [
        "WWDC26"
      ],
      "doc_path": "/documentation/MusicUnderstanding/create-visuals-using-musicunderstanding-analysis-results",
      "doc_url": "https://developer.apple.com/documentation/MusicUnderstanding/create-visuals-using-musicunderstanding-analysis-results",
      "download": {
        "filename": "CreatingVisualsWithMusicUnderstandingAnalysisResults.zip",
        "identifier": "61ca887a1d2e/CreatingVisualsWithMusicUnderstandingAnalysisResults.zip",
        "url": "https://docs-assets.developer.apple.com/published/61ca887a1d2e/CreatingVisualsWithMusicUnderstandingAnalysisResults.zip"
      },
      "id": "musicunderstanding/create-visuals-using-musicunderstanding-analysis-results",
      "identifier": "doc://com.apple.MusicUnderstanding/documentation/MusicUnderstanding/create-visuals-using-musicunderstanding-analysis-results",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/MusicUnderstanding/create-visuals-using-musicunderstanding-analysis-results.json",
      "module": "Music Understanding",
      "modules": [
        "Music Understanding"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Music Understanding",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iPadOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "macOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "visionOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating visuals with Music Understanding analysis results"
    },
    {
      "abstract": "Leverage the spatial awareness of ARKit and Apple Ultra Wideband Chips in your app to guide users to a nearby device.",
      "categories": [
        "Location and MapKit"
      ],
      "doc_path": "/documentation/NearbyInteraction/finding-devices-with-precision",
      "doc_url": "https://developer.apple.com/documentation/NearbyInteraction/finding-devices-with-precision",
      "download": {
        "filename": "FindingDevicesWithPrecision.zip",
        "identifier": "07951274a4f9/FindingDevicesWithPrecision.zip",
        "url": "https://docs-assets.developer.apple.com/published/07951274a4f9/FindingDevicesWithPrecision.zip"
      },
      "id": "nearbyinteraction/finding-devices-with-precision",
      "identifier": "doc://com.apple.nearbyinteraction/documentation/NearbyInteraction/finding-devices-with-precision",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/NearbyInteraction/finding-devices-with-precision.json",
      "module": "Nearby Interaction",
      "modules": [
        "Nearby Interaction"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Nearby Interaction",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Finding devices with precision"
    },
    {
      "abstract": "Enable devices to access relative positioning information.",
      "categories": [
        "Location and MapKit"
      ],
      "doc_path": "/documentation/NearbyInteraction/implementing-interactions-between-users-in-close-proximity",
      "doc_url": "https://developer.apple.com/documentation/NearbyInteraction/implementing-interactions-between-users-in-close-proximity",
      "download": {
        "filename": "ImplementingInteractionsBetweenUsersInCloseProximity.zip",
        "identifier": "0aa6f5ebd072/ImplementingInteractionsBetweenUsersInCloseProximity.zip",
        "url": "https://docs-assets.developer.apple.com/published/0aa6f5ebd072/ImplementingInteractionsBetweenUsersInCloseProximity.zip"
      },
      "id": "nearbyinteraction/implementing-interactions-between-users-in-close-proximity",
      "identifier": "doc://com.apple.nearbyinteraction/documentation/NearbyInteraction/implementing-interactions-between-users-in-close-proximity",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/NearbyInteraction/implementing-interactions-between-users-in-close-proximity.json",
      "module": "Nearby Interaction",
      "modules": [
        "Nearby Interaction"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Nearby Interaction",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Implementing interactions between users in close proximity"
    },
    {
      "abstract": "Interact with a nearby Apple Watch by measuring its distance to a paired iPhone.",
      "categories": [
        "Location and MapKit"
      ],
      "doc_path": "/documentation/NearbyInteraction/implementing-proximity-based-interactions-between-a-phone-and-watch",
      "doc_url": "https://developer.apple.com/documentation/NearbyInteraction/implementing-proximity-based-interactions-between-a-phone-and-watch",
      "download": {
        "filename": "ImplementingProximityBasedInteractionsBetweenAPhoneAndWatch.zip",
        "identifier": "929bfa8b5d2d/ImplementingProximityBasedInteractionsBetweenAPhoneAndWatch.zip",
        "url": "https://docs-assets.developer.apple.com/published/929bfa8b5d2d/ImplementingProximityBasedInteractionsBetweenAPhoneAndWatch.zip"
      },
      "id": "nearbyinteraction/implementing-proximity-based-interactions-between-a-phone-and-watch",
      "identifier": "doc://com.apple.nearbyinteraction/documentation/NearbyInteraction/implementing-proximity-based-interactions-between-a-phone-and-watch",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/NearbyInteraction/implementing-proximity-based-interactions-between-a-phone-and-watch.json",
      "module": "Nearby Interaction",
      "modules": [
        "Nearby Interaction"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Nearby Interaction",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "8.0",
          "name": "watchOS"
        },
        {
          "beta": false,
          "introduced_at": "13.3",
          "name": "Xcode"
        }
      ],
      "title": "Implementing proximity-based interactions between a phone and watch"
    },
    {
      "abstract": "Establish a connection with a nearby accessory to receive periodic measurements of its distance from the user.",
      "categories": [
        "Location and MapKit"
      ],
      "doc_path": "/documentation/NearbyInteraction/implementing-spatial-interactions-with-third-party-accessories",
      "doc_url": "https://developer.apple.com/documentation/NearbyInteraction/implementing-spatial-interactions-with-third-party-accessories",
      "download": {
        "filename": "ImplementingSpatialInteractionsWithThirdPartyAccessories.zip",
        "identifier": "e2f511d49fda/ImplementingSpatialInteractionsWithThirdPartyAccessories.zip",
        "url": "https://docs-assets.developer.apple.com/published/e2f511d49fda/ImplementingSpatialInteractionsWithThirdPartyAccessories.zip"
      },
      "id": "nearbyinteraction/implementing-spatial-interactions-with-third-party-accessories",
      "identifier": "doc://com.apple.nearbyinteraction/documentation/NearbyInteraction/implementing-spatial-interactions-with-third-party-accessories",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/NearbyInteraction/implementing-spatial-interactions-with-third-party-accessories.json",
      "module": "Nearby Interaction",
      "modules": [
        "Nearby Interaction"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Nearby Interaction",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Xcode"
        }
      ],
      "title": "Implementing spatial interactions with third-party accessories"
    },
    {
      "abstract": "Use networking frameworks to create a custom protocol for playing a game across iOS, iPadOS, watchOS, and tvOS devices.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/Network/building-a-custom-peer-to-peer-protocol",
      "doc_url": "https://developer.apple.com/documentation/Network/building-a-custom-peer-to-peer-protocol",
      "download": {
        "filename": "BuildingACustomPeerToPeerProtocol.zip",
        "identifier": "b9d884834905/BuildingACustomPeerToPeerProtocol.zip",
        "url": "https://docs-assets.developer.apple.com/published/b9d884834905/BuildingACustomPeerToPeerProtocol.zip"
      },
      "id": "network/building-a-custom-peer-to-peer-protocol",
      "identifier": "doc://com.apple.network/documentation/Network/building-a-custom-peer-to-peer-protocol",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Network/building-a-custom-peer-to-peer-protocol.json",
      "module": "Network",
      "modules": [
        "Network"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Network",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "9.0",
          "name": "watchOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Building a custom peer-to-peer protocol"
    },
    {
      "abstract": "Use reports to understand how DNS and protocol handshakes impact connection establishment.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/Network/collecting-network-connection-metrics",
      "doc_url": "https://developer.apple.com/documentation/Network/collecting-network-connection-metrics",
      "download": {
        "filename": "CollectingNetworkConnectionMetrics.zip",
        "identifier": "017625187506/CollectingNetworkConnectionMetrics.zip",
        "url": "https://docs-assets.developer.apple.com/published/017625187506/CollectingNetworkConnectionMetrics.zip"
      },
      "id": "network/collecting-network-connection-metrics",
      "identifier": "doc://com.apple.network/documentation/Network/collecting-network-connection-metrics",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Network/collecting-network-connection-metrics.json",
      "module": "Network",
      "modules": [
        "Network"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Network",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Collecting Network Connection Metrics"
    },
    {
      "abstract": "Build a simple  tool that establishes network connections and transfers data.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/Network/implementing-netcat-with-network-framework",
      "doc_url": "https://developer.apple.com/documentation/Network/implementing-netcat-with-network-framework",
      "download": {
        "filename": "ImplementingWithNetworkFramework.zip",
        "identifier": "f1d9686fa841/ImplementingWithNetworkFramework.zip",
        "url": "https://docs-assets.developer.apple.com/published/f1d9686fa841/ImplementingWithNetworkFramework.zip"
      },
      "id": "network/implementing-netcat-with-network-framework",
      "identifier": "doc://com.apple.network/documentation/Network/implementing-netcat-with-network-framework",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Network/implementing-netcat-with-network-framework.json",
      "module": "Network",
      "modules": [
        "Network"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Network",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "10.14",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Xcode"
        }
      ],
      "title": "Implementing netcat with Network Framework"
    },
    {
      "abstract": "Associate an iOS device with an accessory’s network to deliver network configuration information.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/NetworkExtension/configuring-a-wi-fi-accessory-to-join-a-network",
      "doc_url": "https://developer.apple.com/documentation/NetworkExtension/configuring-a-wi-fi-accessory-to-join-a-network",
      "download": {
        "filename": "ConfiguringAWiFiAccessoryToJoinANetwork.zip",
        "identifier": "fc33836bc209/ConfiguringAWiFiAccessoryToJoinANetwork.zip",
        "url": "https://docs-assets.developer.apple.com/published/fc33836bc209/ConfiguringAWiFiAccessoryToJoinANetwork.zip"
      },
      "id": "networkextension/configuring-a-wi-fi-accessory-to-join-a-network",
      "identifier": "doc://com.apple.networkextension/documentation/NetworkExtension/configuring-a-wi-fi-accessory-to-join-a-network",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/NetworkExtension/configuring-a-wi-fi-accessory-to-join-a-network.json",
      "module": "Network Extension",
      "modules": [
        "Network Extension"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Network Extension",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.2",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.2",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.2",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "12.4",
          "name": "Xcode"
        }
      ],
      "title": "Configuring a Wi-Fi accessory to join a network"
    },
    {
      "abstract": "Use the Network Extension framework to allow or deny network connections.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/NetworkExtension/filtering-network-traffic",
      "doc_url": "https://developer.apple.com/documentation/NetworkExtension/filtering-network-traffic",
      "download": {
        "filename": "FilteringNetworkTraffic.zip",
        "identifier": "7e1ab6d332e9/FilteringNetworkTraffic.zip",
        "url": "https://docs-assets.developer.apple.com/published/7e1ab6d332e9/FilteringNetworkTraffic.zip"
      },
      "id": "networkextension/filtering-network-traffic",
      "identifier": "doc://com.apple.networkextension/documentation/NetworkExtension/filtering-network-traffic",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/NetworkExtension/filtering-network-traffic.json",
      "module": "Network Extension",
      "modules": [
        "Network Extension"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Network Extension",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "10.15",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "Xcode"
        }
      ],
      "title": "Filtering Network Traffic"
    },
    {
      "abstract": "Perform fast and robust filtering of full URLs by managing URL filtering configurations.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/NetworkExtension/filtering-traffic-by-url",
      "doc_url": "https://developer.apple.com/documentation/NetworkExtension/filtering-traffic-by-url",
      "download": {
        "filename": "FilteringTrafficByURL.zip",
        "identifier": "ab6517c07cf8/FilteringTrafficByURL.zip",
        "url": "https://docs-assets.developer.apple.com/published/ab6517c07cf8/FilteringTrafficByURL.zip"
      },
      "id": "networkextension/filtering-traffic-by-url",
      "identifier": "doc://com.apple.networkextension/documentation/NetworkExtension/filtering-traffic-by-url",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/NetworkExtension/filtering-traffic-by-url.json",
      "module": "Network Extension",
      "modules": [
        "Network Extension"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Network Extension",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Filtering traffic by URL"
    },
    {
      "abstract": "Provide voice and text communication on a local network isolated from Apple Push Notification service by adopting Local Push Connectivity.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/NetworkExtension/receiving-voice-and-text-communications-on-a-local-network",
      "doc_url": "https://developer.apple.com/documentation/NetworkExtension/receiving-voice-and-text-communications-on-a-local-network",
      "download": {
        "filename": "ReceivingVoiceAndTextCommunicationsOnALocalNetwork.zip",
        "identifier": "f55c63838213/ReceivingVoiceAndTextCommunicationsOnALocalNetwork.zip",
        "url": "https://docs-assets.developer.apple.com/published/f55c63838213/ReceivingVoiceAndTextCommunicationsOnALocalNetwork.zip"
      },
      "id": "networkextension/receiving-voice-and-text-communications-on-a-local-network",
      "identifier": "doc://com.apple.networkextension/documentation/NetworkExtension/receiving-voice-and-text-communications-on-a-local-network",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/NetworkExtension/receiving-voice-and-text-communications-on-a-local-network.json",
      "module": "Network Extension",
      "modules": [
        "Network Extension"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Network Extension",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Xcode"
        }
      ],
      "title": "Receiving Voice and Text Communications on a Local Network"
    },
    {
      "abstract": "Configure and run a PIR server to support a URL filter using Apple’s open source container tool.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/NetworkExtension/setting-up-a-pir-server-for-url-filtering",
      "doc_url": "https://developer.apple.com/documentation/NetworkExtension/setting-up-a-pir-server-for-url-filtering",
      "download": {
        "filename": "FilteringTrafficByURL.zip",
        "identifier": "ab6517c07cf8/FilteringTrafficByURL.zip",
        "url": "https://docs-assets.developer.apple.com/published/ab6517c07cf8/FilteringTrafficByURL.zip"
      },
      "id": "networkextension/setting-up-a-pir-server-for-url-filtering",
      "identifier": "doc://com.apple.networkextension/documentation/NetworkExtension/setting-up-a-pir-server-for-url-filtering",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/NetworkExtension/setting-up-a-pir-server-for-url-filtering.json",
      "module": "Network Extension",
      "modules": [
        "Network Extension"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Network Extension",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Setting up a PIR server for URL filtering"
    },
    {
      "abstract": "Create the files a URL filter needs for its Bloom prefilter.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/NetworkExtension/using-the-bloom-filter-tool",
      "doc_url": "https://developer.apple.com/documentation/NetworkExtension/using-the-bloom-filter-tool",
      "download": {
        "filename": "FilteringTrafficByURL.zip",
        "identifier": "ab6517c07cf8/FilteringTrafficByURL.zip",
        "url": "https://docs-assets.developer.apple.com/published/ab6517c07cf8/FilteringTrafficByURL.zip"
      },
      "id": "networkextension/using-the-bloom-filter-tool",
      "identifier": "doc://com.apple.networkextension/documentation/NetworkExtension/using-the-bloom-filter-tool",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/NetworkExtension/using-the-bloom-filter-tool.json",
      "module": "Network Extension",
      "modules": [
        "Network Extension"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Network Extension",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Using the Bloom filter tool to configure a URL filter"
    },
    {
      "abstract": "Support adding an issued card to Apple Pay from directly within Apple Wallet using Wallet Extensions.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/PassKit/implementing-wallet-extensions",
      "doc_url": "https://developer.apple.com/documentation/PassKit/implementing-wallet-extensions",
      "download": {
        "filename": "ImplementingWalletExtensions.zip",
        "identifier": "18de717aedac/ImplementingWalletExtensions.zip",
        "url": "https://docs-assets.developer.apple.com/published/18de717aedac/ImplementingWalletExtensions.zip"
      },
      "id": "passkit/implementing-wallet-extensions",
      "identifier": "doc://com.apple.passkit/documentation/PassKit/implementing-wallet-extensions",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/PassKit/implementing-wallet-extensions.json",
      "module": "PassKit (Apple Pay and Wallet)",
      "modules": [
        "PassKit (Apple Pay and Wallet)"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:PassKit (Apple Pay and Wallet)",
        "technology-index:Sample Code Library",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Implementing Wallet Extensions"
    },
    {
      "abstract": "Collect payments with iPhone and Apple Watch using Apple Pay.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/PassKit/offering-apple-pay-in-your-app",
      "doc_url": "https://developer.apple.com/documentation/PassKit/offering-apple-pay-in-your-app",
      "download": {
        "filename": "OfferingApplePayInYourApp.zip",
        "identifier": "5717c0e852a2/OfferingApplePayInYourApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/5717c0e852a2/OfferingApplePayInYourApp.zip"
      },
      "id": "passkit/offering-apple-pay-in-your-app",
      "identifier": "doc://com.apple.passkit/documentation/PassKit/offering-apple-pay-in-your-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/PassKit/offering-apple-pay-in-your-app.json",
      "module": "PassKit (Apple Pay and Wallet)",
      "modules": [
        "PassKit (Apple Pay and Wallet)"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:PassKit (Apple Pay and Wallet)",
        "technology-index:Sample Code Library",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "8.0",
          "name": "watchOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Offering Apple Pay in Your App"
    },
    {
      "abstract": "Create an Ethernet driver that interfaces with the system’s network protocol stack.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/PCIDriverKit/connecting-a-network-driver",
      "doc_url": "https://developer.apple.com/documentation/PCIDriverKit/connecting-a-network-driver",
      "download": {
        "filename": "ConnectingANetworkDriver.zip",
        "identifier": "b5cbd13b3c28/ConnectingANetworkDriver.zip",
        "url": "https://docs-assets.developer.apple.com/published/b5cbd13b3c28/ConnectingANetworkDriver.zip"
      },
      "id": "pcidriverkit/connecting-a-network-driver",
      "identifier": "doc://com.apple.pcidriverkit/documentation/PCIDriverKit/connecting-a-network-driver",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/PCIDriverKit/connecting-a-network-driver.json",
      "module": "PCIDriverKit",
      "modules": [
        "PCIDriverKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:DriverKit",
        "technology-index:NetworkingDriverKit",
        "technology-index:PCIDriverKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "20.2",
          "name": "DriverKit"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Xcode"
        }
      ],
      "title": "Connecting a network driver"
    },
    {
      "abstract": "Demonstrates adding a watermark to a PDF page.",
      "categories": [
        "Graphics"
      ],
      "doc_path": "/documentation/PDFKit/custom-graphics",
      "doc_url": "https://developer.apple.com/documentation/PDFKit/custom-graphics",
      "download": {
        "filename": "CustomGraphics.zip",
        "identifier": "87e25620b08d/CustomGraphics.zip",
        "url": "https://docs-assets.developer.apple.com/published/87e25620b08d/CustomGraphics.zip"
      },
      "id": "pdfkit/custom-graphics",
      "identifier": "doc://com.apple.pdfkit/documentation/PDFKit/custom-graphics",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/PDFKit/custom-graphics.json",
      "module": "PDFKit",
      "modules": [
        "PDFKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:PDFKit",
        "technology-index:Quartz",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.3",
          "name": "Xcode"
        }
      ],
      "title": "Custom Graphics"
    },
    {
      "abstract": "Demonstrates adding widgets—interactive form elements—to a PDF document.",
      "categories": [
        "Graphics"
      ],
      "doc_path": "/documentation/PDFKit/pdf-widgets",
      "doc_url": "https://developer.apple.com/documentation/PDFKit/pdf-widgets",
      "download": {
        "filename": "PDFWidgets.zip",
        "identifier": "4fc71bae06c7/PDFWidgets.zip",
        "url": "https://docs-assets.developer.apple.com/published/4fc71bae06c7/PDFWidgets.zip"
      },
      "id": "pdfkit/pdf-widgets",
      "identifier": "doc://com.apple.pdfkit/documentation/PDFKit/pdf-widgets",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/PDFKit/pdf-widgets.json",
      "module": "PDFKit",
      "modules": [
        "PDFKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:PDFKit",
        "technology-index:Quartz",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.3",
          "name": "Xcode"
        }
      ],
      "title": "PDF Widgets"
    },
    {
      "abstract": "Integrate handwriting recognition into your app to identify written text across multiple languages, and explore path conversion and substrokes to enhance the drawing experience.",
      "categories": [
        "WWDC26"
      ],
      "doc_path": "/documentation/PencilKit/building-a-handwriting-recognition-experience-with-pencilkit",
      "doc_url": "https://developer.apple.com/documentation/PencilKit/building-a-handwriting-recognition-experience-with-pencilkit",
      "download": {
        "filename": "BuildingAHandwritingRecognitionExperienceWithPencilKit.zip",
        "identifier": "48bcc5ceffcb/BuildingAHandwritingRecognitionExperienceWithPencilKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/48bcc5ceffcb/BuildingAHandwritingRecognitionExperienceWithPencilKit.zip"
      },
      "id": "pencilkit/building-a-handwriting-recognition-experience-with-pencilkit",
      "identifier": "doc://com.apple.pencilkit/documentation/PencilKit/building-a-handwriting-recognition-experience-with-pencilkit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/PencilKit/building-a-handwriting-recognition-experience-with-pencilkit.json",
      "module": "PencilKit",
      "modules": [
        "PencilKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:PencilKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iPadOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Building a handwriting recognition experience with PencilKit"
    },
    {
      "abstract": "Incorporate a custom PencilKit tool picker with a variety of system and custom tools into a drawing app.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/PencilKit/configuring-the-pencilkit-tool-picker",
      "doc_url": "https://developer.apple.com/documentation/PencilKit/configuring-the-pencilkit-tool-picker",
      "download": {
        "filename": "ConfiguringThePencilKitToolPicker.zip",
        "identifier": "dbe2c8c170cd/ConfiguringThePencilKitToolPicker.zip",
        "url": "https://docs-assets.developer.apple.com/published/dbe2c8c170cd/ConfiguringThePencilKitToolPicker.zip"
      },
      "id": "pencilkit/configuring-the-pencilkit-tool-picker",
      "identifier": "doc://com.apple.pencilkit/documentation/PencilKit/configuring-the-pencilkit-tool-picker",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/PencilKit/configuring-the-pencilkit-tool-picker.json",
      "module": "PencilKit",
      "modules": [
        "PencilKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:PencilKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Configuring the PencilKit tool picker"
    },
    {
      "abstract": "Enable writing on a non-text-input view by adding interactions.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/PencilKit/customizing-scribble-with-interactions",
      "doc_url": "https://developer.apple.com/documentation/PencilKit/customizing-scribble-with-interactions",
      "download": {
        "filename": "CustomizingScribbleWithInteractions.zip",
        "identifier": "0139dbb82fec/CustomizingScribbleWithInteractions.zip",
        "url": "https://docs-assets.developer.apple.com/published/0139dbb82fec/CustomizingScribbleWithInteractions.zip"
      },
      "id": "pencilkit/customizing-scribble-with-interactions",
      "identifier": "doc://com.apple.pencilkit/documentation/PencilKit/customizing-scribble-with-interactions",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/PencilKit/customizing-scribble-with-interactions.json",
      "module": "PencilKit",
      "modules": [
        "PencilKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Apple Pencil",
        "technology-index:Mac Catalyst",
        "technology-index:PencilKit",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.5",
          "name": "Xcode"
        }
      ],
      "title": "Customizing Scribble with Interactions"
    },
    {
      "abstract": "Add expressive, low-latency drawing to your app using PencilKit.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/PencilKit/drawing-with-pencilkit",
      "doc_url": "https://developer.apple.com/documentation/PencilKit/drawing-with-pencilkit",
      "download": {
        "filename": "DrawingWithPencilKit.zip",
        "identifier": "d18940fcfc4f/DrawingWithPencilKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/d18940fcfc4f/DrawingWithPencilKit.zip"
      },
      "id": "pencilkit/drawing-with-pencilkit",
      "identifier": "doc://com.apple.pencilkit/documentation/PencilKit/drawing-with-pencilkit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/PencilKit/drawing-with-pencilkit.json",
      "module": "PencilKit",
      "modules": [
        "PencilKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Apple Pencil",
        "technology-index:PencilKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.5",
          "name": "Xcode"
        }
      ],
      "title": "Drawing with PencilKit"
    },
    {
      "abstract": "Score users’ ability to match PencilKit drawings generated from text, by accessing the strokes and points inside PencilKit drawings.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/PencilKit/inspecting-modifying-and-constructing-pencilkit-drawings",
      "doc_url": "https://developer.apple.com/documentation/PencilKit/inspecting-modifying-and-constructing-pencilkit-drawings",
      "download": {
        "filename": "InspectingModifyingAndConstructingPencilKitDrawings.zip",
        "identifier": "9ab4eccb5c46/InspectingModifyingAndConstructingPencilKitDrawings.zip",
        "url": "https://docs-assets.developer.apple.com/published/9ab4eccb5c46/InspectingModifyingAndConstructingPencilKitDrawings.zip"
      },
      "id": "pencilkit/inspecting-modifying-and-constructing-pencilkit-drawings",
      "identifier": "doc://com.apple.pencilkit/documentation/PencilKit/inspecting-modifying-and-constructing-pencilkit-drawings",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/PencilKit/inspecting-modifying-and-constructing-pencilkit-drawings.json",
      "module": "PencilKit",
      "modules": [
        "PencilKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Apple Pencil",
        "technology-index:PencilKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.5",
          "name": "Xcode"
        }
      ],
      "title": "Inspecting, Modifying, and Constructing PencilKit Drawings"
    },
    {
      "abstract": "Select media assets by using a Photos picker view that SwiftUI provides.",
      "categories": [
        "Photos and video"
      ],
      "doc_path": "/documentation/PhotoKit/bringing-photos-picker-to-your-swiftui-app",
      "doc_url": "https://developer.apple.com/documentation/PhotoKit/bringing-photos-picker-to-your-swiftui-app",
      "download": {
        "filename": "BringingPhotosPickerToYourSwiftUIApp.zip",
        "identifier": "00f942c6d60a/BringingPhotosPickerToYourSwiftUIApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/00f942c6d60a/BringingPhotosPickerToYourSwiftUIApp.zip"
      },
      "id": "photokit/bringing-photos-picker-to-your-swiftui-app",
      "identifier": "doc://com.apple.photokit/documentation/PhotoKit/bringing-photos-picker-to-your-swiftui-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/PhotoKit/bringing-photos-picker-to-your-swiftui-app.json",
      "module": "PhotosUI",
      "modules": [
        "PhotosUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:PhotoKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "9.0",
          "name": "watchOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "Bringing Photos picker to your SwiftUI app"
    },
    {
      "abstract": "Help users organize their photos into albums and browse photo collections in a grid-based layout using PhotoKit.",
      "categories": [
        "Photos and video"
      ],
      "doc_path": "/documentation/PhotoKit/browsing-and-modifying-photo-albums",
      "doc_url": "https://developer.apple.com/documentation/PhotoKit/browsing-and-modifying-photo-albums",
      "download": {
        "filename": "BrowsingAndModifyingPhotoAlbums.zip",
        "identifier": "f3bb304e42b4/BrowsingAndModifyingPhotoAlbums.zip",
        "url": "https://docs-assets.developer.apple.com/published/f3bb304e42b4/BrowsingAndModifyingPhotoAlbums.zip"
      },
      "id": "photokit/browsing-and-modifying-photo-albums",
      "identifier": "doc://com.apple.photokit/documentation/PhotoKit/browsing-and-modifying-photo-albums",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/PhotoKit/browsing-and-modifying-photo-albums.json",
      "module": "PhotoKit",
      "modules": [
        "PhotoKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:PhotoKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.2",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "11.3",
          "name": "Xcode"
        }
      ],
      "title": "Browsing and Modifying Photo Albums"
    },
    {
      "abstract": "Augment the macOS Photos app with extensions that support project creation.",
      "categories": [
        "Photos and video"
      ],
      "doc_path": "/documentation/PhotoKit/creating-a-slideshow-project-extension-for-photos",
      "doc_url": "https://developer.apple.com/documentation/PhotoKit/creating-a-slideshow-project-extension-for-photos",
      "download": {
        "filename": "CreatingASlideshowProjectExtensionForPhotos.zip",
        "identifier": "47b788a396e5/CreatingASlideshowProjectExtensionForPhotos.zip",
        "url": "https://docs-assets.developer.apple.com/published/47b788a396e5/CreatingASlideshowProjectExtensionForPhotos.zip"
      },
      "id": "photokit/creating-a-slideshow-project-extension-for-photos",
      "identifier": "doc://com.apple.photokit/documentation/PhotoKit/creating-a-slideshow-project-extension-for-photos",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/PhotoKit/creating-a-slideshow-project-extension-for-photos.json",
      "module": "PhotosUI",
      "modules": [
        "PhotosUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:PhotoKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating a Slideshow Project Extension for Photos"
    },
    {
      "abstract": "Embed a system-provided, half-height Photos picker into your app’s view.",
      "categories": [
        "Photos and video"
      ],
      "doc_path": "/documentation/PhotoKit/implementing-an-inline-photos-picker",
      "doc_url": "https://developer.apple.com/documentation/PhotoKit/implementing-an-inline-photos-picker",
      "download": {
        "filename": "ImplementingAnInlinePhotosPicker.zip",
        "identifier": "75e8382b6a29/ImplementingAnInlinePhotosPicker.zip",
        "url": "https://docs-assets.developer.apple.com/published/75e8382b6a29/ImplementingAnInlinePhotosPicker.zip"
      },
      "id": "photokit/implementing-an-inline-photos-picker",
      "identifier": "doc://com.apple.photokit/documentation/PhotoKit/implementing-an-inline-photos-picker",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/PhotoKit/implementing-an-inline-photos-picker.json",
      "module": "PhotosUI",
      "modules": [
        "PhotosUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:PhotoKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Implementing an inline Photos picker"
    },
    {
      "abstract": "Improve the user experience of finding and selecting assets by using the Photos picker.",
      "categories": [
        "Photos and video"
      ],
      "doc_path": "/documentation/PhotoKit/selecting-photos-and-videos-in-ios",
      "doc_url": "https://developer.apple.com/documentation/PhotoKit/selecting-photos-and-videos-in-ios",
      "download": {
        "filename": "SelectingPhotosAndVideosInIOS.zip",
        "identifier": "97b1531925cf/SelectingPhotosAndVideosInIOS.zip",
        "url": "https://docs-assets.developer.apple.com/published/97b1531925cf/SelectingPhotosAndVideosInIOS.zip"
      },
      "id": "photokit/selecting-photos-and-videos-in-ios",
      "identifier": "doc://com.apple.photokit/documentation/PhotoKit/selecting-photos-and-videos-in-ios",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/PhotoKit/selecting-photos-and-videos-in-ios.json",
      "module": "PhotosUI",
      "modules": [
        "PhotosUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:PhotoKit",
        "technology-index:Sample Code Library",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Selecting Photos and Videos in iOS"
    },
    {
      "abstract": "Create rendering effects by writing surface shaders and geometry modifiers.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/realitykit/altering_realitykit_rendering_with_shader_functions",
      "doc_url": "https://developer.apple.com/documentation/realitykit/altering_realitykit_rendering_with_shader_functions",
      "download": {
        "filename": "AlteringRealityKitRenderingWithShaderFunctions.zip",
        "identifier": "https://docs-assets.developer.apple.com/published/2296d9cb87/AlteringRealityKitRenderingWithShaderFunctions.zip",
        "url": "https://docs-assets.developer.apple.com/published/2296d9cb87/AlteringRealityKitRenderingWithShaderFunctions.zip"
      },
      "id": "realitykit/altering_realitykit_rendering_with_shader_functions",
      "identifier": "doc://com.apple.documentation/documentation/realitykit/altering_realitykit_rendering_with_shader_functions",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/realitykit/altering_realitykit_rendering_with_shader_functions.json",
      "module": "realitykit",
      "modules": [
        "realitykit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "Altering RealityKit Rendering with Shader Functions"
    },
    {
      "abstract": "Rotate an entity around an axis using a Component and a System.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/animated-rotation-with-a-system",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/animated-rotation-with-a-system",
      "download": {
        "filename": "AnimatingEntityRotationWithASystem.zip",
        "identifier": "b719b81591aa/AnimatingEntityRotationWithASystem.zip",
        "url": "https://docs-assets.developer.apple.com/published/b719b81591aa/AnimatingEntityRotationWithASystem.zip"
      },
      "id": "realitykit/animated-rotation-with-a-system",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/animated-rotation-with-a-system",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/animated-rotation-with-a-system.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.3",
          "name": "Xcode"
        }
      ],
      "title": "Animating entity rotation with a system"
    },
    {
      "abstract": "Adapt a platformer game for RealityKit’s powerful ECS and modularity.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/bringing-your-scenekit-projects-to-realitykit",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/bringing-your-scenekit-projects-to-realitykit",
      "download": {
        "filename": "BringingYourSceneKitProjectsToRealityKit.zip",
        "identifier": "ef18a310f8dc/BringingYourSceneKitProjectsToRealityKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/ef18a310f8dc/BringingYourSceneKitProjectsToRealityKit.zip"
      },
      "id": "realitykit/bringing-your-scenekit-projects-to-realitykit",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/bringing-your-scenekit-projects-to-realitykit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/bringing-your-scenekit-projects-to-realitykit.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Bringing your SceneKit projects to RealityKit"
    },
    {
      "abstract": "Use systems and postprocessing effects to create a realistic underwater scene.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/building-an-immersive-experience-with-realitykit",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/building-an-immersive-experience-with-realitykit",
      "download": {
        "filename": "CreatingAGameWithSceneUnderstanding.zip",
        "identifier": "2e427f3a5227/CreatingAGameWithSceneUnderstanding.zip",
        "url": "https://docs-assets.developer.apple.com/published/2e427f3a5227/CreatingAGameWithSceneUnderstanding.zip"
      },
      "id": "realitykit/building-an-immersive-experience-with-realitykit",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/building-an-immersive-experience-with-realitykit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/building-an-immersive-experience-with-realitykit.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Building an immersive experience with RealityKit"
    },
    {
      "abstract": "Reconstruct objects from user-selected input images by using photogrammetry.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/building-an-object-reconstruction-app",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/building-an-object-reconstruction-app",
      "download": {
        "filename": "BuildingAnObjectReconstructionApp.zip",
        "identifier": "284b70fb0b41/BuildingAnObjectReconstructionApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/284b70fb0b41/BuildingAnObjectReconstructionApp.zip"
      },
      "id": "realitykit/building-an-object-reconstruction-app",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/building-an-object-reconstruction-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/building-an-object-reconstruction-app.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Building an object reconstruction app"
    },
    {
      "abstract": "Use attachments to place 2D content relative to 3D content in your visionOS app.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/combining-2d-and-3d-views-in-an-immersive-app",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/combining-2d-and-3d-views-in-an-immersive-app",
      "download": {
        "filename": "Combining2DAnd3DViewsInAnImmersiveApp.zip",
        "identifier": "5416127e3d80/Combining2DAnd3DViewsInAnImmersiveApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/5416127e3d80/Combining2DAnd3DViewsInAnImmersiveApp.zip"
      },
      "id": "realitykit/combining-2d-and-3d-views-in-an-immersive-app",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/combining-2d-and-3d-views-in-an-immersive-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/combining-2d-and-3d-views-in-an-immersive-app.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Combining 2D and 3D views in an immersive app"
    },
    {
      "abstract": "Build an interactive scene using an animation timeline.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/composing-interactive-3d-content-with-realitykit-and-reality-composer-pro",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/composing-interactive-3d-content-with-realitykit-and-reality-composer-pro",
      "download": {
        "filename": "ComposingInteractive3DContentWithRealityKitAndRealityComposerPro.zip",
        "identifier": "5a4d49513cfd/ComposingInteractive3DContentWithRealityKitAndRealityComposerPro.zip",
        "url": "https://docs-assets.developer.apple.com/published/5a4d49513cfd/ComposingInteractive3DContentWithRealityKitAndRealityComposerPro.zip"
      },
      "id": "realitykit/composing-interactive-3d-content-with-realitykit-and-reality-composer-pro",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/composing-interactive-3d-content-with-realitykit-and-reality-composer-pro",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/composing-interactive-3d-content-with-realitykit-and-reality-composer-pro.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library",
        "technology-index:Swift packages",
        "technology-index:Xcode",
        "technology-index:Xcode Cloud"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Composing interactive 3D content with RealityKit and Reality Composer Pro"
    },
    {
      "abstract": "Use collision groups and collision filters to control which objects collide.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/configuring-collision-in-realitykit",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/configuring-collision-in-realitykit",
      "download": {
        "filename": "ConfiguringCollisionInRealityKit.zip",
        "identifier": "bbb29263e369/ConfiguringCollisionInRealityKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/bbb29263e369/ConfiguringCollisionInRealityKit.zip"
      },
      "id": "realitykit/configuring-collision-in-realitykit",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/configuring-collision-in-realitykit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/configuring-collision-in-realitykit.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Configuring Collision in RealityKit"
    },
    {
      "abstract": "Build efficient custom worlds for your app.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/construct-an-immersive-environment-for-visionOS",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/construct-an-immersive-environment-for-visionOS",
      "download": {
        "filename": "ConstructAnImmersiveEnvironmentForVisionOS.zip",
        "identifier": "e2ab5db2b288/ConstructAnImmersiveEnvironmentForVisionOS.zip",
        "url": "https://docs-assets.developer.apple.com/published/e2ab5db2b288/ConstructAnImmersiveEnvironmentForVisionOS.zip"
      },
      "id": "realitykit/construct-an-immersive-environment-for-visionos",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/construct-an-immersive-environment-for-visionOS",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/construct-an-immersive-environment-for-visionOS.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "1.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "15.3",
          "name": "Xcode"
        }
      ],
      "title": "Construct an immersive environment for visionOS"
    },
    {
      "abstract": "Create collision filters to control which objects collide.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/realitykit/controlling_entity_collisions_in_realitykit",
      "doc_url": "https://developer.apple.com/documentation/realitykit/controlling_entity_collisions_in_realitykit",
      "download": {
        "filename": "ControllingEntityCollisionsInRealityKit.zip",
        "identifier": "https://docs-assets.developer.apple.com/published/6aa4f61d14/ControllingEntityCollisionsInRealityKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/6aa4f61d14/ControllingEntityCollisionsInRealityKit.zip"
      },
      "id": "realitykit/controlling_entity_collisions_in_realitykit",
      "identifier": "doc://com.apple.documentation/documentation/realitykit/controlling_entity_collisions_in_realitykit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/realitykit/controlling_entity_collisions_in_realitykit.json",
      "module": "realitykit",
      "modules": [
        "realitykit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "introduced_at": "12.0",
          "name": "Xcode"
        }
      ],
      "title": "Controlling Entity Collisions in RealityKit"
    },
    {
      "abstract": "Create AR games and experiences that interact with real-world objects on LiDAR-equipped iOS devices.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/creating-a-game-with-scene-understanding",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/creating-a-game-with-scene-understanding",
      "download": {
        "filename": "CreatingAGameWithSceneUnderstanding.zip",
        "identifier": "268ff3844539/CreatingAGameWithSceneUnderstanding.zip",
        "url": "https://docs-assets.developer.apple.com/published/268ff3844539/CreatingAGameWithSceneUnderstanding.zip"
      },
      "id": "realitykit/creating-a-game-with-scene-understanding",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/creating-a-game-with-scene-understanding",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/creating-a-game-with-scene-understanding.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.2",
          "name": "Xcode"
        }
      ],
      "title": "Creating a game with scene understanding"
    },
    {
      "abstract": "Generate 3D objects from images using RealityKit Object Capture.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/creating-a-photogrammetry-command-line-app",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/creating-a-photogrammetry-command-line-app",
      "download": {
        "filename": "CreatingAPhotogrammetryCommandLineApp.zip",
        "identifier": "8ca2a2cfae7e/CreatingAPhotogrammetryCommandLineApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/8ca2a2cfae7e/CreatingAPhotogrammetryCommandLineApp.zip"
      },
      "id": "realitykit/creating-a-photogrammetry-command-line-app",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/creating-a-photogrammetry-command-line-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/creating-a-photogrammetry-command-line-app.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.2",
          "name": "Xcode"
        }
      ],
      "title": "Creating a photogrammetry command-line app"
    },
    {
      "abstract": "Build an immersive game using RealityKit audio, simulation, and rendering features.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/creating-a-spaceship-game",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/creating-a-spaceship-game",
      "download": {
        "filename": "CreatingASpaceshipGame.zip",
        "identifier": "824eb22d9508/CreatingASpaceshipGame.zip",
        "url": "https://docs-assets.developer.apple.com/published/824eb22d9508/CreatingASpaceshipGame.zip"
      },
      "id": "realitykit/creating-a-spaceship-game",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/creating-a-spaceship-game",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/creating-a-spaceship-game.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating a Spaceship game"
    },
    {
      "abstract": "Use low-level mesh and texture APIs to achieve fast updates to a person’s brush strokes by integrating RealityKit with ARKit and SwiftUI.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/creating-a-spatial-drawing-app-with-realitykit",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/creating-a-spatial-drawing-app-with-realitykit",
      "download": {
        "filename": "CreatingASpatialDrawingAppWithRealityKit.zip",
        "identifier": "4dffd26dd4a9/CreatingASpatialDrawingAppWithRealityKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/4dffd26dd4a9/CreatingASpatialDrawingAppWithRealityKit.zip"
      },
      "id": "realitykit/creating-a-spatial-drawing-app-with-realitykit",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/creating-a-spatial-drawing-app-with-realitykit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/creating-a-spatial-drawing-app-with-realitykit.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating a spatial drawing app with RealityKit"
    },
    {
      "abstract": "Combine RealityKit’s face detection with PencilKit to implement virtual face-painting.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/creating-an-app-for-face-painting-in-ar",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/creating-an-app-for-face-painting-in-ar",
      "download": {
        "filename": "CreatingAnAppForFacePaintingInAR.zip",
        "identifier": "b64a2a8bdc5a/CreatingAnAppForFacePaintingInAR.zip",
        "url": "https://docs-assets.developer.apple.com/published/b64a2a8bdc5a/CreatingAnAppForFacePaintingInAR.zip"
      },
      "id": "realitykit/creating-an-app-for-face-painting-in-ar",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/creating-an-app-for-face-painting-in-ar",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/creating-an-app-for-face-painting-in-ar.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.3",
          "name": "Xcode"
        }
      ],
      "title": "Creating an App for Face-Painting in AR"
    },
    {
      "abstract": "Render connected camera feeds in visionOS with minimal latency.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/RealityKit/displaying-low-latency-connected-video",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/displaying-low-latency-connected-video",
      "download": {
        "filename": "DisplayingLowLatencyConnectedVideo.zip",
        "identifier": "2b94902c740c/DisplayingLowLatencyConnectedVideo.zip",
        "url": "https://docs-assets.developer.apple.com/published/2b94902c740c/DisplayingLowLatencyConnectedVideo.zip"
      },
      "id": "realitykit/displaying-low-latency-connected-video",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/displaying-low-latency-connected-video",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/displaying-low-latency-connected-video.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "visionOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Displaying low-latency connected video"
    },
    {
      "abstract": "Secure a video player in an immersive scene with a docking region you can specify.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/docking-a-video-player-in-an-immersive-scene",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/docking-a-video-player-in-an-immersive-scene",
      "download": {
        "filename": "DockingAVideoPlayerInAnImmersiveScene.zip",
        "identifier": "2ad11e450281/DockingAVideoPlayerInAnImmersiveScene.zip",
        "url": "https://docs-assets.developer.apple.com/published/2ad11e450281/DockingAVideoPlayerInAnImmersiveScene.zip"
      },
      "id": "realitykit/docking-a-video-player-in-an-immersive-scene",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/docking-a-video-player-in-an-immersive-scene",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/docking-a-video-player-in-an-immersive-scene.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Docking a video player in an immersive scene"
    },
    {
      "abstract": "Create an interactive mesh with low-level mesh and low-level texture.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/generating-interactive-geometry-with-realitykit",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/generating-interactive-geometry-with-realitykit",
      "download": {
        "filename": "GeneratingInteractiveGeometryWithRealityKit.zip",
        "identifier": "722f0701c26a/GeneratingInteractiveGeometryWithRealityKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/722f0701c26a/GeneratingInteractiveGeometryWithRealityKit.zip"
      },
      "id": "realitykit/generating-interactive-geometry-with-realitykit",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/generating-interactive-geometry-with-realitykit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/generating-interactive-geometry-with-realitykit.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Generating interactive geometry with RealityKit"
    },
    {
      "abstract": "Implement a variety of postprocessing techniques to alter RealityKit rendering.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/implementing-special-rendering-effects-with-realitykit-postprocessing",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/implementing-special-rendering-effects-with-realitykit-postprocessing",
      "download": {
        "filename": "ImplementingSpecialRenderingEffectsWithRealityKitPostprocessing.zip",
        "identifier": "525cf17fc437/ImplementingSpecialRenderingEffectsWithRealityKitPostprocessing.zip",
        "url": "https://docs-assets.developer.apple.com/published/525cf17fc437/ImplementingSpecialRenderingEffectsWithRealityKitPostprocessing.zip"
      },
      "id": "realitykit/implementing-special-rendering-effects-with-realitykit-postprocessing",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/implementing-special-rendering-effects-with-realitykit-postprocessing",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/implementing-special-rendering-effects-with-realitykit-postprocessing.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.3",
          "name": "Xcode"
        }
      ],
      "title": "Implementing special rendering effects with RealityKit postprocessing"
    },
    {
      "abstract": "Create an immersive game using native anchor support, environmental blending, model manipulation, and mesh instance duplication.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/integrating-virtual-objects-with-your-environment",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/integrating-virtual-objects-with-your-environment",
      "download": {
        "filename": "TinyTreasureTrove.zip",
        "identifier": "dc1761991621/TinyTreasureTrove.zip",
        "url": "https://docs-assets.developer.apple.com/published/dc1761991621/TinyTreasureTrove.zip"
      },
      "id": "realitykit/integrating-virtual-objects-with-your-environment",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/integrating-virtual-objects-with-your-environment",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/integrating-virtual-objects-with-your-environment.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Integrating virtual objects with your environment"
    },
    {
      "abstract": "Interact with detailed 3D models using manipulation and clipping controls.",
      "categories": [
        "WWDC26"
      ],
      "doc_path": "/documentation/RealityKit/manipulating-models-with-realitykit",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/manipulating-models-with-realitykit",
      "download": {
        "filename": "ManipulatingModelsWithRealityKit.zip",
        "identifier": "1d3caab2b112/ManipulatingModelsWithRealityKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/1d3caab2b112/ManipulatingModelsWithRealityKit.zip"
      },
      "id": "realitykit/manipulating-models-with-realitykit",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/manipulating-models-with-realitykit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/manipulating-models-with-realitykit.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "visionOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Manipulating models with RealityKit"
    },
    {
      "abstract": "Preview ray-traced reverb by adjusting a spatialized multitrack audio mix in an immersive scene.",
      "categories": [
        "WWDC26"
      ],
      "doc_path": "/documentation/RealityKit/mixing-spatial-music",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/mixing-spatial-music",
      "download": {
        "filename": "MixingSpatialMusic.zip",
        "identifier": "3d1002862fe2/MixingSpatialMusic.zip",
        "url": "https://docs-assets.developer.apple.com/published/3d1002862fe2/MixingSpatialMusic.zip"
      },
      "id": "realitykit/mixing-spatial-music",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/mixing-spatial-music",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/mixing-spatial-music.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "visionOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Mixing spatial music"
    },
    {
      "abstract": "Display a scene from Reality Composer Pro in visionOS.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/presenting-an-artists-scene",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/presenting-an-artists-scene",
      "download": {
        "filename": "PresentingAnArtistsScene.zip",
        "identifier": "2ecf3c5d9ec4/PresentingAnArtistsScene.zip",
        "url": "https://docs-assets.developer.apple.com/published/2ecf3c5d9ec4/PresentingAnArtistsScene.zip"
      },
      "id": "realitykit/presenting-an-artists-scene",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/presenting-an-artists-scene",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/presenting-an-artists-scene.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "1.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Presenting an artist’s scene"
    },
    {
      "abstract": "Create and display spatial scenes in RealityKit",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/presenting-images-in-realitykit",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/presenting-images-in-realitykit",
      "download": {
        "filename": "PresentingImagesInRealityKit.zip",
        "identifier": "7469d2a0cb00/PresentingImagesInRealityKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/7469d2a0cb00/PresentingImagesInRealityKit.zip"
      },
      "id": "realitykit/presenting-images-in-realitykit",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/presenting-images-in-realitykit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/presenting-images-in-realitykit.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Presenting images in RealityKit"
    },
    {
      "abstract": "Bring an iOS or iPadOS game to visionOS and enhance it.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/rendering-a-windowed-game-in-stereo",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/rendering-a-windowed-game-in-stereo",
      "download": {
        "filename": "RenderingAWindowedGameInStereo.zip",
        "identifier": "9e321063c3d8/RenderingAWindowedGameInStereo.zip",
        "url": "https://docs-assets.developer.apple.com/published/9e321063c3d8/RenderingAWindowedGameInStereo.zip"
      },
      "id": "realitykit/rendering-a-windowed-game-in-stereo",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/rendering-a-windowed-game-in-stereo",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/rendering-a-windowed-game-in-stereo.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Rendering a windowed game in stereo"
    },
    {
      "abstract": "Render stereoscopic video in visionOS with RealityKit.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/rendering-stereoscopic-video-with-realitykit",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/rendering-stereoscopic-video-with-realitykit",
      "download": {
        "filename": "RenderingStereoscopicVideoWithRealityKit.zip",
        "identifier": "477b54f54eaf/RenderingStereoscopicVideoWithRealityKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/477b54f54eaf/RenderingStereoscopicVideoWithRealityKit.zip"
      },
      "id": "realitykit/rendering-stereoscopic-video-with-realitykit",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/rendering-stereoscopic-video-with-realitykit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/rendering-stereoscopic-video-with-realitykit.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Rendering stereoscopic video with RealityKit"
    },
    {
      "abstract": "Respond to gestures performed on RealityKit entities using input target and collision components.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/responding-to-gestures-on-an-entity",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/responding-to-gestures-on-an-entity",
      "download": {
        "filename": "RespondingToGesturesOnAnEntity.zip",
        "identifier": "feabe405000a/RespondingToGesturesOnAnEntity.zip",
        "url": "https://docs-assets.developer.apple.com/published/feabe405000a/RespondingToGesturesOnAnEntity.zip"
      },
      "id": "realitykit/responding-to-gestures-on-an-entity",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/responding-to-gestures-on-an-entity",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/responding-to-gestures-on-an-entity.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.3",
          "name": "Xcode"
        }
      ],
      "title": "Responding to gestures on an entity"
    },
    {
      "abstract": "Implement a full scanning workflow for capturing objects on iOS devices.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/scanning-objects-using-object-capture",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/scanning-objects-using-object-capture",
      "download": {
        "filename": "ScanningObjectsUsingObjectCapture.zip",
        "identifier": "c13a7fb3aa69/ScanningObjectsUsingObjectCapture.zip",
        "url": "https://docs-assets.developer.apple.com/published/c13a7fb3aa69/ScanningObjectsUsingObjectCapture.zip"
      },
      "id": "realitykit/scanning-objects-using-object-capture",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/scanning-objects-using-object-capture",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/scanning-objects-using-object-capture.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Scanning objects using Object Capture"
    },
    {
      "abstract": "Add a range of visual effects to a RealityKit view by attaching a particle emitter component to an entity.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/simulating-particles-in-your-visionos-app",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/simulating-particles-in-your-visionos-app",
      "download": {
        "filename": "SimulatingParticlesInYourVisionOSApp.zip",
        "identifier": "24672e0aad03/SimulatingParticlesInYourVisionOSApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/24672e0aad03/SimulatingParticlesInYourVisionOSApp.zip"
      },
      "id": "realitykit/simulating-particles-in-your-visionos-app",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/simulating-particles-in-your-visionos-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/simulating-particles-in-your-visionos-app.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "1.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "15.3",
          "name": "Xcode"
        }
      ],
      "title": "Simulating particles in your visionOS app"
    },
    {
      "abstract": "Create realistic, connected motion using physics joints.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/simulating-physics-joints-in-your-realitykit-app",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/simulating-physics-joints-in-your-realitykit-app",
      "download": {
        "filename": "SimulatingPhysicsJointsInYourRealityKitApp.zip",
        "identifier": "82885aeab3f9/SimulatingPhysicsJointsInYourRealityKitApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/82885aeab3f9/SimulatingPhysicsJointsInYourRealityKitApp.zip"
      },
      "id": "realitykit/simulating-physics-joints-in-your-realitykit-app",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/simulating-physics-joints-in-your-realitykit-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/simulating-physics-joints-in-your-realitykit-app.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Simulating physics joints in your RealityKit app"
    },
    {
      "abstract": "Create entities that behave and react like physical objects in a RealityKit view.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/simulating-physics-with-collisions-in-your-visionos-app",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/simulating-physics-with-collisions-in-your-visionos-app",
      "download": {
        "filename": "SimulatingPhysicsWithCollisionsInYourVisionOSApp.zip",
        "identifier": "08408e5f3ea0/SimulatingPhysicsWithCollisionsInYourVisionOSApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/08408e5f3ea0/SimulatingPhysicsWithCollisionsInYourVisionOSApp.zip"
      },
      "id": "realitykit/simulating-physics-with-collisions-in-your-visionos-app",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/simulating-physics-with-collisions-in-your-visionos-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/simulating-physics-with-collisions-in-your-visionos-app.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "1.1",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "15.3",
          "name": "Xcode"
        }
      ],
      "title": "Simulating physics with collisions in your visionOS app"
    },
    {
      "abstract": "Use a tracked accessory with Apple Vision Pro to create a virtual sculpture.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/tracking-a-handheld-accessory-as-a-virtual-sculpting-tool",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/tracking-a-handheld-accessory-as-a-virtual-sculpting-tool",
      "download": {
        "filename": "SpatialSculptingTrackAHandHeldAccessoryAsAVirtualSculptingTool.zip",
        "identifier": "3bf1f285368f/SpatialSculptingTrackAHandHeldAccessoryAsAVirtualSculptingTool.zip",
        "url": "https://docs-assets.developer.apple.com/published/3bf1f285368f/SpatialSculptingTrackAHandHeldAccessoryAsAVirtualSculptingTool.zip"
      },
      "id": "realitykit/tracking-a-handheld-accessory-as-a-virtual-sculpting-tool",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/tracking-a-handheld-accessory-as-a-virtual-sculpting-tool",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/tracking-a-handheld-accessory-as-a-virtual-sculpting-tool.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Tracking a handheld accessory as a virtual sculpting tool"
    },
    {
      "abstract": "Move an entity between a volumetric window and an immersive space using coordinate space transformations.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/transforming-entities-between-realitykit-coordinate-spaces",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/transforming-entities-between-realitykit-coordinate-spaces",
      "download": {
        "filename": "TransformingEntitiesBetweenRealityKitCoordinateSpaces.zip",
        "identifier": "ee9bf6d279af/TransformingEntitiesBetweenRealityKitCoordinateSpaces.zip",
        "url": "https://docs-assets.developer.apple.com/published/ee9bf6d279af/TransformingEntitiesBetweenRealityKitCoordinateSpaces.zip"
      },
      "id": "realitykit/transforming-entities-between-realitykit-coordinate-spaces",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/transforming-entities-between-realitykit-coordinate-spaces",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/transforming-entities-between-realitykit-coordinate-spaces.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.2",
          "name": "Xcode"
        }
      ],
      "title": "Transforming entities between RealityKit coordinate spaces"
    },
    {
      "abstract": "Build a RealityKit component to support standard visionOS gestures on any entity.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/transforming-realitykit-entities-with-gestures",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/transforming-realitykit-entities-with-gestures",
      "download": {
        "filename": "TransformingRealityKitEntitiesUsingGestures.zip",
        "identifier": "cf576a34dc2e/TransformingRealityKitEntitiesUsingGestures.zip",
        "url": "https://docs-assets.developer.apple.com/published/cf576a34dc2e/TransformingRealityKitEntitiesUsingGestures.zip"
      },
      "id": "realitykit/transforming-realitykit-entities-with-gestures",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/transforming-realitykit-entities-with-gestures",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/transforming-realitykit-entities-with-gestures.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Transforming RealityKit entities using gestures"
    },
    {
      "abstract": "Create a chess game using RealityKit and assets created using Object Capture.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/RealityKit/using-object-capture-assets-in-realitykit",
      "doc_url": "https://developer.apple.com/documentation/RealityKit/using-object-capture-assets-in-realitykit",
      "download": {
        "filename": "UsingObjectCaptureAssetsInRealityKit.zip",
        "identifier": "5e3ab03b922b/UsingObjectCaptureAssetsInRealityKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/5e3ab03b922b/UsingObjectCaptureAssetsInRealityKit.zip"
      },
      "id": "realitykit/using-object-capture-assets-in-realitykit",
      "identifier": "doc://com.apple.RealityKit/documentation/RealityKit/using-object-capture-assets-in-realitykit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RealityKit/using-object-capture-assets-in-realitykit.json",
      "module": "RealityKit",
      "modules": [
        "RealityKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "Using object capture assets in RealityKit"
    },
    {
      "abstract": "An AR experience that randomly selects a programming framework and maps it onto the user’s face.",
      "categories": [
        "RealityKit and Reality Composer Pro"
      ],
      "doc_path": "/documentation/realitykit/wwdc21_challenge_framework_freestyle",
      "doc_url": "https://developer.apple.com/documentation/realitykit/wwdc21_challenge_framework_freestyle",
      "download": {
        "filename": "WWDC21ChallengeFrameworkFreestyle.zip",
        "identifier": "https://docs-assets.developer.apple.com/published/4fb558dc3a/WWDC21ChallengeFrameworkFreestyle.zip",
        "url": "https://docs-assets.developer.apple.com/published/4fb558dc3a/WWDC21ChallengeFrameworkFreestyle.zip"
      },
      "id": "realitykit/wwdc21_challenge_framework_freestyle",
      "identifier": "doc://com.apple.documentation/documentation/realitykit/wwdc21_challenge_framework_freestyle",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/realitykit/wwdc21_challenge_framework_freestyle.json",
      "module": "realitykit",
      "modules": [
        "realitykit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "WWDC21 Challenge: Framework Freestyle"
    },
    {
      "abstract": "Share screen recordings, or broadcast live audio and video of your app, by adding ReplayKit to your macOS apps and games.",
      "categories": [
        "Photos and video"
      ],
      "doc_path": "/documentation/ReplayKit/recording-and-streaming-your-macos-app",
      "doc_url": "https://developer.apple.com/documentation/ReplayKit/recording-and-streaming-your-macos-app",
      "download": {
        "filename": "RecordingAndStreamingYourMacOSApp.zip",
        "identifier": "d5c35a6b7fa8/RecordingAndStreamingYourMacOSApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/d5c35a6b7fa8/RecordingAndStreamingYourMacOSApp.zip"
      },
      "id": "replaykit/recording-and-streaming-your-macos-app",
      "identifier": "doc://com.apple.replaykit/documentation/ReplayKit/recording-and-streaming-your-macos-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ReplayKit/recording-and-streaming-your-macos-app.json",
      "module": "ReplayKit",
      "modules": [
        "ReplayKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ReplayKit",
        "technology-index:Sample Code Library",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Recording and Streaming Your macOS App"
    },
    {
      "abstract": "Highlight physical structures and display text that guides a user to scan the shape of their physical environment using a framework-provided view.",
      "categories": [
        "Graphics"
      ],
      "doc_path": "/documentation/RoomPlan/create-a-3d-model-of-an-interior-room-by-guiding-the-user-through-an-ar-experience",
      "doc_url": "https://developer.apple.com/documentation/RoomPlan/create-a-3d-model-of-an-interior-room-by-guiding-the-user-through-an-ar-experience",
      "download": {
        "filename": "CreateA3DModelOfAnInteriorRoomByGuidingTheUserThroughAnARExperience.zip",
        "identifier": "c8fc349459d3/CreateA3DModelOfAnInteriorRoomByGuidingTheUserThroughAnARExperience.zip",
        "url": "https://docs-assets.developer.apple.com/published/c8fc349459d3/CreateA3DModelOfAnInteriorRoomByGuidingTheUserThroughAnARExperience.zip"
      },
      "id": "roomplan/create-a-3d-model-of-an-interior-room-by-guiding-the-user-through-an-ar-experience",
      "identifier": "doc://com.apple.RoomPlan/documentation/RoomPlan/create-a-3d-model-of-an-interior-room-by-guiding-the-user-through-an-ar-experience",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RoomPlan/create-a-3d-model-of-an-interior-room-by-guiding-the-user-through-an-ar-experience.json",
      "module": "RoomPlan",
      "modules": [
        "RoomPlan"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RoomPlan",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Create a 3D model of an interior room by guiding the user through an AR experience"
    },
    {
      "abstract": "Export a 3D model that consists of multiple rooms captured in the same physical vicinity.",
      "categories": [
        "Graphics"
      ],
      "doc_path": "/documentation/RoomPlan/merging-multiple-scans-into-a-single-structure",
      "doc_url": "https://developer.apple.com/documentation/RoomPlan/merging-multiple-scans-into-a-single-structure",
      "download": {
        "filename": "MergingMultipleScansIntoASingleStructure.zip",
        "identifier": "3e2b731b0ef7/MergingMultipleScansIntoASingleStructure.zip",
        "url": "https://docs-assets.developer.apple.com/published/3e2b731b0ef7/MergingMultipleScansIntoASingleStructure.zip"
      },
      "id": "roomplan/merging-multiple-scans-into-a-single-structure",
      "identifier": "doc://com.apple.RoomPlan/documentation/RoomPlan/merging-multiple-scans-into-a-single-structure",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RoomPlan/merging-multiple-scans-into-a-single-structure.json",
      "module": "RoomPlan",
      "modules": [
        "RoomPlan"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RoomPlan",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.2",
          "name": "Xcode"
        }
      ],
      "title": "Merging multiple scans into a single structure"
    },
    {
      "abstract": "Enhance the look of an exported 3D model by substituting object bounding boxes with detailed 3D renditions.",
      "categories": [
        "Graphics"
      ],
      "doc_path": "/documentation/RoomPlan/providing-custom-models-for-captured-rooms-and-structure-exports",
      "doc_url": "https://developer.apple.com/documentation/RoomPlan/providing-custom-models-for-captured-rooms-and-structure-exports",
      "download": {
        "filename": "ProvidingCustomModelsForCapturedRoomsAndStructureExports.zip",
        "identifier": "92666d9d480f/ProvidingCustomModelsForCapturedRoomsAndStructureExports.zip",
        "url": "https://docs-assets.developer.apple.com/published/92666d9d480f/ProvidingCustomModelsForCapturedRoomsAndStructureExports.zip"
      },
      "id": "roomplan/providing-custom-models-for-captured-rooms-and-structure-exports",
      "identifier": "doc://com.apple.RoomPlan/documentation/RoomPlan/providing-custom-models-for-captured-rooms-and-structure-exports",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/RoomPlan/providing-custom-models-for-captured-rooms-and-structure-exports.json",
      "module": "RoomPlan",
      "modules": [
        "RoomPlan"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RoomPlan",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.2",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.2",
          "name": "Xcode"
        }
      ],
      "title": "Providing custom models for captured rooms and structure exports"
    },
    {
      "abstract": "Block web content with your web extension using the declarative net request API.",
      "categories": [
        "Web"
      ],
      "doc_path": "/documentation/SafariServices/adopting-declarative-content-blocking-in-safari-web-extensions",
      "doc_url": "https://developer.apple.com/documentation/SafariServices/adopting-declarative-content-blocking-in-safari-web-extensions",
      "download": {
        "filename": "AdoptingDeclarativeContentBlockingInSafariWebExtensions.zip",
        "identifier": "6ea0c8e5964b/AdoptingDeclarativeContentBlockingInSafariWebExtensions.zip",
        "url": "https://docs-assets.developer.apple.com/published/6ea0c8e5964b/AdoptingDeclarativeContentBlockingInSafariWebExtensions.zip"
      },
      "id": "safariservices/adopting-declarative-content-blocking-in-safari-web-extensions",
      "identifier": "doc://com.apple.safariservices/documentation/SafariServices/adopting-declarative-content-blocking-in-safari-web-extensions",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SafariServices/adopting-declarative-content-blocking-in-safari-web-extensions.json",
      "module": "Safari Services",
      "modules": [
        "Safari Services"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Safari Services",
        "technology-index:Safari app extensions",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "10.14",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Adopting Declarative Content Blocking in Safari Web Extensions"
    },
    {
      "abstract": "Improve your web extension in Safari with a non-persistent background page and new tab-override customization.",
      "categories": [
        "Web"
      ],
      "doc_path": "/documentation/SafariServices/adopting-new-safari-web-extension-apis",
      "doc_url": "https://developer.apple.com/documentation/SafariServices/adopting-new-safari-web-extension-apis",
      "download": {
        "filename": "AdoptingNewSafariWebExtensionAPIs.zip",
        "identifier": "dbeff6e414b9/AdoptingNewSafariWebExtensionAPIs.zip",
        "url": "https://docs-assets.developer.apple.com/published/dbeff6e414b9/AdoptingNewSafariWebExtensionAPIs.zip"
      },
      "id": "safariservices/adopting-new-safari-web-extension-apis",
      "identifier": "doc://com.apple.safariservices/documentation/SafariServices/adopting-new-safari-web-extension-apis",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SafariServices/adopting-new-safari-web-extension-apis.json",
      "module": "Safari Services",
      "modules": [
        "Safari Services"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Safari Services",
        "technology-index:Safari app extensions",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "10.14",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Adopting New Safari Web Extension APIs"
    },
    {
      "abstract": "Get started with Safari web extensions by creating one from the ground up, using any code editor.",
      "categories": [
        "WWDC26"
      ],
      "doc_path": "/documentation/SafariServices/building-and-testing-a-safari-web-extension",
      "doc_url": "https://developer.apple.com/documentation/SafariServices/building-and-testing-a-safari-web-extension",
      "download": {
        "filename": "BuildingAndTestingASafariWebExtension.zip",
        "identifier": "d74fe4c56ae7/BuildingAndTestingASafariWebExtension.zip",
        "url": "https://docs-assets.developer.apple.com/published/d74fe4c56ae7/BuildingAndTestingASafariWebExtension.zip"
      },
      "id": "safariservices/building-and-testing-a-safari-web-extension",
      "identifier": "doc://com.apple.safariservices/documentation/SafariServices/building-and-testing-a-safari-web-extension",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SafariServices/building-and-testing-a-safari-web-extension.json",
      "module": "Safari Services",
      "modules": [
        "Safari Services"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Safari Services",
        "technology-index:Safari app extensions",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iPadOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "macOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "visionOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Building and testing a Safari web extension"
    },
    {
      "abstract": "Learn how to make custom Safari Web Inspector extensions.",
      "categories": [
        "Web"
      ],
      "doc_path": "/documentation/SafariServices/creating-safari-web-inspector-extensions",
      "doc_url": "https://developer.apple.com/documentation/SafariServices/creating-safari-web-inspector-extensions",
      "download": {
        "filename": "CreatingSafariWebInspectorExtensions.zip",
        "identifier": "52e5f9bc2439/CreatingSafariWebInspectorExtensions.zip",
        "url": "https://docs-assets.developer.apple.com/published/52e5f9bc2439/CreatingSafariWebInspectorExtensions.zip"
      },
      "id": "safariservices/creating-safari-web-inspector-extensions",
      "identifier": "doc://com.apple.safariservices/documentation/SafariServices/creating-safari-web-inspector-extensions",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SafariServices/creating-safari-web-inspector-extensions.json",
      "module": "Safari Services",
      "modules": [
        "Safari Services"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Safari Services",
        "technology-index:Safari app extensions",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating Safari Web Inspector extensions"
    },
    {
      "abstract": "Customize and enhance web pages by building a Safari web extension.",
      "categories": [
        "Web"
      ],
      "doc_path": "/documentation/SafariServices/developing-a-safari-web-extension",
      "doc_url": "https://developer.apple.com/documentation/SafariServices/developing-a-safari-web-extension",
      "download": {
        "filename": "DevelopingASafariWebExtension.zip",
        "identifier": "cdc20af77aa3/DevelopingASafariWebExtension.zip",
        "url": "https://docs-assets.developer.apple.com/published/cdc20af77aa3/DevelopingASafariWebExtension.zip"
      },
      "id": "safariservices/developing-a-safari-web-extension",
      "identifier": "doc://com.apple.safariservices/documentation/SafariServices/developing-a-safari-web-extension",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SafariServices/developing-a-safari-web-extension.json",
      "module": "Safari Services",
      "modules": [
        "Safari Services"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Safari Services",
        "technology-index:Safari app extensions",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "10.14",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Xcode"
        }
      ],
      "title": "Developing a Safari Web Extension"
    },
    {
      "abstract": "Communicate between your Safari web extension and its containing app.",
      "categories": [
        "Web"
      ],
      "doc_path": "/documentation/SafariServices/messaging-a-web-extension-s-native-app",
      "doc_url": "https://developer.apple.com/documentation/SafariServices/messaging-a-web-extension-s-native-app",
      "download": {
        "filename": "MessagingAWebExtensionsNativeApp.zip",
        "identifier": "783afed94c2e/MessagingAWebExtensionsNativeApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/783afed94c2e/MessagingAWebExtensionsNativeApp.zip"
      },
      "id": "safariservices/messaging-a-web-extension-s-native-app",
      "identifier": "doc://com.apple.safariservices/documentation/SafariServices/messaging-a-web-extension-s-native-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SafariServices/messaging-a-web-extension-s-native-app.json",
      "module": "Safari Services",
      "modules": [
        "Safari Services"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Safari Services",
        "technology-index:Safari app extensions",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "10.14",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Xcode"
        }
      ],
      "title": "Messaging a Web Extension’s Native App"
    },
    {
      "abstract": "Learn about enhancements to Safari Web Extensions.",
      "categories": [
        "Web"
      ],
      "doc_path": "/documentation/SafariServices/modernizing-safari-web-extensions",
      "doc_url": "https://developer.apple.com/documentation/SafariServices/modernizing-safari-web-extensions",
      "download": {
        "filename": "ModernizingSafariWebExtensions.zip",
        "identifier": "d43c0429a69e/ModernizingSafariWebExtensions.zip",
        "url": "https://docs-assets.developer.apple.com/published/d43c0429a69e/ModernizingSafariWebExtensions.zip"
      },
      "id": "safariservices/modernizing-safari-web-extensions",
      "identifier": "doc://com.apple.safariservices/documentation/SafariServices/modernizing-safari-web-extensions",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SafariServices/modernizing-safari-web-extensions.json",
      "module": "Safari Services",
      "modules": [
        "Safari Services"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Safari Services",
        "technology-index:Safari app extensions",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "Modernizing Safari Web Extensions"
    },
    {
      "abstract": "Build a Safari Extension that displays metadata using Open Graph.",
      "categories": [
        "Web"
      ],
      "doc_path": "/documentation/SafariServices/previewing-metadata-using-open-graph",
      "doc_url": "https://developer.apple.com/documentation/SafariServices/previewing-metadata-using-open-graph",
      "download": {
        "filename": "PreviewingMetadataUsingOpenGraph.zip",
        "identifier": "30a55aaa70fc/PreviewingMetadataUsingOpenGraph.zip",
        "url": "https://docs-assets.developer.apple.com/published/30a55aaa70fc/PreviewingMetadataUsingOpenGraph.zip"
      },
      "id": "safariservices/previewing-metadata-using-open-graph",
      "identifier": "doc://com.apple.safariservices/documentation/SafariServices/previewing-metadata-using-open-graph",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SafariServices/previewing-metadata-using-open-graph.json",
      "module": "Safari Services",
      "modules": [
        "Safari Services"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Safari Services",
        "technology-index:Safari app extensions",
        "technology-index:Sample Code Library"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "10.14",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "13.2",
          "name": "Xcode"
        }
      ],
      "title": "Previewing Metadata using Open Graph"
    },
    {
      "abstract": "Create visual effects in a scene by defining a rendering technique with custom symbols.",
      "categories": [
        "Graphics"
      ],
      "doc_path": "/documentation/SceneKit/postprocessing-a-scene-with-custom-symbols",
      "doc_url": "https://developer.apple.com/documentation/SceneKit/postprocessing-a-scene-with-custom-symbols",
      "download": {
        "filename": "PostprocessingASceneWithCustomSymbols.zip",
        "identifier": "f89f16c9e038/PostprocessingASceneWithCustomSymbols.zip",
        "url": "https://docs-assets.developer.apple.com/published/f89f16c9e038/PostprocessingASceneWithCustomSymbols.zip"
      },
      "id": "scenekit/postprocessing-a-scene-with-custom-symbols",
      "identifier": "doc://com.apple.scenekit/documentation/SceneKit/postprocessing-a-scene-with-custom-symbols",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SceneKit/postprocessing-a-scene-with-custom-symbols.json",
      "module": "SceneKit",
      "modules": [
        "SceneKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SceneKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Postprocessing a Scene With Custom Symbols"
    },
    {
      "abstract": "Stream desktop content like displays, apps, and windows by adopting screen capture in your app.",
      "categories": [
        "Photos and video"
      ],
      "doc_path": "/documentation/ScreenCaptureKit/capturing-screen-content-in-macos",
      "doc_url": "https://developer.apple.com/documentation/ScreenCaptureKit/capturing-screen-content-in-macos",
      "download": {
        "filename": "CapturingScreenContentInMacOS.zip",
        "identifier": "9db8b3fae777/CapturingScreenContentInMacOS.zip",
        "url": "https://docs-assets.developer.apple.com/published/9db8b3fae777/CapturingScreenContentInMacOS.zip"
      },
      "id": "screencapturekit/capturing-screen-content-in-macos",
      "identifier": "doc://com.apple.screencapturekit/documentation/ScreenCaptureKit/capturing-screen-content-in-macos",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ScreenCaptureKit/capturing-screen-content-in-macos.json",
      "module": "ScreenCaptureKit",
      "modules": [
        "ScreenCaptureKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:ScreenCaptureKit",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Capturing screen content in macOS"
    },
    {
      "abstract": "Record and share screen captures on iOS by presenting the system content-sharing picker.",
      "categories": [],
      "doc_path": "/documentation/screencapturekit/capturing-screen-content-on-ios",
      "doc_url": "https://developer.apple.com/documentation/screencapturekit/capturing-screen-content-on-ios",
      "download": {
        "filename": "CapturingScreenContentInIOS.zip",
        "identifier": "0bc44159ad7d/CapturingScreenContentInIOS.zip",
        "url": "https://docs-assets.developer.apple.com/published/0bc44159ad7d/CapturingScreenContentInIOS.zip"
      },
      "id": "screencapturekit/capturing-screen-content-on-ios",
      "identifier": "doc://com.apple.screencapturekit/documentation/ScreenCaptureKit/capturing-screen-content-on-ios",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/screencapturekit/capturing-screen-content-on-ios.json",
      "module": "ScreenCaptureKit",
      "modules": [
        "ScreenCaptureKit"
      ],
      "origins": [
        "technology-index:ScreenCaptureKit"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iPadOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Capturing screen content on iOS"
    },
    {
      "abstract": "Improve the security of your macOS app by limiting the ways its components can run.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/Security/constraining-a-tool's-launch-environment",
      "doc_url": "https://developer.apple.com/documentation/Security/constraining-a-tool's-launch-environment",
      "download": {
        "filename": "ConstrainingAToolsLaunchEnvironment.zip",
        "identifier": "e78b2eb10802/ConstrainingAToolsLaunchEnvironment.zip",
        "url": "https://docs-assets.developer.apple.com/published/e78b2eb10802/ConstrainingAToolsLaunchEnvironment.zip"
      },
      "id": "security/constraining-a-tool's-launch-environment",
      "identifier": "doc://com.apple.security/documentation/Security/constraining-a-tool's-launch-environment",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Security/constraining-a-tool%27s-launch-environment.json",
      "module": "Security",
      "modules": [
        "Security"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Security"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Constraining a tool’s launch environment"
    },
    {
      "abstract": "Learn about the Service Management API with a GUI-less agent app.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/ServiceManagement/updating-your-app-package-installer-to-use-the-new-service-management-api",
      "doc_url": "https://developer.apple.com/documentation/ServiceManagement/updating-your-app-package-installer-to-use-the-new-service-management-api",
      "download": {
        "filename": "UpdatingYourAppPackageInstallerToUseTheNewServiceManagementAPI.zip",
        "identifier": "2527b6fa1f54/UpdatingYourAppPackageInstallerToUseTheNewServiceManagementAPI.zip",
        "url": "https://docs-assets.developer.apple.com/published/2527b6fa1f54/UpdatingYourAppPackageInstallerToUseTheNewServiceManagementAPI.zip"
      },
      "id": "servicemanagement/updating-your-app-package-installer-to-use-the-new-service-management-api",
      "identifier": "doc://com.apple.servicemanagement/documentation/ServiceManagement/updating-your-app-package-installer-to-use-the-new-service-management-api",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ServiceManagement/updating-your-app-package-installer-to-use-the-new-service-management-api.json",
      "module": "Service Management",
      "modules": [
        "Service Management"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Service Management"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Updating your app package installer to use the new Service Management API"
    },
    {
      "abstract": "Display lesson content that’s synchronized to a learning video by matching the audio to a custom reference signature and associated metadata.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/ShazamKit/building-a-custom-catalog-and-matching-audio",
      "doc_url": "https://developer.apple.com/documentation/ShazamKit/building-a-custom-catalog-and-matching-audio",
      "download": {
        "filename": "BuildingACustomCatalogAndMatchingAudio.zip",
        "identifier": "381514c405ff/BuildingACustomCatalogAndMatchingAudio.zip",
        "url": "https://docs-assets.developer.apple.com/published/381514c405ff/BuildingACustomCatalogAndMatchingAudio.zip"
      },
      "id": "shazamkit/building-a-custom-catalog-and-matching-audio",
      "identifier": "doc://com.apple.shazamkit/documentation/ShazamKit/building-a-custom-catalog-and-matching-audio",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ShazamKit/building-a-custom-catalog-and-matching-audio.json",
      "module": "ShazamKit",
      "modules": [
        "ShazamKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:ShazamKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Building a Custom Catalog and Matching Audio"
    },
    {
      "abstract": "Find a video of dance moves for a specific song by matching the audio to a custom catalog, and show a history of recognized songs.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/ShazamKit/shazamkit-dance-finder-with-managed-session",
      "doc_url": "https://developer.apple.com/documentation/ShazamKit/shazamkit-dance-finder-with-managed-session",
      "download": {
        "filename": "ShazamKitDanceFinderWithManagedSession.zip",
        "identifier": "916473d94bbc/ShazamKitDanceFinderWithManagedSession.zip",
        "url": "https://docs-assets.developer.apple.com/published/916473d94bbc/ShazamKitDanceFinderWithManagedSession.zip"
      },
      "id": "shazamkit/shazamkit-dance-finder-with-managed-session",
      "identifier": "doc://com.apple.shazamkit/documentation/ShazamKit/shazamkit-dance-finder-with-managed-session",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/ShazamKit/shazamkit-dance-finder-with-managed-session.json",
      "module": "ShazamKit",
      "modules": [
        "ShazamKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:ShazamKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "ShazamKit Dance Finder with Managed Session"
    },
    {
      "abstract": "Reveal your app’s shortcuts inside the Health app.",
      "categories": [
        "App Intents and SiriKit"
      ],
      "doc_path": "/documentation/SiriKit/adding-shortcuts-for-wind-down",
      "doc_url": "https://developer.apple.com/documentation/SiriKit/adding-shortcuts-for-wind-down",
      "download": {
        "filename": "AddingShortcutsForWindDown.zip",
        "identifier": "b0c8ca2444c2/AddingShortcutsForWindDown.zip",
        "url": "https://docs-assets.developer.apple.com/published/b0c8ca2444c2/AddingShortcutsForWindDown.zip"
      },
      "id": "sirikit/adding-shortcuts-for-wind-down",
      "identifier": "doc://com.apple.sirikit/documentation/SiriKit/adding-shortcuts-for-wind-down",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SiriKit/adding-shortcuts-for-wind-down.json",
      "module": "Intents",
      "modules": [
        "Intents"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SiriKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Xcode"
        }
      ],
      "title": "Adding Shortcuts for Wind Down"
    },
    {
      "abstract": "Add Intents extensions to your app to handle requests to book rides using Siri and Maps.",
      "categories": [
        "App Intents and SiriKit"
      ],
      "doc_path": "/documentation/SiriKit/booking-rides-with-sirikit",
      "doc_url": "https://developer.apple.com/documentation/SiriKit/booking-rides-with-sirikit",
      "download": {
        "filename": "BookingRidesWithSiriKit.zip",
        "identifier": "96e002fc0d25/BookingRidesWithSiriKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/96e002fc0d25/BookingRidesWithSiriKit.zip"
      },
      "id": "sirikit/booking-rides-with-sirikit",
      "identifier": "doc://com.apple.sirikit/documentation/SiriKit/booking-rides-with-sirikit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SiriKit/booking-rides-with-sirikit.json",
      "module": "Intents",
      "modules": [
        "Intents"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SiriKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Xcode"
        }
      ],
      "title": "Booking Rides with SiriKit"
    },
    {
      "abstract": "Add an Intent Extension to your app to handle money transfer requests with Siri.",
      "categories": [
        "App Intents and SiriKit"
      ],
      "doc_path": "/documentation/SiriKit/handling-payment-requests-with-sirikit",
      "doc_url": "https://developer.apple.com/documentation/SiriKit/handling-payment-requests-with-sirikit",
      "download": {
        "filename": "HandlingPaymentRequestsWithSiriKit.zip",
        "identifier": "5460339aebf0/HandlingPaymentRequestsWithSiriKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/5460339aebf0/HandlingPaymentRequestsWithSiriKit.zip"
      },
      "id": "sirikit/handling-payment-requests-with-sirikit",
      "identifier": "doc://com.apple.sirikit/documentation/SiriKit/handling-payment-requests-with-sirikit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SiriKit/handling-payment-requests-with-sirikit.json",
      "module": "Intents",
      "modules": [
        "Intents"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SiriKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "10.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "10.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "10.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Xcode"
        }
      ],
      "title": "Handling Payment Requests with SiriKit"
    },
    {
      "abstract": "Add an Intent Extension to your app that handles requests to control workouts with Siri.",
      "categories": [
        "App Intents and SiriKit"
      ],
      "doc_path": "/documentation/SiriKit/handling-workout-requests-with-sirikit",
      "doc_url": "https://developer.apple.com/documentation/SiriKit/handling-workout-requests-with-sirikit",
      "download": {
        "filename": "HandlingWorkoutRequestsWithSiriKit.zip",
        "identifier": "0403d3e99e08/HandlingWorkoutRequestsWithSiriKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/0403d3e99e08/HandlingWorkoutRequestsWithSiriKit.zip"
      },
      "id": "sirikit/handling-workout-requests-with-sirikit",
      "identifier": "doc://com.apple.sirikit/documentation/SiriKit/handling-workout-requests-with-sirikit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SiriKit/handling-workout-requests-with-sirikit.json",
      "module": "Intents",
      "modules": [
        "Intents"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SiriKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.1",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.1",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.1",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Xcode"
        }
      ],
      "title": "Handling Workout Requests with SiriKit"
    },
    {
      "abstract": "Donate reservations and provide quick access to event details throughout the system.",
      "categories": [
        "App Intents and SiriKit"
      ],
      "doc_path": "/documentation/SiriKit/integrating-your-app-with-siri-event-suggestions",
      "doc_url": "https://developer.apple.com/documentation/SiriKit/integrating-your-app-with-siri-event-suggestions",
      "download": {
        "filename": "IntegratingYourAppWithSiriEventSuggestions.zip",
        "identifier": "61ff9b4fed64/IntegratingYourAppWithSiriEventSuggestions.zip",
        "url": "https://docs-assets.developer.apple.com/published/61ff9b4fed64/IntegratingYourAppWithSiriEventSuggestions.zip"
      },
      "id": "sirikit/integrating-your-app-with-siri-event-suggestions",
      "identifier": "doc://com.apple.sirikit/documentation/SiriKit/integrating-your-app-with-siri-event-suggestions",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SiriKit/integrating-your-app-with-siri-event-suggestions.json",
      "module": "Intents",
      "modules": [
        "Intents"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SiriKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Xcode"
        }
      ],
      "title": "Integrating Your App with Siri Event Suggestions"
    },
    {
      "abstract": "Control audio playback and handle requests to add media using SiriKit Media Intents.",
      "categories": [
        "App Intents and SiriKit"
      ],
      "doc_path": "/documentation/SiriKit/managing-audio-with-sirikit",
      "doc_url": "https://developer.apple.com/documentation/SiriKit/managing-audio-with-sirikit",
      "download": {
        "filename": "ManagingAudioWithSiriKit.zip",
        "identifier": "c986c8b9ac77/ManagingAudioWithSiriKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/c986c8b9ac77/ManagingAudioWithSiriKit.zip"
      },
      "id": "sirikit/managing-audio-with-sirikit",
      "identifier": "doc://com.apple.sirikit/documentation/SiriKit/managing-audio-with-sirikit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SiriKit/managing-audio-with-sirikit.json",
      "module": "Intents",
      "modules": [
        "Intents"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SiriKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Managing Audio with SiriKit"
    },
    {
      "abstract": "Resolve, confirm, and handle intents without an extension.",
      "categories": [
        "App Intents and SiriKit"
      ],
      "doc_path": "/documentation/SiriKit/providing-hands-free-app-control-with-intents",
      "doc_url": "https://developer.apple.com/documentation/SiriKit/providing-hands-free-app-control-with-intents",
      "download": {
        "filename": "ProvidingHandsFreeAppControlWithIntents.zip",
        "identifier": "5b91fb7659a0/ProvidingHandsFreeAppControlWithIntents.zip",
        "url": "https://docs-assets.developer.apple.com/published/5b91fb7659a0/ProvidingHandsFreeAppControlWithIntents.zip"
      },
      "id": "sirikit/providing-hands-free-app-control-with-intents",
      "identifier": "doc://com.apple.sirikit/documentation/SiriKit/providing-hands-free-app-control-with-intents",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SiriKit/providing-hands-free-app-control-with-intents.json",
      "module": "Intents",
      "modules": [
        "Intents"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SiriKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Xcode"
        }
      ],
      "title": "Providing Hands-Free App Control with Intents"
    },
    {
      "abstract": "Make it easy for people to use Siri with your app by providing shortcuts to your app’s actions.",
      "categories": [
        "App Intents and SiriKit"
      ],
      "doc_path": "/documentation/SiriKit/soup-chef-accelerating-app-interactions-with-shortcuts",
      "doc_url": "https://developer.apple.com/documentation/SiriKit/soup-chef-accelerating-app-interactions-with-shortcuts",
      "download": {
        "filename": "SoupChefAcceleratingAppInteractionsWithShortcuts.zip",
        "identifier": "087e5ed18661/SoupChefAcceleratingAppInteractionsWithShortcuts.zip",
        "url": "https://docs-assets.developer.apple.com/published/087e5ed18661/SoupChefAcceleratingAppInteractionsWithShortcuts.zip"
      },
      "id": "sirikit/soup-chef-accelerating-app-interactions-with-shortcuts",
      "identifier": "doc://com.apple.sirikit/documentation/SiriKit/soup-chef-accelerating-app-interactions-with-shortcuts",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SiriKit/soup-chef-accelerating-app-interactions-with-shortcuts.json",
      "module": "Intents",
      "modules": [
        "Intents"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SiriKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "7.0",
          "name": "watchOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Xcode"
        }
      ],
      "title": "Soup Chef: Accelerating App Interactions with Shortcuts"
    },
    {
      "abstract": "Integrating App Intents to provide your appʼs actions to Siri and Shortcuts.",
      "categories": [
        "App Intents and SiriKit"
      ],
      "doc_path": "/documentation/SiriKit/soup-chef-with-app-intents-migrating-custom-intents",
      "doc_url": "https://developer.apple.com/documentation/SiriKit/soup-chef-with-app-intents-migrating-custom-intents",
      "download": {
        "filename": "SoupChefWithAppIntentsMigratingCustomIntents.zip",
        "identifier": "f321dc54a150/SoupChefWithAppIntentsMigratingCustomIntents.zip",
        "url": "https://docs-assets.developer.apple.com/published/f321dc54a150/SoupChefWithAppIntentsMigratingCustomIntents.zip"
      },
      "id": "sirikit/soup-chef-with-app-intents-migrating-custom-intents",
      "identifier": "doc://com.apple.sirikit/documentation/SiriKit/soup-chef-with-app-intents-migrating-custom-intents",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SiriKit/soup-chef-with-app-intents-migrating-custom-intents.json",
      "module": "Intents",
      "modules": [
        "Intents"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:App Intents",
        "technology-index:Sample Code Library",
        "technology-index:SiriKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Xcode"
        }
      ],
      "title": "Soup Chef with App Intents: Migrating custom intents"
    },
    {
      "abstract": "Detect and identify hundreds of sounds by using a trained classifier.",
      "categories": [
        "Audio and music"
      ],
      "doc_path": "/documentation/SoundAnalysis/classifying-live-audio-input-with-a-built-in-sound-classifier",
      "doc_url": "https://developer.apple.com/documentation/SoundAnalysis/classifying-live-audio-input-with-a-built-in-sound-classifier",
      "download": {
        "filename": "ClassifyingLiveAudioInputWithABuiltInSoundClassifier.zip",
        "identifier": "ee91a9289839/ClassifyingLiveAudioInputWithABuiltInSoundClassifier.zip",
        "url": "https://docs-assets.developer.apple.com/published/ee91a9289839/ClassifyingLiveAudioInputWithABuiltInSoundClassifier.zip"
      },
      "id": "soundanalysis/classifying-live-audio-input-with-a-built-in-sound-classifier",
      "identifier": "doc://com.apple.soundanalysis/documentation/SoundAnalysis/classifying-live-audio-input-with-a-built-in-sound-classifier",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SoundAnalysis/classifying-live-audio-input-with-a-built-in-sound-classifier.json",
      "module": "Sound Analysis",
      "modules": [
        "Sound Analysis"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Sound Analysis",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Classifying Live Audio Input with a Built-in Sound Classifier"
    },
    {
      "abstract": "Send and update documents, and work with 3D content live from your macOS app to a visionOS device through the Spatial Preview framework.",
      "categories": [
        "WWDC26"
      ],
      "doc_path": "/documentation/SpatialPreview/working-with-content-from-your-mac-app-using-spatial-preview",
      "doc_url": "https://developer.apple.com/documentation/SpatialPreview/working-with-content-from-your-mac-app-using-spatial-preview",
      "download": {
        "filename": "WorkingWithContentFromYourMacAppUsingSpatialPreview.zip",
        "identifier": "b11f4074452d/WorkingWithContentFromYourMacAppUsingSpatialPreview.zip",
        "url": "https://docs-assets.developer.apple.com/published/b11f4074452d/WorkingWithContentFromYourMacAppUsingSpatialPreview.zip"
      },
      "id": "spatialpreview/working-with-content-from-your-mac-app-using-spatial-preview",
      "identifier": "doc://com.apple.SpatialPreview/documentation/SpatialPreview/working-with-content-from-your-mac-app-using-spatial-preview",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SpatialPreview/working-with-content-from-your-mac-app-using-spatial-preview.json",
      "module": "Spatial Preview",
      "modules": [
        "Spatial Preview"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Spatial Preview"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "macOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Working with content from your Mac app using Spatial Preview"
    },
    {
      "abstract": "Learn how to incorporate live speech-to-text transcription into your app with SpeechAnalyzer.",
      "categories": [
        "Machine learning"
      ],
      "doc_path": "/documentation/Speech/bringing-advanced-speech-to-text-capabilities-to-your-app",
      "doc_url": "https://developer.apple.com/documentation/Speech/bringing-advanced-speech-to-text-capabilities-to-your-app",
      "download": {
        "filename": "BringingAdvancedSpeechToTextCapabilitiesToYourApp.zip",
        "identifier": "e40c20fc5641/BringingAdvancedSpeechToTextCapabilitiesToYourApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/e40c20fc5641/BringingAdvancedSpeechToTextCapabilitiesToYourApp.zip"
      },
      "id": "speech/bringing-advanced-speech-to-text-capabilities-to-your-app",
      "identifier": "doc://com.apple.speech/documentation/Speech/bringing-advanced-speech-to-text-capabilities-to-your-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Speech/bringing-advanced-speech-to-text-capabilities-to-your-app.json",
      "module": "Speech",
      "modules": [
        "Speech"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Speech"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Bringing advanced speech-to-text capabilities to your app"
    },
    {
      "abstract": "Perform speech recognition and transcription on audio captured from the microphone of an iOS device.",
      "categories": [
        "WWDC26",
        "Audio and music"
      ],
      "doc_path": "/documentation/Speech/recognizing-speech-in-live-audio",
      "doc_url": "https://developer.apple.com/documentation/Speech/recognizing-speech-in-live-audio",
      "download": {
        "filename": "RecognizingSpeechInLiveAudio.zip",
        "identifier": "0c6bad139614/RecognizingSpeechInLiveAudio.zip",
        "url": "https://docs-assets.developer.apple.com/published/0c6bad139614/RecognizingSpeechInLiveAudio.zip"
      },
      "id": "speech/recognizing-speech-in-live-audio",
      "identifier": "doc://com.apple.speech/documentation/Speech/recognizing-speech-in-live-audio",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Speech/recognizing-speech-in-live-audio.json",
      "module": "Speech",
      "modules": [
        "Speech"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Speech"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iPadOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Recognizing speech in live audio"
    },
    {
      "abstract": "Identify a customer’s entitlement to your service, offers, and messaging by analyzing a validated receipt and the state of their subscription.",
      "categories": [
        "StoreKit"
      ],
      "doc_path": "/documentation/StoreKit/determining-service-entitlement-on-the-server",
      "doc_url": "https://developer.apple.com/documentation/StoreKit/determining-service-entitlement-on-the-server",
      "download": {
        "filename": "DeterminingServiceEntitlementOnTheServer.zip",
        "identifier": "8334bfef2b2e/DeterminingServiceEntitlementOnTheServer.zip",
        "url": "https://docs-assets.developer.apple.com/published/8334bfef2b2e/DeterminingServiceEntitlementOnTheServer.zip"
      },
      "id": "storekit/determining-service-entitlement-on-the-server",
      "identifier": "doc://com.apple.storekit/documentation/StoreKit/determining-service-entitlement-on-the-server",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/StoreKit/determining-service-entitlement-on-the-server.json",
      "module": "StoreKit",
      "modules": [
        "StoreKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:StoreKit"
      ],
      "platforms": [],
      "title": "Determining service entitlement on the server"
    },
    {
      "abstract": "Generate a signature using your private key and lightweight cryptography libraries.",
      "categories": [
        "StoreKit"
      ],
      "doc_path": "/documentation/StoreKit/generating-a-promotional-offer-signature-on-the-server",
      "doc_url": "https://developer.apple.com/documentation/StoreKit/generating-a-promotional-offer-signature-on-the-server",
      "download": {
        "filename": "GeneratingAPromotionalOfferSignatureOnTheServer.zip",
        "identifier": "6c875bdd27a7/GeneratingAPromotionalOfferSignatureOnTheServer.zip",
        "url": "https://docs-assets.developer.apple.com/published/6c875bdd27a7/GeneratingAPromotionalOfferSignatureOnTheServer.zip"
      },
      "id": "storekit/generating-a-promotional-offer-signature-on-the-server",
      "identifier": "doc://com.apple.storekit/documentation/StoreKit/generating-a-promotional-offer-signature-on-the-server",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/StoreKit/generating-a-promotional-offer-signature-on-the-server.json",
      "module": "StoreKit",
      "modules": [
        "StoreKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:StoreKit"
      ],
      "platforms": [],
      "title": "Generating a Promotional Offer Signature on the Server"
    },
    {
      "abstract": "Offer In-App Purchases and manage entitlements using signed transactions and status information.",
      "categories": [
        "WWDC26",
        "System"
      ],
      "doc_path": "/documentation/StoreKit/implementing-a-store-in-your-app-using-the-storekit-api",
      "doc_url": "https://developer.apple.com/documentation/StoreKit/implementing-a-store-in-your-app-using-the-storekit-api",
      "download": {
        "filename": "ImplementingAStoreInYourAppUsingTheStoreKitAPI.zip",
        "identifier": "623bce0ddaba/ImplementingAStoreInYourAppUsingTheStoreKitAPI.zip",
        "url": "https://docs-assets.developer.apple.com/published/623bce0ddaba/ImplementingAStoreInYourAppUsingTheStoreKitAPI.zip"
      },
      "id": "storekit/implementing-a-store-in-your-app-using-the-storekit-api",
      "identifier": "doc://com.apple.storekit/documentation/StoreKit/implementing-a-store-in-your-app-using-the-storekit-api",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/StoreKit/implementing-a-store-in-your-app-using-the-storekit-api.json",
      "module": "StoreKit",
      "modules": [
        "StoreKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:StoreKit"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iPadOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Implementing a store in your app using the StoreKit API"
    },
    {
      "abstract": "Fetch, display, purchase, validate, and finish transactions in your app.",
      "categories": [
        "StoreKit"
      ],
      "doc_path": "/documentation/StoreKit/offering-completing-and-restoring-in-app-purchases",
      "doc_url": "https://developer.apple.com/documentation/StoreKit/offering-completing-and-restoring-in-app-purchases",
      "download": {
        "filename": "OfferingCompletingAndRestoringInAppPurchases.zip",
        "identifier": "bf990e030bb6/OfferingCompletingAndRestoringInAppPurchases.zip",
        "url": "https://docs-assets.developer.apple.com/published/bf990e030bb6/OfferingCompletingAndRestoringInAppPurchases.zip"
      },
      "id": "storekit/offering-completing-and-restoring-in-app-purchases",
      "identifier": "doc://com.apple.storekit/documentation/StoreKit/offering-completing-and-restoring-in-app-purchases",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/StoreKit/offering-completing-and-restoring-in-app-purchases.json",
      "module": "StoreKit",
      "modules": [
        "StoreKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:StoreKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Offering, completing, and restoring in-app purchases"
    },
    {
      "abstract": "Allow users to purchase media in the App Store from within your app.",
      "categories": [
        "StoreKit"
      ],
      "doc_path": "/documentation/StoreKit/offering-media-for-sale-in-your-app",
      "doc_url": "https://developer.apple.com/documentation/StoreKit/offering-media-for-sale-in-your-app",
      "download": {
        "filename": "OfferingMediaForSaleInYourApp.zip",
        "identifier": "f660f80c693a/OfferingMediaForSaleInYourApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/f660f80c693a/OfferingMediaForSaleInYourApp.zip"
      },
      "id": "storekit/offering-media-for-sale-in-your-app",
      "identifier": "doc://com.apple.storekit/documentation/StoreKit/offering-media-for-sale-in-your-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/StoreKit/offering-media-for-sale-in-your-app.json",
      "module": "StoreKit",
      "modules": [
        "StoreKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:StoreKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Offering media for sale in your app"
    },
    {
      "abstract": "Implement best practices for prompting users to review your app in the App Store.",
      "categories": [
        "StoreKit"
      ],
      "doc_path": "/documentation/StoreKit/requesting-app-store-reviews",
      "doc_url": "https://developer.apple.com/documentation/StoreKit/requesting-app-store-reviews",
      "download": {
        "filename": "RequestingAppStoreReviews.zip",
        "identifier": "69ecd4d189bf/RequestingAppStoreReviews.zip",
        "url": "https://docs-assets.developer.apple.com/published/69ecd4d189bf/RequestingAppStoreReviews.zip"
      },
      "id": "storekit/requesting-app-store-reviews",
      "identifier": "doc://com.apple.storekit/documentation/StoreKit/requesting-app-store-reviews",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/StoreKit/requesting-app-store-reviews.json",
      "module": "StoreKit",
      "modules": [
        "StoreKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:StoreKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Requesting App Store reviews"
    },
    {
      "abstract": "Implement an in-app store with several product types, using StoreKit views.",
      "categories": [
        "StoreKit"
      ],
      "doc_path": "/documentation/StoreKit/understanding-storekit-workflows",
      "doc_url": "https://developer.apple.com/documentation/StoreKit/understanding-storekit-workflows",
      "download": {
        "filename": "UnderstandingStoreKitWorkflows.zip",
        "identifier": "6b864cb1ff7d/UnderstandingStoreKitWorkflows.zip",
        "url": "https://docs-assets.developer.apple.com/published/6b864cb1ff7d/UnderstandingStoreKitWorkflows.zip"
      },
      "id": "storekit/understanding-storekit-workflows",
      "identifier": "doc://com.apple.storekit/documentation/StoreKit/understanding-storekit-workflows",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/StoreKit/understanding-storekit-workflows.json",
      "module": "StoreKit",
      "modules": [
        "StoreKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:StoreKit",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Understanding StoreKit workflows"
    },
    {
      "abstract": "Validate your ad impressions and test your postbacks by creating unit tests using the StoreKit Test framework.",
      "categories": [
        "StoreKit"
      ],
      "doc_path": "/documentation/StoreKitTest/testing-and-validating-ad-impression-signatures-and-postbacks-for-skadnetwork",
      "doc_url": "https://developer.apple.com/documentation/StoreKitTest/testing-and-validating-ad-impression-signatures-and-postbacks-for-skadnetwork",
      "download": {
        "filename": "TestingAndValidatingAdImpressionSignaturesAndPostbacksForSKAdNetwork.zip",
        "identifier": "ed00341d878d/TestingAndValidatingAdImpressionSignaturesAndPostbacksForSKAdNetwork.zip",
        "url": "https://docs-assets.developer.apple.com/published/ed00341d878d/TestingAndValidatingAdImpressionSignaturesAndPostbacksForSKAdNetwork.zip"
      },
      "id": "storekittest/testing-and-validating-ad-impression-signatures-and-postbacks-for-skadnetwork",
      "identifier": "doc://com.apple.storekittest/documentation/StoreKitTest/testing-and-validating-ad-impression-signatures-and-postbacks-for-skadnetwork",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/StoreKitTest/testing-and-validating-ad-impression-signatures-and-postbacks-for-skadnetwork.json",
      "module": "StoreKit Test",
      "modules": [
        "StoreKit Test"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:StoreKit",
        "technology-index:StoreKit Test"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.4",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.4",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.4",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Xcode"
        }
      ],
      "title": "Testing and validating ad impression signatures and postbacks for SKAdNetwork"
    },
    {
      "abstract": "Use a variety of C++ APIs in Swift – and vice-versa – across multiple targets and frameworks in an Xcode project.",
      "categories": [
        "Swift and SwiftData"
      ],
      "doc_path": "/documentation/Swift/CallingAPIsAcrossLanguageBoundaries",
      "doc_url": "https://developer.apple.com/documentation/Swift/CallingAPIsAcrossLanguageBoundaries",
      "download": {
        "filename": "CallingAPIsAcrossLanguageBoundaries.zip",
        "identifier": "8225a505ecd3/CallingAPIsAcrossLanguageBoundaries.zip",
        "url": "https://docs-assets.developer.apple.com/published/8225a505ecd3/CallingAPIsAcrossLanguageBoundaries.zip"
      },
      "id": "swift/callingapisacrosslanguageboundaries",
      "identifier": "doc://com.apple.Swift/documentation/Swift/CallingAPIsAcrossLanguageBoundaries",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Swift/CallingAPIsAcrossLanguageBoundaries.json",
      "module": "Swift",
      "modules": [
        "Swift"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Distributed",
        "technology-index:Observation",
        "technology-index:RegexBuilder",
        "technology-index:Sample Code Library",
        "technology-index:Swift",
        "technology-index:Synchronization"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Calling APIs Across Language Boundaries"
    },
    {
      "abstract": "Code along with the WWDC presenter to elevate a SwiftUI app with Swift concurrency.",
      "categories": [
        "Swift and SwiftData"
      ],
      "doc_path": "/documentation/Swift/code-along-elevating-an-app-with-swift-concurrency",
      "doc_url": "https://developer.apple.com/documentation/Swift/code-along-elevating-an-app-with-swift-concurrency",
      "download": {
        "filename": "CodeAlongElevatingAnAppWithSwiftConcurrency.zip",
        "identifier": "cf757bad3ba6/CodeAlongElevatingAnAppWithSwiftConcurrency.zip",
        "url": "https://docs-assets.developer.apple.com/published/cf757bad3ba6/CodeAlongElevatingAnAppWithSwiftConcurrency.zip"
      },
      "id": "swift/code-along-elevating-an-app-with-swift-concurrency",
      "identifier": "doc://com.apple.Swift/documentation/Swift/code-along-elevating-an-app-with-swift-concurrency",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Swift/code-along-elevating-an-app-with-swift-concurrency.json",
      "module": "Swift",
      "modules": [
        "Swift"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Distributed",
        "technology-index:Observation",
        "technology-index:RegexBuilder",
        "technology-index:Sample Code Library",
        "technology-index:Swift",
        "technology-index:Synchronization"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Code-along: Elevating an app with Swift concurrency"
    },
    {
      "abstract": "Use C++ APIs in Swift – and Swift APIs in C++ – in a single framework target, and consume the framework’s APIs in a separate app target.",
      "categories": [
        "Swift and SwiftData"
      ],
      "doc_path": "/documentation/Swift/MixingLanguagesInAnXcodeProject",
      "doc_url": "https://developer.apple.com/documentation/Swift/MixingLanguagesInAnXcodeProject",
      "download": {
        "filename": "MixingLanguagesInAnXcodeProject.zip",
        "identifier": "64af54542418/MixingLanguagesInAnXcodeProject.zip",
        "url": "https://docs-assets.developer.apple.com/published/64af54542418/MixingLanguagesInAnXcodeProject.zip"
      },
      "id": "swift/mixinglanguagesinanxcodeproject",
      "identifier": "doc://com.apple.Swift/documentation/Swift/MixingLanguagesInAnXcodeProject",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Swift/MixingLanguagesInAnXcodeProject.json",
      "module": "Swift",
      "modules": [
        "Swift"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Distributed",
        "technology-index:Observation",
        "technology-index:RegexBuilder",
        "technology-index:Sample Code Library",
        "technology-index:Swift",
        "technology-index:Synchronization"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Mixing Languages in an Xcode project"
    },
    {
      "abstract": "Use distributed actors to take your Swift concurrency and actor-based apps beyond a single process.",
      "categories": [
        "Swift and SwiftData"
      ],
      "doc_path": "/documentation/swift/tictacfish_implementing_a_game_using_distributed_actors",
      "doc_url": "https://developer.apple.com/documentation/swift/tictacfish_implementing_a_game_using_distributed_actors",
      "download": {
        "filename": "TicTacFishImplementingAGameUsingDistributedActors.zip",
        "identifier": "https://docs-assets.developer.apple.com/published/b583f10d72/TicTacFishImplementingAGameUsingDistributedActors.zip",
        "url": "https://docs-assets.developer.apple.com/published/b583f10d72/TicTacFishImplementingAGameUsingDistributedActors.zip"
      },
      "id": "swift/tictacfish_implementing_a_game_using_distributed_actors",
      "identifier": "doc://com.apple.documentation/documentation/swift/tictacfish_implementing_a_game_using_distributed_actors",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/swift/tictacfish_implementing_a_game_using_distributed_actors.json",
      "module": "Distributed",
      "modules": [
        "Distributed"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Distributed",
        "technology-index:Observation",
        "technology-index:RegexBuilder",
        "technology-index:Sample Code Library",
        "technology-index:Swift",
        "technology-index:Synchronization"
      ],
      "platforms": [
        {
          "introduced_at": "16.0",
          "name": "iOS"
        },
        {
          "introduced_at": "16.0",
          "name": "iPadOS"
        },
        {
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "TicTacFish: Implementing a game using distributed actors"
    },
    {
      "abstract": "Use this code to follow along with a guide to migrating your code to take advantage of the full concurrency protection that the Swift 6 language mode provides.",
      "categories": [
        "Swift and SwiftData"
      ],
      "doc_path": "/documentation/Swift/updating-an-app-to-use-strict-concurrency",
      "doc_url": "https://developer.apple.com/documentation/Swift/updating-an-app-to-use-strict-concurrency",
      "download": {
        "filename": "UpdatingAnAppToUseStrictConcurrency.zip",
        "identifier": "4dd408a8fcf3/UpdatingAnAppToUseStrictConcurrency.zip",
        "url": "https://docs-assets.developer.apple.com/published/4dd408a8fcf3/UpdatingAnAppToUseStrictConcurrency.zip"
      },
      "id": "swift/updating-an-app-to-use-strict-concurrency",
      "identifier": "doc://com.apple.Swift/documentation/Swift/updating-an-app-to-use-strict-concurrency",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Swift/updating-an-app-to-use-strict-concurrency.json",
      "module": "Swift",
      "modules": [
        "Swift"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Distributed",
        "technology-index:Observation",
        "technology-index:RegexBuilder",
        "technology-index:Sample Code Library",
        "technology-index:Swift",
        "technology-index:Synchronization"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "8.0",
          "name": "watchOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Updating an app to use strict concurrency"
    },
    {
      "abstract": "Improve your app’s performance by refactoring your code to take advantage of asynchronous functions in Swift.",
      "categories": [
        "Swift and SwiftData"
      ],
      "doc_path": "/documentation/swift/updating_an_app_to_use_swift_concurrency",
      "doc_url": "https://developer.apple.com/documentation/swift/updating_an_app_to_use_swift_concurrency",
      "download": {
        "filename": "UpdatingAnAppToUseSwiftConcurrency.zip",
        "identifier": "https://docs-assets.developer.apple.com/published/0196478241/UpdatingAnAppToUseSwiftConcurrency.zip",
        "url": "https://docs-assets.developer.apple.com/published/0196478241/UpdatingAnAppToUseSwiftConcurrency.zip"
      },
      "id": "swift/updating_an_app_to_use_swift_concurrency",
      "identifier": "doc://com.apple.documentation/documentation/swift/updating_an_app_to_use_swift_concurrency",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/swift/updating_an_app_to_use_swift_concurrency.json",
      "module": "swift",
      "modules": [
        "swift"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Distributed",
        "technology-index:Observation",
        "technology-index:RegexBuilder",
        "technology-index:Sample Code Library",
        "technology-index:Swift",
        "technology-index:Synchronization"
      ],
      "platforms": [
        {
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "introduced_at": "14.0",
          "name": "Xcode"
        },
        {
          "introduced_at": "8.0",
          "name": "watchOS"
        }
      ],
      "title": "Updating an App to Use Swift Concurrency"
    },
    {
      "abstract": "Create a data entry form for collecting and changing data managed by SwiftData.",
      "categories": [
        "Swift and SwiftData"
      ],
      "doc_path": "/documentation/SwiftData/Adding-and-editing-persistent-data-in-your-app",
      "doc_url": "https://developer.apple.com/documentation/SwiftData/Adding-and-editing-persistent-data-in-your-app",
      "download": {
        "filename": "SwiftDataAnimals.zip",
        "identifier": "f84bac78ac34/SwiftDataAnimals.zip",
        "url": "https://docs-assets.developer.apple.com/published/f84bac78ac34/SwiftDataAnimals.zip"
      },
      "id": "swiftdata/adding-and-editing-persistent-data-in-your-app",
      "identifier": "doc://com.apple.SwiftData/documentation/SwiftData/Adding-and-editing-persistent-data-in-your-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftData/Adding-and-editing-persistent-data-in-your-app.json",
      "module": "SwiftData",
      "modules": [
        "SwiftData"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftData"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Adding and editing persistent data in your app"
    },
    {
      "abstract": "Create relationships for static and dynamic data stored in your app.",
      "categories": [
        "Swift and SwiftData"
      ],
      "doc_path": "/documentation/SwiftData/Defining-data-relationships-with-enumerations-and-model-classes",
      "doc_url": "https://developer.apple.com/documentation/SwiftData/Defining-data-relationships-with-enumerations-and-model-classes",
      "download": {
        "filename": "SwiftDataAnimals.zip",
        "identifier": "f84bac78ac34/SwiftDataAnimals.zip",
        "url": "https://docs-assets.developer.apple.com/published/f84bac78ac34/SwiftDataAnimals.zip"
      },
      "id": "swiftdata/defining-data-relationships-with-enumerations-and-model-classes",
      "identifier": "doc://com.apple.SwiftData/documentation/SwiftData/Defining-data-relationships-with-enumerations-and-model-classes",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftData/Defining-data-relationships-with-enumerations-and-model-classes.json",
      "module": "SwiftData",
      "modules": [
        "SwiftData"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftData"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Defining data relationships with enumerations and model classes"
    },
    {
      "abstract": "Explore different ways to use SwiftData to delete persistent data.",
      "categories": [
        "Swift and SwiftData"
      ],
      "doc_path": "/documentation/SwiftData/Deleting-persistent-data-from-your-app",
      "doc_url": "https://developer.apple.com/documentation/SwiftData/Deleting-persistent-data-from-your-app",
      "download": {
        "filename": "SwiftDataAnimals.zip",
        "identifier": "f84bac78ac34/SwiftDataAnimals.zip",
        "url": "https://docs-assets.developer.apple.com/published/f84bac78ac34/SwiftDataAnimals.zip"
      },
      "id": "swiftdata/deleting-persistent-data-from-your-app",
      "identifier": "doc://com.apple.SwiftData/documentation/SwiftData/Deleting-persistent-data-from-your-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftData/Deleting-persistent-data-from-your-app.json",
      "module": "SwiftData",
      "modules": [
        "SwiftData"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftData"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Deleting persistent data from your app"
    },
    {
      "abstract": "Manage data store presentation using predicates and dynamic queries.",
      "categories": [
        "Swift and SwiftData"
      ],
      "doc_path": "/documentation/SwiftData/Filtering-and-sorting-persistent-data",
      "doc_url": "https://developer.apple.com/documentation/SwiftData/Filtering-and-sorting-persistent-data",
      "download": {
        "filename": "SwiftDataLocalDataCacheSample.zip",
        "identifier": "5e964e0daa88/SwiftDataLocalDataCacheSample.zip",
        "url": "https://docs-assets.developer.apple.com/published/5e964e0daa88/SwiftDataLocalDataCacheSample.zip"
      },
      "id": "swiftdata/filtering-and-sorting-persistent-data",
      "identifier": "doc://com.apple.SwiftData/documentation/SwiftData/Filtering-and-sorting-persistent-data",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftData/Filtering-and-sorting-persistent-data.json",
      "module": "SwiftData",
      "modules": [
        "SwiftData"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftData"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Filtering and sorting persistent data"
    },
    {
      "abstract": "Create and update a persistent store to cache read-only network data.",
      "categories": [
        "Swift and SwiftData"
      ],
      "doc_path": "/documentation/SwiftData/Maintaining-a-local-copy-of-server-data",
      "doc_url": "https://developer.apple.com/documentation/SwiftData/Maintaining-a-local-copy-of-server-data",
      "download": {
        "filename": "SwiftDataLocalDataCacheSample.zip",
        "identifier": "5e964e0daa88/SwiftDataLocalDataCacheSample.zip",
        "url": "https://docs-assets.developer.apple.com/published/5e964e0daa88/SwiftDataLocalDataCacheSample.zip"
      },
      "id": "swiftdata/maintaining-a-local-copy-of-server-data",
      "identifier": "doc://com.apple.SwiftData/documentation/SwiftData/Maintaining-a-local-copy-of-server-data",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftData/Maintaining-a-local-copy-of-server-data.json",
      "module": "SwiftData",
      "modules": [
        "SwiftData"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftData"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Maintaining a local copy of server data"
    },
    {
      "abstract": "Make your apps stand out by adding background materials, vibrancy, custom graphics, and animations.",
      "categories": [
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/add-rich-graphics-to-your-swiftui-app",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/add-rich-graphics-to-your-swiftui-app",
      "download": {
        "filename": "AddRichGraphicsToYourSwiftUIApp.zip",
        "identifier": "70a8e16443bb/AddRichGraphicsToYourSwiftUIApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/70a8e16443bb/AddRichGraphicsToYourSwiftUIApp.zip"
      },
      "id": "swiftui/add-rich-graphics-to-your-swiftui-app",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/add-rich-graphics-to-your-swiftui-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/add-rich-graphics-to-your-swiftui-app.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Add rich graphics to your SwiftUI app"
    },
    {
      "abstract": "Enable drag-and-drop interactions in lists, tables and custom views.",
      "categories": [
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/Adopting-drag-and-drop-using-SwiftUI",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/Adopting-drag-and-drop-using-SwiftUI",
      "download": {
        "filename": "AdoptingDragAndDropUsingSwiftUI.zip",
        "identifier": "865816f9f1f5/AdoptingDragAndDropUsingSwiftUI.zip",
        "url": "https://docs-assets.developer.apple.com/published/865816f9f1f5/AdoptingDragAndDropUsingSwiftUI.zip"
      },
      "id": "swiftui/adopting-drag-and-drop-using-swiftui",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/Adopting-drag-and-drop-using-SwiftUI",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/Adopting-drag-and-drop-using-SwiftUI.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Adopting drag and drop using SwiftUI"
    },
    {
      "abstract": "Create an app with persistent data, interactive widgets, and an all new in-app purchase experience.",
      "categories": [
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/Backyard-birds-sample",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/Backyard-birds-sample",
      "download": {
        "filename": "BackyardBirdsBuildingAnAppWithSwiftDataAndWidgets.zip",
        "identifier": "7f06a68fb95e/BackyardBirdsBuildingAnAppWithSwiftDataAndWidgets.zip",
        "url": "https://docs-assets.developer.apple.com/published/7f06a68fb95e/BackyardBirdsBuildingAnAppWithSwiftDataAndWidgets.zip"
      },
      "id": "swiftui/backyard-birds-sample",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/Backyard-birds-sample",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/Backyard-birds-sample.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:StoreKit",
        "technology-index:SwiftUI",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.2",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.2",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.2",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.2",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "10.2",
          "name": "watchOS"
        },
        {
          "beta": false,
          "introduced_at": "15.1",
          "name": "Xcode"
        }
      ],
      "title": "Backyard Birds: Building an app with SwiftData and widgets"
    },
    {
      "abstract": "Compose rich views by reacting to state changes and customize your app’s scene presentation and behavior on iPadOS and macOS.",
      "categories": [
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/bringing-multiple-windows-to-your-swiftui-app",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/bringing-multiple-windows-to-your-swiftui-app",
      "download": {
        "filename": "BringingMultipleWindowsToYourSwiftUIApp.zip",
        "identifier": "d58546b12087/BringingMultipleWindowsToYourSwiftUIApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/d58546b12087/BringingMultipleWindowsToYourSwiftUIApp.zip"
      },
      "id": "swiftui/bringing-multiple-windows-to-your-swiftui-app",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/bringing-multiple-windows-to-your-swiftui-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/bringing-multiple-windows-to-your-swiftui-app.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.2",
          "name": "Xcode"
        }
      ],
      "title": "Bringing multiple windows to your SwiftUI app"
    },
    {
      "abstract": "Use navigation links, stacks, destinations, and paths to provide a streamlined experience for all platforms, as well as behaviors such as deep linking and state restoration.",
      "categories": [
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/Bringing-robust-navigation-structure-to-your-swiftui-app",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/Bringing-robust-navigation-structure-to-your-swiftui-app",
      "download": {
        "filename": "BringingRobustNavigationStructureToYourSwiftUIApp.zip",
        "identifier": "45511f40934b/BringingRobustNavigationStructureToYourSwiftUIApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/45511f40934b/BringingRobustNavigationStructureToYourSwiftUIApp.zip"
      },
      "id": "swiftui/bringing-robust-navigation-structure-to-your-swiftui-app",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/Bringing-robust-navigation-structure-to-your-swiftui-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/Bringing-robust-navigation-structure-to-your-swiftui-app.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Bringing robust navigation structure to your SwiftUI app"
    },
    {
      "abstract": "Code along with the WWDC presenter to transform an app with SwiftData.",
      "categories": [
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/Building-a-document-based-app-using-SwiftData",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/Building-a-document-based-app-using-SwiftData",
      "download": {
        "filename": "BuildingADocumentBasedAppUsingSwiftData.zip",
        "identifier": "a378001f6c52/BuildingADocumentBasedAppUsingSwiftData.zip",
        "url": "https://docs-assets.developer.apple.com/published/a378001f6c52/BuildingADocumentBasedAppUsingSwiftData.zip"
      },
      "id": "swiftui/building-a-document-based-app-using-swiftdata",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/Building-a-document-based-app-using-SwiftData",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/Building-a-document-based-app-using-SwiftData.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftData",
        "technology-index:SwiftUI",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Building a document-based app using SwiftData"
    },
    {
      "abstract": "Create, save, and open documents in a multiplatform app.",
      "categories": [],
      "doc_path": "/documentation/swiftui/building-a-document-based-app-with-swiftui",
      "doc_url": "https://developer.apple.com/documentation/swiftui/building-a-document-based-app-with-swiftui",
      "download": {
        "filename": "BuildingADocumentBasedAppWithSwiftUI.zip",
        "identifier": "ef10bd7eff0d/BuildingADocumentBasedAppWithSwiftUI.zip",
        "url": "https://docs-assets.developer.apple.com/published/ef10bd7eff0d/BuildingADocumentBasedAppWithSwiftUI.zip"
      },
      "id": "swiftui/building-a-document-based-app-with-swiftui",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/Building-a-document-based-app-with-SwiftUI",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/swiftui/building-a-document-based-app-with-swiftui.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "technology-index:SwiftUI"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Building a document-based app with SwiftUI"
    },
    {
      "abstract": "Create engaging SwiftUI Mac apps by incorporating side bars, tables, toolbars, and several other popular user interface elements.",
      "categories": [
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/building-a-great-mac-app-with-swiftui",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/building-a-great-mac-app-with-swiftui",
      "download": {
        "filename": "BuildingAGreatMacAppWithSwiftUI.zip",
        "identifier": "bd66c5c88159/BuildingAGreatMacAppWithSwiftUI.zip",
        "url": "https://docs-assets.developer.apple.com/published/bd66c5c88159/BuildingAGreatMacAppWithSwiftUI.zip"
      },
      "id": "swiftui/building-a-great-mac-app-with-swiftui",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/building-a-great-mac-app-with-swiftui",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/building-a-great-mac-app-with-swiftui.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Building a great Mac app with SwiftUI"
    },
    {
      "abstract": "Build an editor for formatted text using SwiftUI text editor views and attributed strings.",
      "categories": [
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/building-rich-swiftui-text-experiences",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/building-rich-swiftui-text-experiences",
      "download": {
        "filename": "BuildingRichSwiftUITextExperiences.zip",
        "identifier": "af5124237a05/BuildingRichSwiftUITextExperiences.zip",
        "url": "https://docs-assets.developer.apple.com/published/af5124237a05/BuildingRichSwiftUITextExperiences.zip"
      },
      "id": "swiftui/building-rich-swiftui-text-experiences",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/building-rich-swiftui-text-experiences",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/building-rich-swiftui-text-experiences.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Building rich SwiftUI text experiences"
    },
    {
      "abstract": "Create compelling visuals in your app by combining graphical effects.",
      "categories": [
        "WWDC26"
      ],
      "doc_path": "/documentation/SwiftUI/Composing-advanced-graphics-effects-with-SwiftUI",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/Composing-advanced-graphics-effects-with-SwiftUI",
      "download": {
        "filename": "ComposingAdvancedGraphicsEffectsWithSwiftUI.zip",
        "identifier": "f2a8a000f840/ComposingAdvancedGraphicsEffectsWithSwiftUI.zip",
        "url": "https://docs-assets.developer.apple.com/published/f2a8a000f840/ComposingAdvancedGraphicsEffectsWithSwiftUI.zip"
      },
      "id": "swiftui/composing-advanced-graphics-effects-with-swiftui",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/Composing-advanced-graphics-effects-with-SwiftUI",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/Composing-advanced-graphics-effects-with-SwiftUI.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Composing advanced graphics effects with SwiftUI"
    },
    {
      "abstract": "Arrange views in your app’s interface using layout tools that SwiftUI provides.",
      "categories": [
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/composing-custom-layouts-with-swiftui",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/composing-custom-layouts-with-swiftui",
      "download": {
        "filename": "ComposingCustomLayoutsWithSwiftUI.zip",
        "identifier": "13cfc7c1502b/ComposingCustomLayoutsWithSwiftUI.zip",
        "url": "https://docs-assets.developer.apple.com/published/13cfc7c1502b/ComposingCustomLayoutsWithSwiftUI.zip"
      },
      "id": "swiftui/composing-custom-layouts-with-swiftui",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/composing-custom-layouts-with-swiftui",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/composing-custom-layouts-with-swiftui.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "Composing custom layouts with SwiftUI"
    },
    {
      "abstract": "Build sophisticated animations that you control using phase and keyframe animators.",
      "categories": [
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/Controlling-the-timing-and-movements-of-your-animations",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/Controlling-the-timing-and-movements-of-your-animations",
      "download": {
        "filename": "PhaseAndKeyframeAnimationSample.zip",
        "identifier": "354a9f65c3b5/PhaseAndKeyframeAnimationSample.zip",
        "url": "https://docs-assets.developer.apple.com/published/354a9f65c3b5/PhaseAndKeyframeAnimationSample.zip"
      },
      "id": "swiftui/controlling-the-timing-and-movements-of-your-animations",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/Controlling-the-timing-and-movements-of-your-animations",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/Controlling-the-timing-and-movements-of-your-animations.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Controlling the timing and movements of your animations"
    },
    {
      "abstract": "Build standard content lockups and rows of content shelves for your tvOS app.",
      "categories": [
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/Creating-a-tvOS-media-catalog-app-in-SwiftUI",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/Creating-a-tvOS-media-catalog-app-in-SwiftUI",
      "download": {
        "filename": "CreatingATvOSMediaCatalogAppInSwiftUI.zip",
        "identifier": "4151095c6511/CreatingATvOSMediaCatalogAppInSwiftUI.zip",
        "url": "https://docs-assets.developer.apple.com/published/4151095c6511/CreatingATvOSMediaCatalogAppInSwiftUI.zip"
      },
      "id": "swiftui/creating-a-tvos-media-catalog-app-in-swiftui",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/Creating-a-tvOS-media-catalog-app-in-SwiftUI",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/Creating-a-tvOS-media-catalog-app-in-SwiftUI.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating a tvOS media catalog app in SwiftUI"
    },
    {
      "abstract": "Make your app accessible to everyone by applying accessibility modifiers to your SwiftUI views.",
      "categories": [
        "Accessibility",
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/creating-accessible-views",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/creating-accessible-views",
      "download": {
        "filename": "CreatingAccessibleViews.zip",
        "identifier": "ad686981be8a/CreatingAccessibleViews.zip",
        "url": "https://docs-assets.developer.apple.com/published/ad686981be8a/CreatingAccessibleViews.zip"
      },
      "id": "swiftui/creating-accessible-views",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/creating-accessible-views",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/creating-accessible-views.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Accessibility",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating accessible views"
    },
    {
      "abstract": "Access individual subviews to compose flexible container views.",
      "categories": [
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/Creating-custom-container-views",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/Creating-custom-container-views",
      "download": {
        "filename": "CreatingCustomContainerViews.zip",
        "identifier": "33b747abd49e/CreatingCustomContainerViews.zip",
        "url": "https://docs-assets.developer.apple.com/published/33b747abd49e/CreatingCustomContainerViews.zip"
      },
      "id": "swiftui/creating-custom-container-views",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/Creating-custom-container-views",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/Creating-custom-container-views.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating custom container views"
    },
    {
      "abstract": "Add scroll effects, rich color treatments, custom transitions, and advanced effects using shaders and a text renderer.",
      "categories": [
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/Creating-visual-effects-with-SwiftUI",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/Creating-visual-effects-with-SwiftUI",
      "download": {
        "filename": "CreatingVisualEffectsWithSwiftUI.zip",
        "identifier": "9a15b1cc1a22/CreatingVisualEffectsWithSwiftUI.zip",
        "url": "https://docs-assets.developer.apple.com/published/9a15b1cc1a22/CreatingVisualEffectsWithSwiftUI.zip"
      },
      "id": "swiftui/creating-visual-effects-with-swiftui",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/Creating-visual-effects-with-SwiftUI",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/Creating-visual-effects-with-SwiftUI.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating visual effects with SwiftUI"
    },
    {
      "abstract": "Configure how your app’s windows look and function in macOS to provide an engaging and more coherent experience.",
      "categories": [
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/Customizing-window-styles-and-state-restoration-behavior-in-macOS",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/Customizing-window-styles-and-state-restoration-behavior-in-macOS",
      "download": {
        "filename": "DestinationVideo.zip",
        "identifier": "08bd3c5ea0b3/DestinationVideo.zip",
        "url": "https://docs-assets.developer.apple.com/published/08bd3c5ea0b3/DestinationVideo.zip"
      },
      "id": "swiftui/customizing-window-styles-and-state-restoration-behavior-in-macos",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/Customizing-window-styles-and-state-restoration-behavior-in-macOS",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/Customizing-window-styles-and-state-restoration-behavior-in-macOS.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "macOS"
        }
      ],
      "title": "Customizing window styles and state-restoration behavior in macOS"
    },
    {
      "abstract": "Keep your app content front and center while providing quick access to navigation using the tab bar.",
      "categories": [
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/Enhancing-your-app-content-with-tab-navigation",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/Enhancing-your-app-content-with-tab-navigation",
      "download": {
        "filename": "DestinationVideo.zip",
        "identifier": "3248dcf174b4/DestinationVideo.zip",
        "url": "https://docs-assets.developer.apple.com/published/3248dcf174b4/DestinationVideo.zip"
      },
      "id": "swiftui/enhancing-your-app-content-with-tab-navigation",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/Enhancing-your-app-content-with-tab-navigation",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/Enhancing-your-app-content-with-tab-navigation.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        }
      ],
      "title": "Enhancing your app’s content with tab navigation"
    },
    {
      "abstract": "Create custom focusable views with key-press handlers that accelerate keyboard input and support movement, and control focus programmatically.",
      "categories": [
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/Focus-Cookbook-sample",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/Focus-Cookbook-sample",
      "download": {
        "filename": "FocusCookbook.zip",
        "identifier": "363389b4b01c/FocusCookbook.zip",
        "url": "https://docs-assets.developer.apple.com/published/363389b4b01c/FocusCookbook.zip"
      },
      "id": "swiftui/focus-cookbook-sample",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/Focus-Cookbook-sample",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/Focus-Cookbook-sample.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Focus Cookbook: Supporting and enhancing focus-driven interactions in your SwiftUI app"
    },
    {
      "abstract": "Create a single codebase and app target for Mac, iPad, and iPhone.",
      "categories": [
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/food-truck-building-a-swiftui-multiplatform-app",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/food-truck-building-a-swiftui-multiplatform-app",
      "download": {
        "filename": "FoodTruckBuildingASwiftUIMultiplatformApp.zip",
        "identifier": "dd9087d16d30/FoodTruckBuildingASwiftUIMultiplatformApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/dd9087d16d30/FoodTruckBuildingASwiftUIMultiplatformApp.zip"
      },
      "id": "swiftui/food-truck-building-a-swiftui-multiplatform-app",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/food-truck-building-a-swiftui-multiplatform-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/food-truck-building-a-swiftui-multiplatform-app.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.4",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.4",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.4",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.3",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Xcode"
        }
      ],
      "title": "Food Truck: Building a SwiftUI multiplatform app"
    },
    {
      "abstract": "Configure an image to blur and extend under a sidebar or inspector panel.",
      "categories": [
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/Landmarks-Applying-a-background-extension-effect",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/Landmarks-Applying-a-background-extension-effect",
      "download": {
        "filename": "LandmarksBuildingAnAppWithLiquidGlass.zip",
        "identifier": "a88428e6793e/LandmarksBuildingAnAppWithLiquidGlass.zip",
        "url": "https://docs-assets.developer.apple.com/published/a88428e6793e/LandmarksBuildingAnAppWithLiquidGlass.zip"
      },
      "id": "swiftui/landmarks-applying-a-background-extension-effect",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/Landmarks-Applying-a-background-extension-effect",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/Landmarks-Applying-a-background-extension-effect.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Landmarks: Applying a background extension effect"
    },
    {
      "abstract": "Enhance your app experience with system-provided and custom Liquid Glass.",
      "categories": [
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/Landmarks-Building-an-app-with-Liquid-Glass",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/Landmarks-Building-an-app-with-Liquid-Glass",
      "download": {
        "filename": "LandmarksBuildingAnAppWithLiquidGlass.zip",
        "identifier": "a88428e6793e/LandmarksBuildingAnAppWithLiquidGlass.zip",
        "url": "https://docs-assets.developer.apple.com/published/a88428e6793e/LandmarksBuildingAnAppWithLiquidGlass.zip"
      },
      "id": "swiftui/landmarks-building-an-app-with-liquid-glass",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/Landmarks-Building-an-app-with-Liquid-Glass",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/Landmarks-Building-an-app-with-Liquid-Glass.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Landmarks: Building an app with Liquid Glass"
    },
    {
      "abstract": "Provide people with a way to mark their adventures by displaying animated custom activity badges.",
      "categories": [
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/Landmarks-Displaying-custom-activity-badges",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/Landmarks-Displaying-custom-activity-badges",
      "download": {
        "filename": "LandmarksBuildingAnAppWithLiquidGlass.zip",
        "identifier": "a88428e6793e/LandmarksBuildingAnAppWithLiquidGlass.zip",
        "url": "https://docs-assets.developer.apple.com/published/a88428e6793e/LandmarksBuildingAnAppWithLiquidGlass.zip"
      },
      "id": "swiftui/landmarks-displaying-custom-activity-badges",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/Landmarks-Displaying-custom-activity-badges",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/Landmarks-Displaying-custom-activity-badges.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Landmarks: Displaying custom activity badges"
    },
    {
      "abstract": "Improve your horizontal scrollbar’s appearance by extending it under a sidebar or inspector.",
      "categories": [
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/Landmarks-Extending-horizontal-scrolling-under-a-sidebar-or-inspector",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/Landmarks-Extending-horizontal-scrolling-under-a-sidebar-or-inspector",
      "download": {
        "filename": "LandmarksBuildingAnAppWithLiquidGlass.zip",
        "identifier": "a88428e6793e/LandmarksBuildingAnAppWithLiquidGlass.zip",
        "url": "https://docs-assets.developer.apple.com/published/a88428e6793e/LandmarksBuildingAnAppWithLiquidGlass.zip"
      },
      "id": "swiftui/landmarks-extending-horizontal-scrolling-under-a-sidebar-or-inspector",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/Landmarks-Extending-horizontal-scrolling-under-a-sidebar-or-inspector",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/Landmarks-Extending-horizontal-scrolling-under-a-sidebar-or-inspector.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Landmarks: Extending horizontal scrolling under a sidebar or inspector"
    },
    {
      "abstract": "Organize toolbars into related groupings to improve their appearance and utility.",
      "categories": [
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/Landmarks-Refining-the-system-provided-glass-effect-in-toolbars",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/Landmarks-Refining-the-system-provided-glass-effect-in-toolbars",
      "download": {
        "filename": "LandmarksBuildingAnAppWithLiquidGlass.zip",
        "identifier": "a88428e6793e/LandmarksBuildingAnAppWithLiquidGlass.zip",
        "url": "https://docs-assets.developer.apple.com/published/a88428e6793e/LandmarksBuildingAnAppWithLiquidGlass.zip"
      },
      "id": "swiftui/landmarks-refining-the-system-provided-glass-effect-in-toolbars",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/Landmarks-Refining-the-system-provided-glass-effect-in-toolbars",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/Landmarks-Refining-the-system-provided-glass-effect-in-toolbars.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Landmarks: Refining the system provided Liquid Glass effect in toolbars"
    },
    {
      "abstract": "Consume data in the background, and lower memory use by batching imports and preventing duplicate records.",
      "categories": [
        "App services",
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/loading-and-displaying-a-large-data-feed",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/loading-and-displaying-a-large-data-feed",
      "download": {
        "filename": "LoadingAndDisplayingALargeDataFeed.zip",
        "identifier": "c1a1a08fa8d2/LoadingAndDisplayingALargeDataFeed.zip",
        "url": "https://docs-assets.developer.apple.com/published/c1a1a08fa8d2/LoadingAndDisplayingALargeDataFeed.zip"
      },
      "id": "swiftui/loading-and-displaying-a-large-data-feed",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/loading-and-displaying-a-large-data-feed",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/loading-and-displaying-a-large-data-feed.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Core Data",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Loading and displaying a large data feed"
    },
    {
      "abstract": "Move cards between positions in a card game using drag, drop, and reordering modifiers.",
      "categories": [
        "WWDC26"
      ],
      "doc_path": "/documentation/SwiftUI/Making-a-card-game-with-drag-drop-and-reordering-in-swiftui",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/Making-a-card-game-with-drag-drop-and-reordering-in-swiftui",
      "download": {
        "filename": "MakingACardGameWithDragDropAndReorderingInSwiftUI.zip",
        "identifier": "97ac6f9aaef0/MakingACardGameWithDragDropAndReorderingInSwiftUI.zip",
        "url": "https://docs-assets.developer.apple.com/published/97ac6f9aaef0/MakingACardGameWithDragDropAndReorderingInSwiftUI.zip"
      },
      "id": "swiftui/making-a-card-game-with-drag-drop-and-reordering-in-swiftui",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/Making-a-card-game-with-drag-drop-and-reordering-in-swiftui",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/Making-a-card-game-with-drag-drop-and-reordering-in-swiftui.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "macOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Making a card game with drag, drop, and reordering in SwiftUI"
    },
    {
      "abstract": "Create connections between your app’s data model and views.",
      "categories": [
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/Managing-model-data-in-your-app",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/Managing-model-data-in-your-app",
      "download": {
        "filename": "ManagingModelDataSample.zip",
        "identifier": "6c08da4d9562/ManagingModelDataSample.zip",
        "url": "https://docs-assets.developer.apple.com/published/6c08da4d9562/ManagingModelDataSample.zip"
      },
      "id": "swiftui/managing-model-data-in-your-app",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/Managing-model-data-in-your-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/Managing-model-data-in-your-app.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Distributed",
        "technology-index:Observation",
        "technology-index:RegexBuilder",
        "technology-index:Sample Code Library",
        "technology-index:Swift",
        "technology-index:SwiftUI",
        "technology-index:Synchronization"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Managing model data in your app"
    },
    {
      "abstract": "Update your existing app to leverage the benefits of Observation in Swift.",
      "categories": [
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/Migrating-from-the-observable-object-protocol-to-the-observable-macro",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/Migrating-from-the-observable-object-protocol-to-the-observable-macro",
      "download": {
        "filename": "ObservationSample.zip",
        "identifier": "b78f7ecb6749/ObservationSample.zip",
        "url": "https://docs-assets.developer.apple.com/published/b78f7ecb6749/ObservationSample.zip"
      },
      "id": "swiftui/migrating-from-the-observable-object-protocol-to-the-observable-macro",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/Migrating-from-the-observable-object-protocol-to-the-observable-macro",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/Migrating-from-the-observable-object-protocol-to-the-observable-macro.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Distributed",
        "technology-index:Observation",
        "technology-index:RegexBuilder",
        "technology-index:Sample Code Library",
        "technology-index:Swift",
        "technology-index:SwiftUI",
        "technology-index:Synchronization"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Migrating from the Observable Object protocol to the Observable macro"
    },
    {
      "abstract": "Show changes to data in your app’s user interface by using observable objects.",
      "categories": [
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/Monitoring-model-data-changes-in-your-app",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/Monitoring-model-data-changes-in-your-app",
      "download": {
        "filename": "ObservableObjectSample.zip",
        "identifier": "6c60346a45d3/ObservableObjectSample.zip",
        "url": "https://docs-assets.developer.apple.com/published/6c60346a45d3/ObservableObjectSample.zip"
      },
      "id": "swiftui/monitoring-model-data-changes-in-your-app",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/Monitoring-model-data-changes-in-your-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/Monitoring-model-data-changes-in-your-app.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.2",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.2",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.2",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.1",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Xcode"
        }
      ],
      "title": "Monitoring data changes in your app"
    },
    {
      "abstract": "Provide app continuity for users by preserving their current activities.",
      "categories": [
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/restoring-your-app-s-state-with-swiftui",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/restoring-your-app-s-state-with-swiftui",
      "download": {
        "filename": "RestoringYourAppsStateWithSwiftUI.zip",
        "identifier": "cc4ebfd8f9d2/RestoringYourAppsStateWithSwiftUI.zip",
        "url": "https://docs-assets.developer.apple.com/published/cc4ebfd8f9d2/RestoringYourAppsStateWithSwiftUI.zip"
      },
      "id": "swiftui/restoring-your-app-s-state-with-swiftui",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/restoring-your-app-s-state-with-swiftui",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/restoring-your-app-s-state-with-swiftui.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Xcode"
        }
      ],
      "title": "Restoring your app’s state with SwiftUI"
    },
    {
      "abstract": "Build a travel planning app that organizes trips into collections and tracks activity completion.",
      "categories": [
        "WWDC26",
        "SwiftUI"
      ],
      "doc_path": "/documentation/SwiftUI/wishlist-planning-travel-in-a-swiftui-app",
      "doc_url": "https://developer.apple.com/documentation/SwiftUI/wishlist-planning-travel-in-a-swiftui-app",
      "download": {
        "filename": "WishlistPlanningTravelInASwiftUIApp.zip",
        "identifier": "1a5604d20e5e/WishlistPlanningTravelInASwiftUIApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/1a5604d20e5e/WishlistPlanningTravelInASwiftUIApp.zip"
      },
      "id": "swiftui/wishlist-planning-travel-in-a-swiftui-app",
      "identifier": "doc://com.apple.SwiftUI/documentation/SwiftUI/wishlist-planning-travel-in-a-swiftui-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/SwiftUI/wishlist-planning-travel-in-a-swiftui-app.json",
      "module": "SwiftUI",
      "modules": [
        "SwiftUI"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iPadOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Wishlist: Planning travel in a SwiftUI app"
    },
    {
      "abstract": "Develop a spatial board game where multiple players interact with pieces on a table.",
      "categories": [
        "Games"
      ],
      "doc_path": "/documentation/TabletopKit/creating-tabletop-games",
      "doc_url": "https://developer.apple.com/documentation/TabletopKit/creating-tabletop-games",
      "download": {
        "filename": "CreatingTabletopGames.zip",
        "identifier": "2942b27625fc/CreatingTabletopGames.zip",
        "url": "https://docs-assets.developer.apple.com/published/2942b27625fc/CreatingTabletopGames.zip"
      },
      "id": "tabletopkit/creating-tabletop-games",
      "identifier": "doc://com.apple.tabletopkit/documentation/TabletopKit/creating-tabletop-games",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/TabletopKit/creating-tabletop-games.json",
      "module": "TabletopKit",
      "modules": [
        "TabletopKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:TabletopKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.2",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.2",
          "name": "Xcode"
        }
      ],
      "title": "Creating tabletop games"
    },
    {
      "abstract": "Add interactive card game behavior for a pile of playing cards with physically realistic stacking and overlapping.",
      "categories": [
        "Games"
      ],
      "doc_path": "/documentation/TabletopKit/implementing-playing-card-overlap-and-physical-characteristics",
      "doc_url": "https://developer.apple.com/documentation/TabletopKit/implementing-playing-card-overlap-and-physical-characteristics",
      "download": {
        "filename": "ImplementingPlayingCardOverlapAndPhysicalCharacteristics.zip",
        "identifier": "81a52830d329/ImplementingPlayingCardOverlapAndPhysicalCharacteristics.zip",
        "url": "https://docs-assets.developer.apple.com/published/81a52830d329/ImplementingPlayingCardOverlapAndPhysicalCharacteristics.zip"
      },
      "id": "tabletopkit/implementing-playing-card-overlap-and-physical-characteristics",
      "identifier": "doc://com.apple.tabletopkit/documentation/TabletopKit/implementing-playing-card-overlap-and-physical-characteristics",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/TabletopKit/implementing-playing-card-overlap-and-physical-characteristics.json",
      "module": "TabletopKit",
      "modules": [
        "TabletopKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:TabletopKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Implementing playing card overlap and physical characteristics"
    },
    {
      "abstract": "Create a physically realistic dice game by adding interactive rolling and scoring.",
      "categories": [
        "Games"
      ],
      "doc_path": "/documentation/TabletopKit/simulating-dice-rolls-as-a-component-for-your-game",
      "doc_url": "https://developer.apple.com/documentation/TabletopKit/simulating-dice-rolls-as-a-component-for-your-game",
      "download": {
        "filename": "SimulatingDiceRollsAsAComponentForYourGame.zip",
        "identifier": "ccb6c5365874/SimulatingDiceRollsAsAComponentForYourGame.zip",
        "url": "https://docs-assets.developer.apple.com/published/ccb6c5365874/SimulatingDiceRollsAsAComponentForYourGame.zip"
      },
      "id": "tabletopkit/simulating-dice-rolls-as-a-component-for-your-game",
      "identifier": "doc://com.apple.tabletopkit/documentation/TabletopKit/simulating-dice-rolls-as-a-component-for-your-game",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/TabletopKit/simulating-dice-rolls-as-a-component-for-your-game.json",
      "module": "TabletopKit",
      "modules": [
        "TabletopKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:TabletopKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Simulating dice rolls as a component for your game"
    },
    {
      "abstract": "Maintain game state across multiple players in a race to capture all the coins.",
      "categories": [
        "Games"
      ],
      "doc_path": "/documentation/TabletopKit/synchronizing-group-gameplay-with-tabletopkit",
      "doc_url": "https://developer.apple.com/documentation/TabletopKit/synchronizing-group-gameplay-with-tabletopkit",
      "download": {
        "filename": "SynchronizingGroupGameplayWithTabletopKit.zip",
        "identifier": "d76d2acbb4f9/SynchronizingGroupGameplayWithTabletopKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/d76d2acbb4f9/SynchronizingGroupGameplayWithTabletopKit.zip"
      },
      "id": "tabletopkit/synchronizing-group-gameplay-with-tabletopkit",
      "identifier": "doc://com.apple.tabletopkit/documentation/TabletopKit/synchronizing-group-gameplay-with-tabletopkit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/TabletopKit/synchronizing-group-gameplay-with-tabletopkit.json",
      "module": "TabletopKit",
      "modules": [
        "TabletopKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:TabletopKit",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Synchronizing group gameplay with TabletopKit"
    },
    {
      "abstract": "Bring attention to new features in your app by using tips.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/TipKit/HighlightingAppFeaturesWithTipKit",
      "doc_url": "https://developer.apple.com/documentation/TipKit/HighlightingAppFeaturesWithTipKit",
      "download": {
        "filename": "HighlightingAppFeaturesWithTipKit.zip",
        "identifier": "a9419c502848/HighlightingAppFeaturesWithTipKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/a9419c502848/HighlightingAppFeaturesWithTipKit.zip"
      },
      "id": "tipkit/highlightingappfeatureswithtipkit",
      "identifier": "doc://com.apple.TipKit/documentation/TipKit/HighlightingAppFeaturesWithTipKit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/TipKit/HighlightingAppFeaturesWithTipKit.json",
      "module": "TipKit",
      "modules": [
        "TipKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:TipKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Highlighting app features with TipKit"
    },
    {
      "abstract": "Display simple system translations and create custom translation experiences.",
      "categories": [
        "Accessibility"
      ],
      "doc_path": "/documentation/Translation/translating-text-within-your-app",
      "doc_url": "https://developer.apple.com/documentation/Translation/translating-text-within-your-app",
      "download": {
        "filename": "TranslatingTextWithinYourApp.zip",
        "identifier": "bb1d83066795/TranslatingTextWithinYourApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/bb1d83066795/TranslatingTextWithinYourApp.zip"
      },
      "id": "translation/translating-text-within-your-app",
      "identifier": "doc://com.apple.Translation/documentation/Translation/translating-text-within-your-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Translation/translating-text-within-your-app.json",
      "module": "Translation",
      "modules": [
        "Translation"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Translation"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Translating text within your app"
    },
    {
      "abstract": "Specify scrollable and fixed regions in a product page.",
      "categories": [
        "TV"
      ],
      "doc_path": "/documentation/TVML/displaying-a-product-or-bundle-in-a-full-page-template",
      "doc_url": "https://developer.apple.com/documentation/TVML/displaying-a-product-or-bundle-in-a-full-page-template",
      "download": {
        "filename": "DisplayingAProductOrBundleInAFullPageTemplate.zip",
        "identifier": "94ad27b68b7d/DisplayingAProductOrBundleInAFullPageTemplate.zip",
        "url": "https://docs-assets.developer.apple.com/published/94ad27b68b7d/DisplayingAProductOrBundleInAFullPageTemplate.zip"
      },
      "id": "tvml/displaying-a-product-or-bundle-in-a-full-page-template",
      "identifier": "doc://com.apple.TVML/documentation/TVML/displaying-a-product-or-bundle-in-a-full-page-template",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/TVML/displaying-a-product-or-bundle-in-a-full-page-template.json",
      "module": "TVML",
      "modules": [
        "TVML"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:TVML"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "12.5",
          "name": "Xcode"
        }
      ],
      "title": "Displaying a Product or Bundle in a Full-Page Template"
    },
    {
      "abstract": "Create full-fledged TVML documents by using data binding and queries on simplified TVML files.",
      "categories": [
        "TV"
      ],
      "doc_path": "/documentation/tvmljs/binding_json_data_to_tvml_documents",
      "doc_url": "https://developer.apple.com/documentation/tvmljs/binding_json_data_to_tvml_documents",
      "download": {
        "filename": "BindingJSONDataToTVMLDocuments.zip",
        "identifier": "https://docs-assets.developer.apple.com/published/dab03d00ca/BindingJSONDataToTVMLDocuments.zip",
        "url": "https://docs-assets.developer.apple.com/published/dab03d00ca/BindingJSONDataToTVMLDocuments.zip"
      },
      "id": "tvmljs/binding_json_data_to_tvml_documents",
      "identifier": "doc://com.apple.documentation/documentation/tvmljs/binding_json_data_to_tvml_documents",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/tvmljs/binding_json_data_to_tvml_documents.json",
      "module": "TVMLKit JS",
      "modules": [
        "TVMLKit JS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:TVMLKit JS"
      ],
      "platforms": [
        {
          "introduced_at": "12.0",
          "name": "tvOS"
        },
        {
          "introduced_at": "14.2",
          "name": "Xcode"
        }
      ],
      "title": "Binding JSON data to TVML documents"
    },
    {
      "abstract": "Display and navigate between TVML documents on Apple TV by retrieving and parsing information from a remote server.",
      "categories": [
        "TV"
      ],
      "doc_path": "/documentation/tvmljs/creating_a_client-server_tvml_app",
      "doc_url": "https://developer.apple.com/documentation/tvmljs/creating_a_client-server_tvml_app",
      "download": {
        "filename": "CreatingAClientServerTVMLApp.zip",
        "identifier": "https://docs-assets.developer.apple.com/published/fda592b920/CreatingAClientServerTVMLApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/fda592b920/CreatingAClientServerTVMLApp.zip"
      },
      "id": "tvmljs/creating_a_client-server_tvml_app",
      "identifier": "doc://com.apple.documentation/documentation/tvmljs/creating_a_client-server_tvml_app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/tvmljs/creating_a_client-server_tvml_app.json",
      "module": "TVMLKit JS",
      "modules": [
        "TVMLKit JS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:TVMLKit JS"
      ],
      "platforms": [
        {
          "introduced_at": "12.1",
          "name": "tvOS"
        },
        {
          "introduced_at": "11.3",
          "name": "Xcode"
        }
      ],
      "title": "Creating a Client-Server TVML App"
    },
    {
      "abstract": "Play media items in a client-server app using the built-in media player for TVMLKit JS.",
      "categories": [
        "TV"
      ],
      "doc_path": "/documentation/tvmljs/playing_media_in_a_client-server_app",
      "doc_url": "https://developer.apple.com/documentation/tvmljs/playing_media_in_a_client-server_app",
      "download": {
        "filename": "PlayingMediaInAClientServerApp.zip",
        "identifier": "https://docs-assets.developer.apple.com/published/b8eeccd4e1/PlayingMediaInAClientServerApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/b8eeccd4e1/PlayingMediaInAClientServerApp.zip"
      },
      "id": "tvmljs/playing_media_in_a_client-server_app",
      "identifier": "doc://com.apple.documentation/documentation/tvmljs/playing_media_in_a_client-server_app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/tvmljs/playing_media_in_a_client-server_app.json",
      "module": "TVMLKit JS",
      "modules": [
        "TVMLKit JS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:TVMLKit JS"
      ],
      "platforms": [
        {
          "introduced_at": "12.0",
          "name": "tvOS"
        },
        {
          "introduced_at": "11.2",
          "name": "Xcode"
        }
      ],
      "title": "Playing Media in a Client-Server App"
    },
    {
      "abstract": "Update onscreen information by adding event listeners to your Apple TV app.",
      "categories": [
        "TV"
      ],
      "doc_path": "/documentation/tvmljs/responding_to_user_interaction",
      "doc_url": "https://developer.apple.com/documentation/tvmljs/responding_to_user_interaction",
      "download": {
        "filename": "RespondingToUserInteraction.zip",
        "identifier": "https://docs-assets.developer.apple.com/published/b2db8f4d43/RespondingToUserInteraction.zip",
        "url": "https://docs-assets.developer.apple.com/published/b2db8f4d43/RespondingToUserInteraction.zip"
      },
      "id": "tvmljs/responding_to_user_interaction",
      "identifier": "doc://com.apple.documentation/documentation/tvmljs/responding_to_user_interaction",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/tvmljs/responding_to_user_interaction.json",
      "module": "TVMLKit JS",
      "modules": [
        "TVMLKit JS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:TVMLKit JS"
      ],
      "platforms": [
        {
          "introduced_at": "12.1",
          "name": "tvOS"
        },
        {
          "introduced_at": "11.2",
          "name": "Xcode"
        }
      ],
      "title": "Responding to User Interaction"
    },
    {
      "abstract": "Display content options with document view controllers and fetch and populate content with TVMLKit JS.",
      "categories": [
        "TV"
      ],
      "doc_path": "/documentation/TVMLKit/implementing-a-hybrid-tv-app-with-tvmlkit",
      "doc_url": "https://developer.apple.com/documentation/TVMLKit/implementing-a-hybrid-tv-app-with-tvmlkit",
      "download": {
        "filename": "ImplementingAHybridTVAppWithTVMLKit.zip",
        "identifier": "5ea6a203c148/ImplementingAHybridTVAppWithTVMLKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/5ea6a203c148/ImplementingAHybridTVAppWithTVMLKit.zip"
      },
      "id": "tvmlkit/implementing-a-hybrid-tv-app-with-tvmlkit",
      "identifier": "doc://com.apple.tvmlkit/documentation/TVMLKit/implementing-a-hybrid-tv-app-with-tvmlkit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/TVMLKit/implementing-a-hybrid-tv-app-with-tvmlkit.json",
      "module": "TVMLKit",
      "modules": [
        "TVMLKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:TVMLKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "15.2",
          "name": "Xcode"
        }
      ],
      "title": "Implementing a Hybrid TV App with TVMLKit"
    },
    {
      "abstract": "Highlight content from your Apple TV application by building a full screen Top Shelf extension.",
      "categories": [
        "TV"
      ],
      "doc_path": "/documentation/TVServices/building-a-full-screen-top-shelf-extension",
      "doc_url": "https://developer.apple.com/documentation/TVServices/building-a-full-screen-top-shelf-extension",
      "download": {
        "filename": "BuildingAFullScreenTopShelfExtension.zip",
        "identifier": "0d8c2394f814/BuildingAFullScreenTopShelfExtension.zip",
        "url": "https://docs-assets.developer.apple.com/published/0d8c2394f814/BuildingAFullScreenTopShelfExtension.zip"
      },
      "id": "tvservices/building-a-full-screen-top-shelf-extension",
      "identifier": "doc://com.apple.tvservices/documentation/TVServices/building-a-full-screen-top-shelf-extension",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/TVServices/building-a-full-screen-top-shelf-extension.json",
      "module": "TV Services",
      "modules": [
        "TV Services"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:TV Services"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "Xcode"
        }
      ],
      "title": "Building a Full Screen Top Shelf Extension"
    },
    {
      "abstract": "Adapt the content of your app for the current viewer by using an entitlement and simplifying sign-in flows.",
      "categories": [
        "TV"
      ],
      "doc_path": "/documentation/TVServices/mapping-apple-tv-users-to-app-profiles",
      "doc_url": "https://developer.apple.com/documentation/TVServices/mapping-apple-tv-users-to-app-profiles",
      "download": {
        "filename": "MappingAppleTVUsersToAppProfiles.zip",
        "identifier": "d4b9171f4a3e/MappingAppleTVUsersToAppProfiles.zip",
        "url": "https://docs-assets.developer.apple.com/published/d4b9171f4a3e/MappingAppleTVUsersToAppProfiles.zip"
      },
      "id": "tvservices/mapping-apple-tv-users-to-app-profiles",
      "identifier": "doc://com.apple.tvservices/documentation/TVServices/mapping-apple-tv-users-to-app-profiles",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/TVServices/mapping-apple-tv-users-to-app-profiles.json",
      "module": "TV Services",
      "modules": [
        "TV Services"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:TV Services"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "Mapping Apple TV users to app profiles"
    },
    {
      "abstract": "Store separate data for each user with the new Runs as Current User capability.",
      "categories": [
        "TV"
      ],
      "doc_path": "/documentation/TVServices/supporting-multiple-users-in-your-tvos-app",
      "doc_url": "https://developer.apple.com/documentation/TVServices/supporting-multiple-users-in-your-tvos-app",
      "download": {
        "filename": "SupportingMultipleUsersInYourTvOSApp.zip",
        "identifier": "355a1ffe663d/SupportingMultipleUsersInYourTvOSApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/355a1ffe663d/SupportingMultipleUsersInYourTvOSApp.zip"
      },
      "id": "tvservices/supporting-multiple-users-in-your-tvos-app",
      "identifier": "doc://com.apple.tvservices/documentation/TVServices/supporting-multiple-users-in-your-tvos-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/TVServices/supporting-multiple-users-in-your-tvos-app.json",
      "module": "TV Services",
      "modules": [
        "TV Services"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:TV Services"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Xcode"
        }
      ],
      "title": "Supporting Multiple Users in Your tvOS App"
    },
    {
      "abstract": "Display content with a collection view that maximizes the tvOS experience.",
      "categories": [
        "TV"
      ],
      "doc_path": "/documentation/TVUIKit/creating-immersive-experiences-using-a-full-screen-layout",
      "doc_url": "https://developer.apple.com/documentation/TVUIKit/creating-immersive-experiences-using-a-full-screen-layout",
      "download": {
        "filename": "CreatingImmersiveExperiencesUsingAFullScreenLayout.zip",
        "identifier": "6d260bba65c6/CreatingImmersiveExperiencesUsingAFullScreenLayout.zip",
        "url": "https://docs-assets.developer.apple.com/published/6d260bba65c6/CreatingImmersiveExperiencesUsingAFullScreenLayout.zip"
      },
      "id": "tvuikit/creating-immersive-experiences-using-a-full-screen-layout",
      "identifier": "doc://com.apple.tvuikit/documentation/TVUIKit/creating-immersive-experiences-using-a-full-screen-layout",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/TVUIKit/creating-immersive-experiences-using-a-full-screen-layout.json",
      "module": "TVUIKit",
      "modules": [
        "TVUIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:TVUIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "14.2",
          "name": "Xcode"
        }
      ],
      "title": "Creating immersive experiences using a full-screen layout"
    },
    {
      "abstract": "Expose commonly used functionality with static or dynamic 3D Touch Home Screen quick actions.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/add-home-screen-quick-actions",
      "doc_url": "https://developer.apple.com/documentation/UIKit/add-home-screen-quick-actions",
      "download": {
        "filename": "AddHomeScreenQuickActions.zip",
        "identifier": "e75c7b34d8fd/AddHomeScreenQuickActions.zip",
        "url": "https://docs-assets.developer.apple.com/published/e75c7b34d8fd/AddHomeScreenQuickActions.zip"
      },
      "id": "uikit/add-home-screen-quick-actions",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/add-home-screen-quick-actions",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/add-home-screen-quick-actions.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Xcode"
        }
      ],
      "title": "Add Home Screen quick actions"
    },
    {
      "abstract": "Provide quick access to useful actions by adding context menus to your iOS app.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/adding-context-menus-in-your-app",
      "doc_url": "https://developer.apple.com/documentation/UIKit/adding-context-menus-in-your-app",
      "download": {
        "filename": "AddingContextMenusInYourApp.zip",
        "identifier": "e845680c042f/AddingContextMenusInYourApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/e845680c042f/AddingContextMenusInYourApp.zip"
      },
      "id": "uikit/adding-context-menus-in-your-app",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/adding-context-menus-in-your-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/adding-context-menus-in-your-app.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit",
        "technology-index:WebKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Xcode"
        }
      ],
      "title": "Adding context menus in your app"
    },
    {
      "abstract": "Enhance interactions with your app by handling raw keyboard events, writing custom keyboard shortcuts, and working with gesture recognizers.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/adding-hardware-keyboard-support-to-your-app",
      "doc_url": "https://developer.apple.com/documentation/UIKit/adding-hardware-keyboard-support-to-your-app",
      "download": {
        "filename": "AddingHardwareKeyboardSupportToYourApp.zip",
        "identifier": "bfc5b86dd67e/AddingHardwareKeyboardSupportToYourApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/bfc5b86dd67e/AddingHardwareKeyboardSupportToYourApp.zip"
      },
      "id": "uikit/adding-hardware-keyboard-support-to-your-app",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/adding-hardware-keyboard-support-to-your-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/adding-hardware-keyboard-support-to-your-app.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Xcode"
        }
      ],
      "title": "Adding hardware keyboard support to your app"
    },
    {
      "abstract": "Provide quick access to useful actions by adding menus and keyboard shortcuts to your Mac app built with Mac Catalyst.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/adding-menus-and-shortcuts-to-the-menu-bar-and-user-interface",
      "doc_url": "https://developer.apple.com/documentation/UIKit/adding-menus-and-shortcuts-to-the-menu-bar-and-user-interface",
      "download": {
        "filename": "AddingMenusAndShortcutsToTheMenuBarAndUserInterface.zip",
        "identifier": "5e60ae06106d/AddingMenusAndShortcutsToTheMenuBarAndUserInterface.zip",
        "url": "https://docs-assets.developer.apple.com/published/5e60ae06106d/AddingMenusAndShortcutsToTheMenuBarAndUserInterface.zip"
      },
      "id": "uikit/adding-menus-and-shortcuts-to-the-menu-bar-and-user-interface",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/adding-menus-and-shortcuts-to-the-menu-bar-and-user-interface",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/adding-menus-and-shortcuts-to-the-menu-bar-and-user-interface.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.1",
          "name": "Xcode"
        }
      ],
      "title": "Adding menus and shortcuts to the menu bar and user interface"
    },
    {
      "abstract": "Respond dynamically to keyboard movement by using the tracking features of the keyboard layout guide.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/adjusting-your-layout-with-keyboard-layout-guide",
      "doc_url": "https://developer.apple.com/documentation/UIKit/adjusting-your-layout-with-keyboard-layout-guide",
      "download": {
        "filename": "AdjustingYourLayoutWithKeyboardLayoutGuide.zip",
        "identifier": "51351f27fd2e/AdjustingYourLayoutWithKeyboardLayoutGuide.zip",
        "url": "https://docs-assets.developer.apple.com/published/51351f27fd2e/AdjustingYourLayoutWithKeyboardLayoutGuide.zip"
      },
      "id": "uikit/adjusting-your-layout-with-keyboard-layout-guide",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/adjusting-your-layout-with-keyboard-layout-guide",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/adjusting-your-layout-with-keyboard-layout-guide.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Adjusting your layout with keyboard layout guide"
    },
    {
      "abstract": "Demonstrates how to enable drag and drop for a  instance.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/adopting-drag-and-drop-in-a-custom-view",
      "doc_url": "https://developer.apple.com/documentation/UIKit/adopting-drag-and-drop-in-a-custom-view",
      "download": {
        "filename": "AdoptingDragAndDropInACustomView.zip",
        "identifier": "64088647bd17/AdoptingDragAndDropInACustomView.zip",
        "url": "https://docs-assets.developer.apple.com/published/64088647bd17/AdoptingDragAndDropInACustomView.zip"
      },
      "id": "uikit/adopting-drag-and-drop-in-a-custom-view",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/adopting-drag-and-drop-in-a-custom-view",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/adopting-drag-and-drop-in-a-custom-view.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.3",
          "name": "Xcode"
        }
      ],
      "title": "Adopting drag and drop in a custom view"
    },
    {
      "abstract": "Demonstrates how to enable and implement drag and drop for a table view.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/adopting-drag-and-drop-in-a-table-view",
      "doc_url": "https://developer.apple.com/documentation/UIKit/adopting-drag-and-drop-in-a-table-view",
      "download": {
        "filename": "AdoptingDragAndDropInATableView.zip",
        "identifier": "eaf99c41437f/AdoptingDragAndDropInATableView.zip",
        "url": "https://docs-assets.developer.apple.com/published/eaf99c41437f/AdoptingDragAndDropInATableView.zip"
      },
      "id": "uikit/adopting-drag-and-drop-in-a-table-view",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/adopting-drag-and-drop-in-a-table-view",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/adopting-drag-and-drop-in-a-table-view.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.5",
          "name": "Xcode"
        }
      ],
      "title": "Adopting drag and drop in a table view"
    },
    {
      "abstract": "Enhance user feedback for your iPadOS app with a hover preview for Apple Pencil input.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/adopting-hover-support-for-apple-pencil",
      "doc_url": "https://developer.apple.com/documentation/UIKit/adopting-hover-support-for-apple-pencil",
      "download": {
        "filename": "AdoptingHoverSupportForApplePencil.zip",
        "identifier": "adc8da922f3a/AdoptingHoverSupportForApplePencil.zip",
        "url": "https://docs-assets.developer.apple.com/published/adc8da922f3a/AdoptingHoverSupportForApplePencil.zip"
      },
      "id": "uikit/adopting-hover-support-for-apple-pencil",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/adopting-hover-support-for-apple-pencil",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/adopting-hover-support-for-apple-pencil.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Apple Pencil",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.1",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.1",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.1",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.1",
          "name": "Xcode"
        }
      ],
      "title": "Adopting hover support for Apple Pencil"
    },
    {
      "abstract": "Adopt Dark Mode in your iOS app by using dynamic colors and visual effects.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/adopting-ios-dark-mode",
      "doc_url": "https://developer.apple.com/documentation/UIKit/adopting-ios-dark-mode",
      "download": {
        "filename": "AdoptingIOSDarkMode.zip",
        "identifier": "01d83ac2d393/AdoptingIOSDarkMode.zip",
        "url": "https://docs-assets.developer.apple.com/published/01d83ac2d393/AdoptingIOSDarkMode.zip"
      },
      "id": "uikit/adopting-ios-dark-mode",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/adopting-ios-dark-mode",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/adopting-ios-dark-mode.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "Xcode"
        }
      ],
      "title": "Adopting iOS Dark Mode"
    },
    {
      "abstract": "Add menus to your user interface, with built-in button support and bar-button items, and create custom menu experiences.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/adopting-menus-and-uiactions-in-your-user-interface",
      "doc_url": "https://developer.apple.com/documentation/UIKit/adopting-menus-and-uiactions-in-your-user-interface",
      "download": {
        "filename": "AdoptingMenusAndUIActionsInYourUserInterface.zip",
        "identifier": "27cc7dd67349/AdoptingMenusAndUIActionsInYourUserInterface.zip",
        "url": "https://docs-assets.developer.apple.com/published/27cc7dd67349/AdoptingMenusAndUIActionsInYourUserInterface.zip"
      },
      "id": "uikit/adopting-menus-and-uiactions-in-your-user-interface",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/adopting-menus-and-uiactions-in-your-user-interface",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/adopting-menus-and-uiactions-in-your-user-interface.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.6",
          "name": "Xcode"
        }
      ],
      "title": "Adopting menus and UIActions in your user interface"
    },
    {
      "abstract": "Store and fetch images asynchronously to make your app more responsive.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/asynchronously-loading-images-into-table-and-collection-views",
      "doc_url": "https://developer.apple.com/documentation/UIKit/asynchronously-loading-images-into-table-and-collection-views",
      "download": {
        "filename": "AsynchronouslyLoadingImagesIntoTableAndCollectionViews.zip",
        "identifier": "ddaa59c48206/AsynchronouslyLoadingImagesIntoTableAndCollectionViews.zip",
        "url": "https://docs-assets.developer.apple.com/published/ddaa59c48206/AsynchronouslyLoadingImagesIntoTableAndCollectionViews.zip"
      },
      "id": "uikit/asynchronously-loading-images-into-table-and-collection-views",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/asynchronously-loading-images-into-table-and-collection-views",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/asynchronously-loading-images-into-table-and-collection-views.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Asynchronously loading images into table and collection views"
    },
    {
      "abstract": "Implement a custom document file format to manage user interactions with files on different cloud storage providers.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/building-a-document-browser-app-for-custom-file-formats",
      "doc_url": "https://developer.apple.com/documentation/UIKit/building-a-document-browser-app-for-custom-file-formats",
      "download": {
        "filename": "BuildingADocumentBrowserAppForCustomFileFormats.zip",
        "identifier": "25972df8148a/BuildingADocumentBrowserAppForCustomFileFormats.zip",
        "url": "https://docs-assets.developer.apple.com/published/25972df8148a/BuildingADocumentBrowserAppForCustomFileFormats.zip"
      },
      "id": "uikit/building-a-document-browser-app-for-custom-file-formats",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/building-a-document-browser-app-for-custom-file-formats",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/building-a-document-browser-app-for-custom-file-formats.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:SceneKit",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Xcode"
        }
      ],
      "title": "Building a document browser app for custom file formats"
    },
    {
      "abstract": "Provide access to on-device and cloud files by adding a document browser to your app.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/building-an-app-with-a-document-browser",
      "doc_url": "https://developer.apple.com/documentation/UIKit/building-an-app-with-a-document-browser",
      "download": {
        "filename": "BuildingAnAppWithADocumentBrowser.zip",
        "identifier": "af1183140aac/BuildingAnAppWithADocumentBrowser.zip",
        "url": "https://docs-assets.developer.apple.com/published/af1183140aac/BuildingAnAppWithADocumentBrowser.zip"
      },
      "id": "uikit/building-an-app-with-a-document-browser",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/building-an-app-with-a-document-browser",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/building-an-app-with-a-document-browser.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Building an app with a document browser"
    },
    {
      "abstract": "Improve your iPadOS app with Mac Catalyst by supporting native controls, multiple windows, sharing, printing, menus and keyboard shortcuts.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/building-and-improving-your-app-with-mac-catalyst",
      "doc_url": "https://developer.apple.com/documentation/UIKit/building-and-improving-your-app-with-mac-catalyst",
      "download": {
        "filename": "BuildingAndImprovingYourAppWithMacCatalyst.zip",
        "identifier": "9d16271f9c77/BuildingAndImprovingYourAppWithMacCatalyst.zip",
        "url": "https://docs-assets.developer.apple.com/published/9d16271f9c77/BuildingAndImprovingYourAppWithMacCatalyst.zip"
      },
      "id": "uikit/building-and-improving-your-app-with-mac-catalyst",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/building-and-improving-your-app-with-mac-catalyst",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/building-and-improving-your-app-with-mac-catalyst.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Building and improving your app with Mac Catalyst"
    },
    {
      "abstract": "Improve the performance of lists and collections in your app with prefetching and image preparation.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/building-high-performance-lists-and-collection-views",
      "doc_url": "https://developer.apple.com/documentation/UIKit/building-high-performance-lists-and-collection-views",
      "download": {
        "filename": "BuildingHighPerformanceListsAndCollectionViews.zip",
        "identifier": "7f5574e912c4/BuildingHighPerformanceListsAndCollectionViews.zip",
        "url": "https://docs-assets.developer.apple.com/published/7f5574e912c4/BuildingHighPerformanceListsAndCollectionViews.zip"
      },
      "id": "uikit/building-high-performance-lists-and-collection-views",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/building-high-performance-lists-and-collection-views",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/building-high-performance-lists-and-collection-views.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Building high-performance lists and collection views"
    },
    {
      "abstract": "Provide visual feedback to the user about the state of a cell and the transition between states.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/changing-the-appearance-of-selected-and-highlighted-cells",
      "doc_url": "https://developer.apple.com/documentation/UIKit/changing-the-appearance-of-selected-and-highlighted-cells",
      "download": {
        "filename": "ChangingTheAppearanceOfSelectedAndHighlightedCells.zip",
        "identifier": "50a0506ab5ab/ChangingTheAppearanceOfSelectedAndHighlightedCells.zip",
        "url": "https://docs-assets.developer.apple.com/published/50a0506ab5ab/ChangingTheAppearanceOfSelectedAndHighlightedCells.zip"
      },
      "id": "uikit/changing-the-appearance-of-selected-and-highlighted-cells",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/changing-the-appearance-of-selected-and-highlighted-cells",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/changing-the-appearance-of-selected-and-highlighted-cells.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "Xcode"
        }
      ],
      "title": "Changing the appearance of selected and highlighted cells"
    },
    {
      "abstract": "Create table view cells that support Dynamic Type and use system spacing constraints to adjust the spacing surrounding text labels.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/creating-self-sizing-table-view-cells",
      "doc_url": "https://developer.apple.com/documentation/UIKit/creating-self-sizing-table-view-cells",
      "download": {
        "filename": "CreatingSelfSizingTableViewCells.zip",
        "identifier": "097e9c9dad75/CreatingSelfSizingTableViewCells.zip",
        "url": "https://docs-assets.developer.apple.com/published/097e9c9dad75/CreatingSelfSizingTableViewCells.zip"
      },
      "id": "uikit/creating-self-sizing-table-view-cells",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/creating-self-sizing-table-view-cells",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/creating-self-sizing-table-view-cells.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AppKit",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.3",
          "name": "Xcode"
        }
      ],
      "title": "Creating self-sizing table view cells"
    },
    {
      "abstract": "Manage user interactions and present custom information when taking pictures by adding an overlay view to your image picker.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/customizing-an-image-picker-controller",
      "doc_url": "https://developer.apple.com/documentation/UIKit/customizing-an-image-picker-controller",
      "download": {
        "filename": "CustomizingAnImagePickerController.zip",
        "identifier": "8a225e1270c0/CustomizingAnImagePickerController.zip",
        "url": "https://docs-assets.developer.apple.com/published/8a225e1270c0/CustomizingAnImagePickerController.zip"
      },
      "id": "uikit/customizing-an-image-picker-controller",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/customizing-an-image-picker-controller",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/customizing-an-image-picker-controller.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "10.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "10.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "10.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "Xcode"
        }
      ],
      "title": "Customizing an image picker controller"
    },
    {
      "abstract": "Discover how to create a layered and customized sheet experience in UIKit.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/customizing-and-resizing-sheets-in-uikit",
      "doc_url": "https://developer.apple.com/documentation/UIKit/customizing-and-resizing-sheets-in-uikit",
      "download": {
        "filename": "CustomizingAndResizingSheetsInUIKit.zip",
        "identifier": "9f8e34adc2d3/CustomizingAndResizingSheetsInUIKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/9f8e34adc2d3/CustomizingAndResizingSheetsInUIKit.zip"
      },
      "id": "uikit/customizing-and-resizing-sheets-in-uikit",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/customizing-and-resizing-sheets-in-uikit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/customizing-and-resizing-sheets-in-uikit.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "Customizing and resizing sheets in UIKit"
    },
    {
      "abstract": "Customize a view layout by changing the size of cells in the flow or implementing a mosaic style.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/customizing-collection-view-layouts",
      "doc_url": "https://developer.apple.com/documentation/UIKit/customizing-collection-view-layouts",
      "download": {
        "filename": "CustomizingCollectionViewLayouts.zip",
        "identifier": "ebe75d1feb4d/CustomizingCollectionViewLayouts.zip",
        "url": "https://docs-assets.developer.apple.com/published/ebe75d1feb4d/CustomizingCollectionViewLayouts.zip"
      },
      "id": "uikit/customizing-collection-view-layouts",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/customizing-collection-view-layouts",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/customizing-collection-view-layouts.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Customizing collection view layouts"
    },
    {
      "abstract": "Create custom titles, prompts, and buttons in your app’s navigation bar.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/customizing-your-app-s-navigation-bar",
      "doc_url": "https://developer.apple.com/documentation/UIKit/customizing-your-app-s-navigation-bar",
      "download": {
        "filename": "CustomizingYourAppsNavigationBar.zip",
        "identifier": "8b8c14d97eaf/CustomizingYourAppsNavigationBar.zip",
        "url": "https://docs-assets.developer.apple.com/published/8b8c14d97eaf/CustomizingYourAppsNavigationBar.zip"
      },
      "id": "uikit/customizing-your-app-s-navigation-bar",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/customizing-your-app-s-navigation-bar",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/customizing-your-app-s-navigation-bar.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "watchOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Customizing your app’s navigation bar"
    },
    {
      "abstract": "Share data between iPad apps during a drag and drop operation using an item provider.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/data-delivery-with-drag-and-drop",
      "doc_url": "https://developer.apple.com/documentation/UIKit/data-delivery-with-drag-and-drop",
      "download": {
        "filename": "DataDeliveryWithDragAndDrop.zip",
        "identifier": "3c5ab9f0f457/DataDeliveryWithDragAndDrop.zip",
        "url": "https://docs-assets.developer.apple.com/published/3c5ab9f0f457/DataDeliveryWithDragAndDrop.zip"
      },
      "id": "uikit/data-delivery-with-drag-and-drop",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/data-delivery-with-drag-and-drop",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/data-delivery-with-drag-and-drop.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "Xcode"
        }
      ],
      "title": "Data delivery with drag and drop"
    },
    {
      "abstract": "Listen for and respond to a user’s preference changes in your Mac app built with Mac Catalyst using Combine.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/detecting-changes-in-the-preferences-window",
      "doc_url": "https://developer.apple.com/documentation/UIKit/detecting-changes-in-the-preferences-window",
      "download": {
        "filename": "DetectingChangesInThePreferencesWindow.zip",
        "identifier": "1b05ad2e7b73/DetectingChangesInThePreferencesWindow.zip",
        "url": "https://docs-assets.developer.apple.com/published/1b05ad2e7b73/DetectingChangesInThePreferencesWindow.zip"
      },
      "id": "uikit/detecting-changes-in-the-preferences-window",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/detecting-changes-in-the-preferences-window",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/detecting-changes-in-the-preferences-window.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.1",
          "name": "Xcode"
        }
      ],
      "title": "Detecting changes in the preferences window"
    },
    {
      "abstract": "Ensure a positive user experience when presenting a view controller as a sheet.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/disabling-the-pull-down-gesture-for-a-sheet",
      "doc_url": "https://developer.apple.com/documentation/UIKit/disabling-the-pull-down-gesture-for-a-sheet",
      "download": {
        "filename": "DisablingThePullDownGestureForASheet.zip",
        "identifier": "2afc84a1a7e9/DisablingThePullDownGestureForASheet.zip",
        "url": "https://docs-assets.developer.apple.com/published/2afc84a1a7e9/DisablingThePullDownGestureForASheet.zip"
      },
      "id": "uikit/disabling-the-pull-down-gesture-for-a-sheet",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/disabling-the-pull-down-gesture-for-a-sheet",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/disabling-the-pull-down-gesture-for-a-sheet.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.3",
          "name": "Xcode"
        }
      ],
      "title": "Disabling the pull-down gesture for a sheet"
    },
    {
      "abstract": "Lay out text in a custom-shaped container and apply glyph substitutions.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/display-text-with-a-custom-layout",
      "doc_url": "https://developer.apple.com/documentation/UIKit/display-text-with-a-custom-layout",
      "download": {
        "filename": "DisplayTextWithACustomLayout.zip",
        "identifier": "c94cdd160e47/DisplayTextWithACustomLayout.zip",
        "url": "https://docs-assets.developer.apple.com/published/c94cdd160e47/DisplayTextWithACustomLayout.zip"
      },
      "id": "uikit/display-text-with-a-custom-layout",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/display-text-with-a-custom-layout",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/display-text-with-a-custom-layout.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Xcode"
        }
      ],
      "title": "Display text with a custom layout"
    },
    {
      "abstract": "Create a user interface with searchable content in a table view.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/displaying-searchable-content-by-using-a-search-controller",
      "doc_url": "https://developer.apple.com/documentation/UIKit/displaying-searchable-content-by-using-a-search-controller",
      "download": {
        "filename": "DisplayingSearchableContentByUsingASearchController.zip",
        "identifier": "b3eaa845da50/DisplayingSearchableContentByUsingASearchController.zip",
        "url": "https://docs-assets.developer.apple.com/published/b3eaa845da50/DisplayingSearchableContentByUsingASearchController.zip"
      },
      "id": "uikit/displaying-searchable-content-by-using-a-search-controller",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/displaying-searchable-content-by-using-a-search-controller",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/displaying-searchable-content-by-using-a-search-controller.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Foundation",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Displaying searchable content by using a search controller"
    },
    {
      "abstract": "Provide a great user experience with pointing devices, by incorporating pointer content effects and shape customizations.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/enhancing-your-ipad-app-with-pointer-interactions",
      "doc_url": "https://developer.apple.com/documentation/UIKit/enhancing-your-ipad-app-with-pointer-interactions",
      "download": {
        "filename": "EnhancingYourIPadAppWithPointerInteractions.zip",
        "identifier": "2a604abb1735/EnhancingYourIPadAppWithPointerInteractions.zip",
        "url": "https://docs-assets.developer.apple.com/published/2a604abb1735/EnhancingYourIPadAppWithPointerInteractions.zip"
      },
      "id": "uikit/enhancing-your-ipad-app-with-pointer-interactions",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/enhancing-your-ipad-app-with-pointer-interactions",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/enhancing-your-ipad-app-with-pointer-interactions.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.5",
          "name": "Xcode"
        }
      ],
      "title": "Enhancing your iPad app with pointer interactions"
    },
    {
      "abstract": "Support line numbering, section collapsing, inline attachment caching, exclusion paths, text attachments, and text lists in a text view.",
      "categories": [
        "WWDC26",
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/enriching-your-text-in-text-views",
      "doc_url": "https://developer.apple.com/documentation/UIKit/enriching-your-text-in-text-views",
      "download": {
        "filename": "EnrichingYourTextInTextViews.zip",
        "identifier": "44b0d825b47c/EnrichingYourTextInTextViews.zip",
        "url": "https://docs-assets.developer.apple.com/published/44b0d825b47c/EnrichingYourTextInTextViews.zip"
      },
      "id": "uikit/enriching-your-text-in-text-views",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/enriching-your-text-in-text-views",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/enriching-your-text-in-text-views.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AppKit",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iPadOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "macOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "visionOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Enriching your text in text views"
    },
    {
      "abstract": "Capture Apple Pencil and touch input in views.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/illustrating-the-force-altitude-and-azimuth-properties-of-touch-input",
      "doc_url": "https://developer.apple.com/documentation/UIKit/illustrating-the-force-altitude-and-azimuth-properties-of-touch-input",
      "download": {
        "filename": "IllustratingTheForceAltitudeAndAzimuthPropertiesOfTouchInput.zip",
        "identifier": "9afba208ca4a/IllustratingTheForceAltitudeAndAzimuthPropertiesOfTouchInput.zip",
        "url": "https://docs-assets.developer.apple.com/published/9afba208ca4a/IllustratingTheForceAltitudeAndAzimuthPropertiesOfTouchInput.zip"
      },
      "id": "uikit/illustrating-the-force-altitude-and-azimuth-properties-of-touch-input",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/illustrating-the-force-altitude-and-azimuth-properties-of-touch-input",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/illustrating-the-force-altitude-and-azimuth-properties-of-touch-input.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "10.1",
          "name": "Xcode"
        }
      ],
      "title": "Illustrating the force, altitude, and azimuth properties of touch input"
    },
    {
      "abstract": "Bring compositional layouts to your app and simplify updating your user interface with diffable data sources.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/implementing-modern-collection-views",
      "doc_url": "https://developer.apple.com/documentation/UIKit/implementing-modern-collection-views",
      "download": {
        "filename": "ImplementingModernCollectionViews.zip",
        "identifier": "76a6e639ef2e/ImplementingModernCollectionViews.zip",
        "url": "https://docs-assets.developer.apple.com/published/76a6e639ef2e/ImplementingModernCollectionViews.zip"
      },
      "id": "uikit/implementing-modern-collection-views",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/implementing-modern-collection-views",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/implementing-modern-collection-views.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AppKit",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Implementing modern collection views"
    },
    {
      "abstract": "Accelerate actions in your app by providing shortcuts to preview content in detail view controllers.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/implementing-peek-and-pop",
      "doc_url": "https://developer.apple.com/documentation/UIKit/implementing-peek-and-pop",
      "download": {
        "filename": "ImplementingPeekAndPop.zip",
        "identifier": "22fe32e34c3a/ImplementingPeekAndPop.zip",
        "url": "https://docs-assets.developer.apple.com/published/22fe32e34c3a/ImplementingPeekAndPop.zip"
      },
      "id": "uikit/implementing-peek-and-pop",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/implementing-peek-and-pop",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/implementing-peek-and-pop.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "11.4",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "11.4",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "11.4",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "10.2",
          "name": "Xcode"
        }
      ],
      "title": "Implementing Peek and Pop"
    },
    {
      "abstract": "Support touch interactions in your iPad app by adding pointer interactions to your views.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/integrating-pointer-interactions-into-your-ipad-app",
      "doc_url": "https://developer.apple.com/documentation/UIKit/integrating-pointer-interactions-into-your-ipad-app",
      "download": {
        "filename": "IntegratingPointerInteractionsIntoYourIPadApp.zip",
        "identifier": "dd68adc3cd24/IntegratingPointerInteractionsIntoYourIPadApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/dd68adc3cd24/IntegratingPointerInteractionsIntoYourIPadApp.zip"
      },
      "id": "uikit/integrating-pointer-interactions-into-your-ipad-app",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/integrating-pointer-interactions-into-your-ipad-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/integrating-pointer-interactions-into-your-ipad-app.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Apple Pencil",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.4",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.4",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.4",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.5",
          "name": "Xcode"
        }
      ],
      "title": "Integrating pointer interactions into your iPad app"
    },
    {
      "abstract": "Capture touches as a series of strokes and render them efficiently on a drawing canvas.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/leveraging-touch-input-for-drawing-apps",
      "doc_url": "https://developer.apple.com/documentation/UIKit/leveraging-touch-input-for-drawing-apps",
      "download": {
        "filename": "LeveragingTouchInputForDrawingApps.zip",
        "identifier": "72f431f71f59/LeveragingTouchInputForDrawingApps.zip",
        "url": "https://docs-assets.developer.apple.com/published/72f431f71f59/LeveragingTouchInputForDrawingApps.zip"
      },
      "id": "uikit/leveraging-touch-input-for-drawing-apps",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/leveraging-touch-input-for-drawing-apps",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/leveraging-touch-input-for-drawing-apps.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "10.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "10.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "10.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.3",
          "name": "Xcode"
        }
      ],
      "title": "Leveraging touch input for drawing apps"
    },
    {
      "abstract": "Navigate between user interface elements using a keyboard and focusable UI elements in iPad apps and apps built with Mac Catalyst.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/navigating-an-app-s-user-interface-using-a-keyboard",
      "doc_url": "https://developer.apple.com/documentation/UIKit/navigating-an-app-s-user-interface-using-a-keyboard",
      "download": {
        "filename": "NavigatingAnAppsUserInterfaceUsingAKeyboard.zip",
        "identifier": "1fe9bc497b3c/NavigatingAnAppsUserInterfaceUsingAKeyboard.zip",
        "url": "https://docs-assets.developer.apple.com/published/1fe9bc497b3c/NavigatingAnAppsUserInterfaceUsingAKeyboard.zip"
      },
      "id": "uikit/navigating-an-app-s-user-interface-using-a-keyboard",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/navigating-an-app-s-user-interface-using-a-keyboard",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/navigating-an-app-s-user-interface-using-a-keyboard.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Navigating an app’s user interface using a keyboard"
    },
    {
      "abstract": "Load data for collection view cells before they display.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/prefetching-collection-view-data",
      "doc_url": "https://developer.apple.com/documentation/UIKit/prefetching-collection-view-data",
      "download": {
        "filename": "PrefetchingCollectionViewData.zip",
        "identifier": "c211f0af552e/PrefetchingCollectionViewData.zip",
        "url": "https://docs-assets.developer.apple.com/published/c211f0af552e/PrefetchingCollectionViewData.zip"
      },
      "id": "uikit/prefetching-collection-view-data",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/prefetching-collection-view-data",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/prefetching-collection-view-data.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "10.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "10.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "10.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.2",
          "name": "Xcode"
        }
      ],
      "title": "Prefetching collection view data"
    },
    {
      "abstract": "Provide continuity for the user by preserving current activities.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/restoring-your-app-s-state",
      "doc_url": "https://developer.apple.com/documentation/UIKit/restoring-your-app-s-state",
      "download": {
        "filename": "RestoringYourAppsState.zip",
        "identifier": "a9326fb01c82/RestoringYourAppsState.zip",
        "url": "https://docs-assets.developer.apple.com/published/a9326fb01c82/RestoringYourAppsState.zip"
      },
      "id": "uikit/restoring-your-app-s-state",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/restoring-your-app-s-state",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/restoring-your-app-s-state.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Restoring your app’s state"
    },
    {
      "abstract": "Accelerate user selection of multiple items using the multiselect gesture on table and collection views.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/selecting-multiple-items-with-a-two-finger-pan-gesture",
      "doc_url": "https://developer.apple.com/documentation/UIKit/selecting-multiple-items-with-a-two-finger-pan-gesture",
      "download": {
        "filename": "SelectingMultipleItemsWithATwoFingerPanGesture.zip",
        "identifier": "56f75761a3d9/SelectingMultipleItemsWithATwoFingerPanGesture.zip",
        "url": "https://docs-assets.developer.apple.com/published/56f75761a3d9/SelectingMultipleItemsWithATwoFingerPanGesture.zip"
      },
      "id": "uikit/selecting-multiple-items-with-a-two-finger-pan-gesture",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/selecting-multiple-items-with-a-two-finger-pan-gesture",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/selecting-multiple-items-with-a-two-finger-pan-gesture.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.1",
          "name": "Xcode"
        }
      ],
      "title": "Selecting multiple items with a two-finger pan gesture"
    },
    {
      "abstract": "Explain the purpose of interface elements by showing a tooltip when a person positions the pointer over the element.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/showing-help-tags-for-views-and-controls-using-tooltip-interactions",
      "doc_url": "https://developer.apple.com/documentation/UIKit/showing-help-tags-for-views-and-controls-using-tooltip-interactions",
      "download": {
        "filename": "ShowingHelpTagsForViewsAndControlsUsingTooltipInteractions.zip",
        "identifier": "199a44d512cb/ShowingHelpTagsForViewsAndControlsUsingTooltipInteractions.zip",
        "url": "https://docs-assets.developer.apple.com/published/199a44d512cb/ShowingHelpTagsForViewsAndControlsUsingTooltipInteractions.zip"
      },
      "id": "uikit/showing-help-tags-for-views-and-controls-using-tooltip-interactions",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/showing-help-tags-for-views-and-controls-using-tooltip-interactions",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/showing-help-tags-for-views-and-controls-using-tooltip-interactions.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Showing help tags for views and controls using tooltip interactions"
    },
    {
      "abstract": "Enhance your iPad app by adding desktop-class features and document support.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/supporting-desktop-class-features-in-your-ipad-app",
      "doc_url": "https://developer.apple.com/documentation/UIKit/supporting-desktop-class-features-in-your-ipad-app",
      "download": {
        "filename": "SupportingDesktopClassFeaturesInYourIPadApp.zip",
        "identifier": "037b0a0bd9d7/SupportingDesktopClassFeaturesInYourIPadApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/037b0a0bd9d7/SupportingDesktopClassFeaturesInYourIPadApp.zip"
      },
      "id": "uikit/supporting-desktop-class-features-in-your-ipad-app",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/supporting-desktop-class-features-in-your-ipad-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/supporting-desktop-class-features-in-your-ipad-app.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit",
        "technology-index:Updates"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Supporting desktop-class features in your iPad app"
    },
    {
      "abstract": "Enrich your app’s user experience by supporting standard and custom gesture interaction.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/supporting-gesture-interaction-in-your-apps",
      "doc_url": "https://developer.apple.com/documentation/UIKit/supporting-gesture-interaction-in-your-apps",
      "download": {
        "filename": "SupportingGestureInteractionInYourApps.zip",
        "identifier": "a82148190f9c/SupportingGestureInteractionInYourApps.zip",
        "url": "https://docs-assets.developer.apple.com/published/a82148190f9c/SupportingGestureInteractionInYourApps.zip"
      },
      "id": "uikit/supporting-gesture-interaction-in-your-apps",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/supporting-gesture-interaction-in-your-apps",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/supporting-gesture-interaction-in-your-apps.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Xcode"
        }
      ],
      "title": "Supporting gesture interaction in your apps"
    },
    {
      "abstract": "​ Load, display, edit, and save HDR images using SwiftUI and Core Image. ​",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/supporting-hdr-images-in-your-app",
      "doc_url": "https://developer.apple.com/documentation/UIKit/supporting-hdr-images-in-your-app",
      "download": {
        "filename": "SupportingHDRImagesInYourApp.zip",
        "identifier": "6bb6a5a2302b/SupportingHDRImagesInYourApp.zip",
        "url": "https://docs-assets.developer.apple.com/published/6bb6a5a2302b/SupportingHDRImagesInYourApp.zip"
      },
      "id": "uikit/supporting-hdr-images-in-your-app",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/supporting-hdr-images-in-your-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/supporting-hdr-images-in-your-app.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AppKit",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Supporting HDR images in your app"
    },
    {
      "abstract": "Support side-by-side instances of your app’s interface and create new windows.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/supporting-multiple-windows-on-ipad",
      "doc_url": "https://developer.apple.com/documentation/UIKit/supporting-multiple-windows-on-ipad",
      "download": {
        "filename": "SupportingMultipleWindowsOnIPad.zip",
        "identifier": "70ff427f711f/SupportingMultipleWindowsOnIPad.zip",
        "url": "https://docs-assets.developer.apple.com/published/70ff427f711f/SupportingMultipleWindowsOnIPad.zip"
      },
      "id": "uikit/supporting-multiple-windows-on-ipad",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/supporting-multiple-windows-on-ipad",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/supporting-multiple-windows-on-ipad.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.3",
          "name": "Xcode"
        }
      ],
      "title": "Supporting multiple windows on iPad"
    },
    {
      "abstract": "Manage documents across multiple devices to create a seamless editing and collaboration experience.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/synchronizing-documents-in-the-icloud-environment",
      "doc_url": "https://developer.apple.com/documentation/UIKit/synchronizing-documents-in-the-icloud-environment",
      "download": {
        "filename": "SynchronizingDocumentsInTheICloudEnvironment.zip",
        "identifier": "74e04f5e0a75/SynchronizingDocumentsInTheICloudEnvironment.zip",
        "url": "https://docs-assets.developer.apple.com/published/74e04f5e0a75/SynchronizingDocumentsInTheICloudEnvironment.zip"
      },
      "id": "uikit/synchronizing-documents-in-the-icloud-environment",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/synchronizing-documents-in-the-icloud-environment",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/synchronizing-documents-in-the-icloud-environment.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.4",
          "name": "Xcode"
        }
      ],
      "title": "Synchronizing documents in the iCloud environment"
    },
    {
      "abstract": "Customize your app’s user interface with views and controls.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/uikit-catalog-creating-and-customizing-views-and-controls",
      "doc_url": "https://developer.apple.com/documentation/UIKit/uikit-catalog-creating-and-customizing-views-and-controls",
      "download": {
        "filename": "UIKitCatalogCreatingAndCustomizingViewsAndControls.zip",
        "identifier": "b311f3c6a450/UIKitCatalogCreatingAndCustomizingViewsAndControls.zip",
        "url": "https://docs-assets.developer.apple.com/published/b311f3c6a450/UIKitCatalogCreatingAndCustomizingViewsAndControls.zip"
      },
      "id": "uikit/uikit-catalog-creating-and-customizing-views-and-controls",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/uikit-catalog-creating-and-customizing-views-and-controls",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/uikit-catalog-creating-and-customizing-views-and-controls.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.1",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.1",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.1",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.1",
          "name": "Xcode"
        }
      ],
      "title": "UIKit Catalog: Creating and customizing views and controls"
    },
    {
      "abstract": "Streamline the display and update of data in a collection view using a diffable data source that contains identifiers.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/updating-collection-views-using-diffable-data-sources",
      "doc_url": "https://developer.apple.com/documentation/UIKit/updating-collection-views-using-diffable-data-sources",
      "download": {
        "filename": "UpdatingCollectionViewsUsingDiffableDataSources.zip",
        "identifier": "70021f020614/UpdatingCollectionViewsUsingDiffableDataSources.zip",
        "url": "https://docs-assets.developer.apple.com/published/70021f020614/UpdatingCollectionViewsUsingDiffableDataSources.zip"
      },
      "id": "uikit/updating-collection-views-using-diffable-data-sources",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/updating-collection-views-using-diffable-data-sources",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/updating-collection-views-using-diffable-data-sources.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.2",
          "name": "Xcode"
        }
      ],
      "title": "Updating collection views using diffable data sources"
    },
    {
      "abstract": "Create a search interface with a table view of suggested searches.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/using-suggested-searches-with-a-search-controller",
      "doc_url": "https://developer.apple.com/documentation/UIKit/using-suggested-searches-with-a-search-controller",
      "download": {
        "filename": "UsingSuggestedSearchesWithASearchController.zip",
        "identifier": "eef0fcbecc3e/UsingSuggestedSearchesWithASearchController.zip",
        "url": "https://docs-assets.developer.apple.com/published/eef0fcbecc3e/UsingSuggestedSearchesWithASearchController.zip"
      },
      "id": "uikit/using-suggested-searches-with-a-search-controller",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/using-suggested-searches-with-a-search-controller",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/using-suggested-searches-with-a-search-controller.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.2",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.2",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.2",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Using suggested searches with a search controller"
    },
    {
      "abstract": "Learn how to incorporate SwiftUI views into a UIKit app.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/using-swiftui-with-uikit",
      "doc_url": "https://developer.apple.com/documentation/UIKit/using-swiftui-with-uikit",
      "download": {
        "filename": "UsingSwiftUIWithUIKit.zip",
        "identifier": "1e6b5495c43b/UsingSwiftUIWithUIKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/1e6b5495c43b/UsingSwiftUIWithUIKit.zip"
      },
      "id": "uikit/using-swiftui-with-uikit",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/using-swiftui-with-uikit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/using-swiftui-with-uikit.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.4",
          "name": "Xcode"
        }
      ],
      "title": "Using SwiftUI with UIKit"
    },
    {
      "abstract": "Interact with text by managing text selection and inserting custom text elements.",
      "categories": [
        "UIKit"
      ],
      "doc_path": "/documentation/UIKit/using-textkit-2-to-interact-with-text",
      "doc_url": "https://developer.apple.com/documentation/UIKit/using-textkit-2-to-interact-with-text",
      "download": {
        "filename": "UsingTextKit2ToInteractWithText.zip",
        "identifier": "806998142c63/UsingTextKit2ToInteractWithText.zip",
        "url": "https://docs-assets.developer.apple.com/published/806998142c63/UsingTextKit2ToInteractWithText.zip"
      },
      "id": "uikit/using-textkit-2-to-interact-with-text",
      "identifier": "doc://com.apple.uikit/documentation/UIKit/using-textkit-2-to-interact-with-text",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UIKit/using-textkit-2-to-interact-with-text.json",
      "module": "UIKit",
      "modules": [
        "UIKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AppKit",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:UIKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.3",
          "name": "Xcode"
        }
      ],
      "title": "Using TextKit 2 to interact with text"
    },
    {
      "abstract": "Update your local USD library to add interactive and augmented reality features.",
      "categories": [
        "Graphics"
      ],
      "doc_path": "/documentation/USD/schema-definitions-for-third-party-dccs",
      "doc_url": "https://developer.apple.com/documentation/USD/schema-definitions-for-third-party-dccs",
      "download": {
        "filename": "SchemaDefinitionsForThirdPartyDCCs.zip",
        "identifier": "02eeb2976127/SchemaDefinitionsForThirdPartyDCCs.zip",
        "url": "https://docs-assets.developer.apple.com/published/02eeb2976127/SchemaDefinitionsForThirdPartyDCCs.zip"
      },
      "id": "usd/schema-definitions-for-third-party-dccs",
      "identifier": "doc://com.apple.usd/documentation/USD/schema-definitions-for-third-party-dccs",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/USD/schema-definitions-for-third-party-dccs.json",
      "module": "USD",
      "modules": [
        "USD"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:USD"
      ],
      "platforms": [],
      "title": "Schema definitions for third-party DCCs"
    },
    {
      "abstract": "Create a richer calling and messaging experience in your app by implementing communication notifications and Focus status updates.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/UserNotifications/handling-communication-notifications-and-focus-status-updates",
      "doc_url": "https://developer.apple.com/documentation/UserNotifications/handling-communication-notifications-and-focus-status-updates",
      "download": {
        "filename": "HandlingCommunicationNotificationsAndFocusStatusUpdates.zip",
        "identifier": "47d72f90ec70/HandlingCommunicationNotificationsAndFocusStatusUpdates.zip",
        "url": "https://docs-assets.developer.apple.com/published/47d72f90ec70/HandlingCommunicationNotificationsAndFocusStatusUpdates.zip"
      },
      "id": "usernotifications/handling-communication-notifications-and-focus-status-updates",
      "identifier": "doc://com.apple.usernotifications/documentation/UserNotifications/handling-communication-notifications-and-focus-status-updates",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UserNotifications/handling-communication-notifications-and-focus-status-updates.json",
      "module": "User Notifications",
      "modules": [
        "User Notifications"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:User Notifications"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Handling Communication Notifications and Focus Status Updates"
    },
    {
      "abstract": "Add visible alert notifications to your app by using the UserNotifications framework.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/UserNotifications/implementing-alert-push-notifications",
      "doc_url": "https://developer.apple.com/documentation/UserNotifications/implementing-alert-push-notifications",
      "download": {
        "filename": "ImplementingAlertPushNotifications.zip",
        "identifier": "b7a98ffee878/ImplementingAlertPushNotifications.zip",
        "url": "https://docs-assets.developer.apple.com/published/b7a98ffee878/ImplementingAlertPushNotifications.zip"
      },
      "id": "usernotifications/implementing-alert-push-notifications",
      "identifier": "doc://com.apple.usernotifications/documentation/UserNotifications/implementing-alert-push-notifications",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UserNotifications/implementing-alert-push-notifications.json",
      "module": "User Notifications",
      "modules": [
        "User Notifications"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:User Notifications"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.5",
          "name": "Xcode"
        }
      ],
      "title": "Implementing Alert Push Notifications"
    },
    {
      "abstract": "Add background notifications to your app by using the UserNotifications framework.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/UserNotifications/implementing-background-push-notifications",
      "doc_url": "https://developer.apple.com/documentation/UserNotifications/implementing-background-push-notifications",
      "download": {
        "filename": "ImplementingBackgroundPushNotifications.zip",
        "identifier": "2b48f9eb996c/ImplementingBackgroundPushNotifications.zip",
        "url": "https://docs-assets.developer.apple.com/published/2b48f9eb996c/ImplementingBackgroundPushNotifications.zip"
      },
      "id": "usernotifications/implementing-background-push-notifications",
      "identifier": "doc://com.apple.usernotifications/documentation/UserNotifications/implementing-background-push-notifications",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/UserNotifications/implementing-background-push-notifications.json",
      "module": "User Notifications",
      "modules": [
        "User Notifications"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:User Notifications"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.5",
          "name": "Xcode"
        }
      ],
      "title": "Implementing Background Push Notifications"
    },
    {
      "abstract": "Configure a compression session to encode video for live streaming.",
      "categories": [
        "Photos and video"
      ],
      "doc_path": "/documentation/VideoToolbox/encoding-video-for-live-streaming",
      "doc_url": "https://developer.apple.com/documentation/VideoToolbox/encoding-video-for-live-streaming",
      "download": {
        "filename": "EncodingVideoForLiveStreaming.zip",
        "identifier": "9f67b5d6a5c2/EncodingVideoForLiveStreaming.zip",
        "url": "https://docs-assets.developer.apple.com/published/9f67b5d6a5c2/EncodingVideoForLiveStreaming.zip"
      },
      "id": "videotoolbox/encoding-video-for-live-streaming",
      "identifier": "doc://com.apple.videotoolbox/documentation/VideoToolbox/encoding-video-for-live-streaming",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/VideoToolbox/encoding-video-for-live-streaming.json",
      "module": "Video Toolbox",
      "modules": [
        "Video Toolbox"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Video Toolbox"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Encoding video for live streaming"
    },
    {
      "abstract": "Configure a compression session to optimize encoding for video-conferencing apps.",
      "categories": [
        "Photos and video"
      ],
      "doc_path": "/documentation/VideoToolbox/encoding-video-for-low-latency-conferencing",
      "doc_url": "https://developer.apple.com/documentation/VideoToolbox/encoding-video-for-low-latency-conferencing",
      "download": {
        "filename": "EncodingVideoForLowLatencyConferencing.zip",
        "identifier": "4a70ce9af3bf/EncodingVideoForLowLatencyConferencing.zip",
        "url": "https://docs-assets.developer.apple.com/published/4a70ce9af3bf/EncodingVideoForLowLatencyConferencing.zip"
      },
      "id": "videotoolbox/encoding-video-for-low-latency-conferencing",
      "identifier": "doc://com.apple.videotoolbox/documentation/VideoToolbox/encoding-video-for-low-latency-conferencing",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/VideoToolbox/encoding-video-for-low-latency-conferencing.json",
      "module": "Video Toolbox",
      "modules": [
        "Video Toolbox"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Video Toolbox"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Encoding video for low-latency conferencing"
    },
    {
      "abstract": "Configure a compression session to transcode video in offline workflows.",
      "categories": [
        "WWDC26",
        "Photos and video"
      ],
      "doc_path": "/documentation/VideoToolbox/encoding-video-for-offline-transcoding",
      "doc_url": "https://developer.apple.com/documentation/VideoToolbox/encoding-video-for-offline-transcoding",
      "download": {
        "filename": "EncodingVideoForOfflineTranscoding.zip",
        "identifier": "bc249586dec4/EncodingVideoForOfflineTranscoding.zip",
        "url": "https://docs-assets.developer.apple.com/published/bc249586dec4/EncodingVideoForOfflineTranscoding.zip"
      },
      "id": "videotoolbox/encoding-video-for-offline-transcoding",
      "identifier": "doc://com.apple.videotoolbox/documentation/VideoToolbox/encoding-video-for-offline-transcoding",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/VideoToolbox/encoding-video-for-offline-transcoding.json",
      "module": "Video Toolbox",
      "modules": [
        "Video Toolbox"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Video Toolbox"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "macOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Encoding video for offline transcoding"
    },
    {
      "abstract": "Add powerful effects to your videos using the VideoToolbox VTFrameProcessor API.",
      "categories": [
        "WWDC26",
        "Machine learning"
      ],
      "doc_path": "/documentation/VideoToolbox/enhancing-your-app-with-machine-learning-based-video-effects",
      "doc_url": "https://developer.apple.com/documentation/VideoToolbox/enhancing-your-app-with-machine-learning-based-video-effects",
      "download": {
        "filename": "EnhancingYourAppWithMachineLearningBasedVideoEffects.zip",
        "identifier": "53819f8657ca/EnhancingYourAppWithMachineLearningBasedVideoEffects.zip",
        "url": "https://docs-assets.developer.apple.com/published/53819f8657ca/EnhancingYourAppWithMachineLearningBasedVideoEffects.zip"
      },
      "id": "videotoolbox/enhancing-your-app-with-machine-learning-based-video-effects",
      "identifier": "doc://com.apple.videotoolbox/documentation/VideoToolbox/enhancing-your-app-with-machine-learning-based-video-effects",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/VideoToolbox/enhancing-your-app-with-machine-learning-based-video-effects.json",
      "module": "Video Toolbox",
      "modules": [
        "Video Toolbox"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Updates",
        "technology-index:Video Toolbox"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "macOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Enhancing your app with machine learning-based video effects"
    },
    {
      "abstract": "Install and run GUI Linux in a virtual machine using the Virtualization framework.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/Virtualization/running-gui-linux-in-a-virtual-machine-on-a-mac",
      "doc_url": "https://developer.apple.com/documentation/Virtualization/running-gui-linux-in-a-virtual-machine-on-a-mac",
      "download": {
        "filename": "RunningGUILinuxInAVirtualMachineOnAMac.zip",
        "identifier": "e6d71f8335ab/RunningGUILinuxInAVirtualMachineOnAMac.zip",
        "url": "https://docs-assets.developer.apple.com/published/e6d71f8335ab/RunningGUILinuxInAVirtualMachineOnAMac.zip"
      },
      "id": "virtualization/running-gui-linux-in-a-virtual-machine-on-a-mac",
      "identifier": "doc://com.apple.virtualization/documentation/Virtualization/running-gui-linux-in-a-virtual-machine-on-a-mac",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Virtualization/running-gui-linux-in-a-virtual-machine-on-a-mac.json",
      "module": "Virtualization",
      "modules": [
        "Virtualization"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Virtualization"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "Running GUI Linux in a virtual machine on a Mac"
    },
    {
      "abstract": "Run a Linux operating system on your Mac using the Virtualization framework.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/Virtualization/running-linux-in-a-virtual-machine",
      "doc_url": "https://developer.apple.com/documentation/Virtualization/running-linux-in-a-virtual-machine",
      "download": {
        "filename": "RunningLinuxInAVirtualMachine.zip",
        "identifier": "f9c7c7bf5ef1/RunningLinuxInAVirtualMachine.zip",
        "url": "https://docs-assets.developer.apple.com/published/f9c7c7bf5ef1/RunningLinuxInAVirtualMachine.zip"
      },
      "id": "virtualization/running-linux-in-a-virtual-machine",
      "identifier": "doc://com.apple.virtualization/documentation/Virtualization/running-linux-in-a-virtual-machine",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Virtualization/running-linux-in-a-virtual-machine.json",
      "module": "Virtualization",
      "modules": [
        "Virtualization"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Virtualization"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "12.4",
          "name": "Xcode"
        }
      ],
      "title": "Running Linux in a Virtual Machine"
    },
    {
      "abstract": "Install and run macOS in a virtual machine using the Virtualization framework.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/Virtualization/running-macos-in-a-virtual-machine-on-apple-silicon",
      "doc_url": "https://developer.apple.com/documentation/Virtualization/running-macos-in-a-virtual-machine-on-apple-silicon",
      "download": {
        "filename": "RunningMacOSInAVirtualMachineOnAppleSilicon.zip",
        "identifier": "c8bf24264607/RunningMacOSInAVirtualMachineOnAppleSilicon.zip",
        "url": "https://docs-assets.developer.apple.com/published/c8bf24264607/RunningMacOSInAVirtualMachineOnAppleSilicon.zip"
      },
      "id": "virtualization/running-macos-in-a-virtual-machine-on-apple-silicon",
      "identifier": "doc://com.apple.virtualization/documentation/Virtualization/running-macos-in-a-virtual-machine-on-apple-silicon",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Virtualization/running-macos-in-a-virtual-machine-on-apple-silicon.json",
      "module": "Virtualization",
      "modules": [
        "Virtualization"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Virtualization"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Running macOS in a virtual machine on Apple silicon"
    },
    {
      "abstract": "Construct a composite image from images that capture the same scene.",
      "categories": [
        "Vision"
      ],
      "doc_path": "/documentation/Vision/aligning-similar-images",
      "doc_url": "https://developer.apple.com/documentation/Vision/aligning-similar-images",
      "download": {
        "filename": "AligningSimilarImages.zip",
        "identifier": "af283219b3d2/AligningSimilarImages.zip",
        "url": "https://docs-assets.developer.apple.com/published/af283219b3d2/AligningSimilarImages.zip"
      },
      "id": "vision/aligning-similar-images",
      "identifier": "doc://Vision/documentation/Vision/aligning-similar-images",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Vision/aligning-similar-images.json",
      "module": "Vision",
      "modules": [
        "Vision"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Vision"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "12.4",
          "name": "Xcode"
        }
      ],
      "title": "Aligning Similar Images"
    },
    {
      "abstract": "Calculate face-capture quality and visualize facial features for a collection of images using the Vision framework.",
      "categories": [
        "Vision"
      ],
      "doc_path": "/documentation/Vision/analyzing-a-selfie-and-visualizing-its-content",
      "doc_url": "https://developer.apple.com/documentation/Vision/analyzing-a-selfie-and-visualizing-its-content",
      "download": {
        "filename": "AnalyzingASelfieAndVisualizingItsContent.zip",
        "identifier": "747e6482a879/AnalyzingASelfieAndVisualizingItsContent.zip",
        "url": "https://docs-assets.developer.apple.com/published/747e6482a879/AnalyzingASelfieAndVisualizingItsContent.zip"
      },
      "id": "vision/analyzing-a-selfie-and-visualizing-its-content",
      "identifier": "doc://Vision/documentation/Vision/analyzing-a-selfie-and-visualizing-its-content",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Vision/analyzing-a-selfie-and-visualizing-its-content.json",
      "module": "Vision",
      "modules": [
        "Vision"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Vision"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.1",
          "name": "Xcode"
        }
      ],
      "title": "Analyzing a selfie and visualizing its content"
    },
    {
      "abstract": "Generate a feature print to compute distance between images.",
      "categories": [
        "Vision"
      ],
      "doc_path": "/documentation/Vision/analyzing-image-similarity-with-feature-print",
      "doc_url": "https://developer.apple.com/documentation/Vision/analyzing-image-similarity-with-feature-print",
      "download": {
        "filename": "AnalyzingImageSimilarityWithFeaturePrint.zip",
        "identifier": "cfefa2e36cc5/AnalyzingImageSimilarityWithFeaturePrint.zip",
        "url": "https://docs-assets.developer.apple.com/published/cfefa2e36cc5/AnalyzingImageSimilarityWithFeaturePrint.zip"
      },
      "id": "vision/analyzing-image-similarity-with-feature-print",
      "identifier": "doc://Vision/documentation/Vision/analyzing-image-similarity-with-feature-print",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Vision/analyzing-image-similarity-with-feature-print.json",
      "module": "Vision",
      "modules": [
        "Vision"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Vision"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "Xcode"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPad"
        }
      ],
      "title": "Analyzing Image Similarity with Feature Print"
    },
    {
      "abstract": "Generate image masks for people automatically by using semantic person-segmentation.",
      "categories": [
        "Vision"
      ],
      "doc_path": "/documentation/Vision/applying-matte-effects-to-people-in-images-and-video",
      "doc_url": "https://developer.apple.com/documentation/Vision/applying-matte-effects-to-people-in-images-and-video",
      "download": {
        "filename": "ApplyingMatteEffectsToPeopleInImagesAndVideo.zip",
        "identifier": "6419e39ee70c/ApplyingMatteEffectsToPeopleInImagesAndVideo.zip",
        "url": "https://docs-assets.developer.apple.com/published/6419e39ee70c/ApplyingMatteEffectsToPeopleInImagesAndVideo.zip"
      },
      "id": "vision/applying-matte-effects-to-people-in-images-and-video",
      "identifier": "doc://Vision/documentation/Vision/applying-matte-effects-to-people-in-images-and-video",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Vision/applying-matte-effects-to-people-in-images-and-video.json",
      "module": "Vision",
      "modules": [
        "Vision"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Updates",
        "technology-index:Vision"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Xcode"
        }
      ],
      "title": "Applying Matte Effects to People in Images and Video"
    },
    {
      "abstract": "Segment the foreground subjects of an image and composite them to a new background with visual effects.",
      "categories": [
        "Vision"
      ],
      "doc_path": "/documentation/Vision/applying-visual-effects-to-foreground-subjects",
      "doc_url": "https://developer.apple.com/documentation/Vision/applying-visual-effects-to-foreground-subjects",
      "download": {
        "filename": "ApplyingVisualEffectsToForegroundSubjects.zip",
        "identifier": "870d284c2b71/ApplyingVisualEffectsToForegroundSubjects.zip",
        "url": "https://docs-assets.developer.apple.com/published/870d284c2b71/ApplyingVisualEffectsToForegroundSubjects.zip"
      },
      "id": "vision/applying-visual-effects-to-foreground-subjects",
      "identifier": "doc://Vision/documentation/Vision/applying-visual-effects-to-foreground-subjects",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Vision/applying-visual-effects-to-foreground-subjects.json",
      "module": "Vision",
      "modules": [
        "Vision"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Vision"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Applying visual effects to foreground subjects"
    },
    {
      "abstract": "Detect and classify human activity in real time using computer vision and machine learning.",
      "categories": [
        "Vision"
      ],
      "doc_path": "/documentation/Vision/building-a-feature-rich-app-for-sports-analysis",
      "doc_url": "https://developer.apple.com/documentation/Vision/building-a-feature-rich-app-for-sports-analysis",
      "download": {
        "filename": "BuildingAFeatureRichAppForSportsAnalysis.zip",
        "identifier": "84b9ca3f588f/BuildingAFeatureRichAppForSportsAnalysis.zip",
        "url": "https://docs-assets.developer.apple.com/published/84b9ca3f588f/BuildingAFeatureRichAppForSportsAnalysis.zip"
      },
      "id": "vision/building-a-feature-rich-app-for-sports-analysis",
      "identifier": "doc://Vision/documentation/Vision/building-a-feature-rich-app-for-sports-analysis",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Vision/building-a-feature-rich-app-for-sports-analysis.json",
      "module": "Vision",
      "modules": [
        "Vision"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Vision"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.2",
          "name": "Xcode"
        }
      ],
      "title": "Building a feature-rich app for sports analysis"
    },
    {
      "abstract": "Analyze and label images using a Vision classification request.",
      "categories": [
        "Vision"
      ],
      "doc_path": "/documentation/Vision/classifying-images-for-categorization-and-search",
      "doc_url": "https://developer.apple.com/documentation/Vision/classifying-images-for-categorization-and-search",
      "download": {
        "filename": "ClassifyingImagesForCategorizationAndSearch.zip",
        "identifier": "9ae69e242f73/ClassifyingImagesForCategorizationAndSearch.zip",
        "url": "https://docs-assets.developer.apple.com/published/9ae69e242f73/ClassifyingImagesForCategorizationAndSearch.zip"
      },
      "id": "vision/classifying-images-for-categorization-and-search",
      "identifier": "doc://Vision/documentation/Vision/classifying-images-for-categorization-and-search",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Vision/classifying-images-for-categorization-and-search.json",
      "module": "Vision",
      "modules": [
        "Vision"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Vision"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Classifying images for categorization and search"
    },
    {
      "abstract": "Draw the skeleton of an animal by using Vision’s capability to detect animal body poses.",
      "categories": [
        "Vision"
      ],
      "doc_path": "/documentation/Vision/detecting-animal-body-poses-with-vision",
      "doc_url": "https://developer.apple.com/documentation/Vision/detecting-animal-body-poses-with-vision",
      "download": {
        "filename": "DetectingAnimalBodyPosesWithVision.zip",
        "identifier": "22ccd8a7f68a/DetectingAnimalBodyPosesWithVision.zip",
        "url": "https://docs-assets.developer.apple.com/published/22ccd8a7f68a/DetectingAnimalBodyPosesWithVision.zip"
      },
      "id": "vision/detecting-animal-body-poses-with-vision",
      "identifier": "doc://Vision/documentation/Vision/detecting-animal-body-poses-with-vision",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Vision/detecting-animal-body-poses-with-vision.json",
      "module": "Vision",
      "modules": [
        "Vision"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Vision"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Detecting animal body poses with Vision"
    },
    {
      "abstract": "Create a virtual drawing app by using Vision’s capability to detect hand poses.",
      "categories": [
        "Vision"
      ],
      "doc_path": "/documentation/Vision/detecting-hand-poses-with-vision",
      "doc_url": "https://developer.apple.com/documentation/Vision/detecting-hand-poses-with-vision",
      "download": {
        "filename": "DetectingHandPosesWithVision.zip",
        "identifier": "063d51b92f5a/DetectingHandPosesWithVision.zip",
        "url": "https://docs-assets.developer.apple.com/published/063d51b92f5a/DetectingHandPosesWithVision.zip"
      },
      "id": "vision/detecting-hand-poses-with-vision",
      "identifier": "doc://Vision/documentation/Vision/detecting-hand-poses-with-vision",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Vision/detecting-hand-poses-with-vision.json",
      "module": "Vision",
      "modules": [
        "Vision"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Vision"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Xcode"
        }
      ],
      "title": "Detecting Hand Poses with Vision"
    },
    {
      "abstract": "Render skeletons of 3D body pose points in a scene overlaying the input image.",
      "categories": [
        "Vision"
      ],
      "doc_path": "/documentation/Vision/detecting-human-body-poses-in-3d-with-vision",
      "doc_url": "https://developer.apple.com/documentation/Vision/detecting-human-body-poses-in-3d-with-vision",
      "download": {
        "filename": "DetectingHumanBodyPosesIn3DWithVision.zip",
        "identifier": "cb0e196fda04/DetectingHumanBodyPosesIn3DWithVision.zip",
        "url": "https://docs-assets.developer.apple.com/published/cb0e196fda04/DetectingHumanBodyPosesIn3DWithVision.zip"
      },
      "id": "vision/detecting-human-body-poses-in-3d-with-vision",
      "identifier": "doc://Vision/documentation/Vision/detecting-human-body-poses-in-3d-with-vision",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Vision/detecting-human-body-poses-in-3d-with-vision.json",
      "module": "Vision",
      "modules": [
        "Vision"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Vision"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Detecting human body poses in 3D with Vision"
    },
    {
      "abstract": "Identify the trajectory of a thrown object by using Vision.",
      "categories": [
        "Vision"
      ],
      "doc_path": "/documentation/Vision/detecting-moving-objects-in-a-video",
      "doc_url": "https://developer.apple.com/documentation/Vision/detecting-moving-objects-in-a-video",
      "download": {
        "filename": "DetectingMovingObjectsInAVideo.zip",
        "identifier": "e400315bb1f0/DetectingMovingObjectsInAVideo.zip",
        "url": "https://docs-assets.developer.apple.com/published/e400315bb1f0/DetectingMovingObjectsInAVideo.zip"
      },
      "id": "vision/detecting-moving-objects-in-a-video",
      "identifier": "doc://Vision/documentation/Vision/detecting-moving-objects-in-a-video",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Vision/detecting-moving-objects-in-a-video.json",
      "module": "Vision",
      "modules": [
        "Vision"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Vision"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.1",
          "name": "Xcode"
        }
      ],
      "title": "Detecting moving objects in a video"
    },
    {
      "abstract": "Locate and demarcate rectangles, faces, barcodes, and text in images using the Vision framework.",
      "categories": [
        "Vision"
      ],
      "doc_path": "/documentation/Vision/detecting-objects-in-still-images",
      "doc_url": "https://developer.apple.com/documentation/Vision/detecting-objects-in-still-images",
      "download": {
        "filename": "DetectingObjectsInStillImages.zip",
        "identifier": "b2d10dc7f8ea/DetectingObjectsInStillImages.zip",
        "url": "https://docs-assets.developer.apple.com/published/b2d10dc7f8ea/DetectingObjectsInStillImages.zip"
      },
      "id": "vision/detecting-objects-in-still-images",
      "identifier": "doc://Vision/documentation/Vision/detecting-objects-in-still-images",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Vision/detecting-objects-in-still-images.json",
      "module": "Vision",
      "modules": [
        "Vision"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Vision"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "11.3",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "11.3",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "11.3",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.3",
          "name": "Xcode"
        }
      ],
      "title": "Detecting Objects in Still Images"
    },
    {
      "abstract": "Analyze and filter phone numbers from text in live capture by using Vision.",
      "categories": [
        "Vision"
      ],
      "doc_path": "/documentation/Vision/extracting-phone-numbers-from-text-in-images",
      "doc_url": "https://developer.apple.com/documentation/Vision/extracting-phone-numbers-from-text-in-images",
      "download": {
        "filename": "ExtractingPhoneNumbersFromTextInImages.zip",
        "identifier": "4272b4b6f36d/ExtractingPhoneNumbersFromTextInImages.zip",
        "url": "https://docs-assets.developer.apple.com/published/4272b4b6f36d/ExtractingPhoneNumbersFromTextInImages.zip"
      },
      "id": "vision/extracting-phone-numbers-from-text-in-images",
      "identifier": "doc://Vision/documentation/Vision/extracting-phone-numbers-from-text-in-images",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Vision/extracting-phone-numbers-from-text-in-images.json",
      "module": "Vision",
      "modules": [
        "Vision"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Vision"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.2",
          "name": "Xcode"
        }
      ],
      "title": "Extracting phone numbers from text in images"
    },
    {
      "abstract": "Identify the most visually pleasing frames in a video by using the image-aesthetics scores request.",
      "categories": [
        "Vision"
      ],
      "doc_path": "/documentation/Vision/generating-thumbnails-from-videos",
      "doc_url": "https://developer.apple.com/documentation/Vision/generating-thumbnails-from-videos",
      "download": {
        "filename": "GeneratingHighQualityThumbnailsFromVideos.zip",
        "identifier": "b503c5875476/GeneratingHighQualityThumbnailsFromVideos.zip",
        "url": "https://docs-assets.developer.apple.com/published/b503c5875476/GeneratingHighQualityThumbnailsFromVideos.zip"
      },
      "id": "vision/generating-thumbnails-from-videos",
      "identifier": "doc://Vision/documentation/Vision/generating-thumbnails-from-videos",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Vision/generating-thumbnails-from-videos.json",
      "module": "Vision",
      "modules": [
        "Vision"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Vision"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Generating high-quality thumbnails from videos"
    },
    {
      "abstract": "Quantify and visualize where people are likely to look in an image.",
      "categories": [
        "Vision"
      ],
      "doc_path": "/documentation/Vision/highlighting-areas-of-interest-in-an-image-using-saliency",
      "doc_url": "https://developer.apple.com/documentation/Vision/highlighting-areas-of-interest-in-an-image-using-saliency",
      "download": {
        "filename": "HighlightingAreasOfInterestInAnImageUsingSaliency.zip",
        "identifier": "fd1b32ea151d/HighlightingAreasOfInterestInAnImageUsingSaliency.zip",
        "url": "https://docs-assets.developer.apple.com/published/fd1b32ea151d/HighlightingAreasOfInterestInAnImageUsingSaliency.zip"
      },
      "id": "vision/highlighting-areas-of-interest-in-an-image-using-saliency",
      "identifier": "doc://Vision/documentation/Vision/highlighting-areas-of-interest-in-an-image-using-saliency",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Vision/highlighting-areas-of-interest-in-an-image-using-saliency.json",
      "module": "Vision",
      "modules": [
        "Vision"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Vision"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "Xcode"
        }
      ],
      "title": "Highlighting Areas of Interest in an Image Using Saliency"
    },
    {
      "abstract": "Crop regions most likely drawing people’s attention from an image in your iOS or watchOS app.",
      "categories": [
        "WWDC26"
      ],
      "doc_path": "/documentation/Vision/implementing-saliency-based-image-cropping-in-iOS-and-watchOS",
      "doc_url": "https://developer.apple.com/documentation/Vision/implementing-saliency-based-image-cropping-in-iOS-and-watchOS",
      "download": {
        "filename": "ImplementingSaliencyBasedImageCroppingInIOSAndWatchOS.zip",
        "identifier": "6bca173a2580/ImplementingSaliencyBasedImageCroppingInIOSAndWatchOS.zip",
        "url": "https://docs-assets.developer.apple.com/published/6bca173a2580/ImplementingSaliencyBasedImageCroppingInIOSAndWatchOS.zip"
      },
      "id": "vision/implementing-saliency-based-image-cropping-in-ios-and-watchos",
      "identifier": "doc://Vision/documentation/Vision/implementing-saliency-based-image-cropping-in-iOS-and-watchOS",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Vision/implementing-saliency-based-image-cropping-in-iOS-and-watchOS.json",
      "module": "Vision",
      "modules": [
        "Vision"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Vision"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iPadOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "watchOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Implementing saliency-based image cropping in iOS and watchOS"
    },
    {
      "abstract": "Perform text recognition on a photo using the Vision framework’s text-recognition request.",
      "categories": [
        "Vision"
      ],
      "doc_path": "/documentation/Vision/locating-and-displaying-recognized-text",
      "doc_url": "https://developer.apple.com/documentation/Vision/locating-and-displaying-recognized-text",
      "download": {
        "filename": "LocatingAndDisplayingRecognizedText.zip",
        "identifier": "d57318ba9233/LocatingAndDisplayingRecognizedText.zip",
        "url": "https://docs-assets.developer.apple.com/published/d57318ba9233/LocatingAndDisplayingRecognizedText.zip"
      },
      "id": "vision/locating-and-displaying-recognized-text",
      "identifier": "doc://Vision/documentation/Vision/locating-and-displaying-recognized-text",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Vision/locating-and-displaying-recognized-text.json",
      "module": "Vision",
      "modules": [
        "Vision"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Vision"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Locating and displaying recognized text"
    },
    {
      "abstract": "Scan a document that contains a table and extract its content in a formatted way.",
      "categories": [
        "Machine learning"
      ],
      "doc_path": "/documentation/Vision/recognize-tables-within-a-document",
      "doc_url": "https://developer.apple.com/documentation/Vision/recognize-tables-within-a-document",
      "download": {
        "filename": "RecognizingTablesWithinADocument.zip",
        "identifier": "10be707a889d/RecognizingTablesWithinADocument.zip",
        "url": "https://docs-assets.developer.apple.com/published/10be707a889d/RecognizingTablesWithinADocument.zip"
      },
      "id": "vision/recognize-tables-within-a-document",
      "identifier": "doc://Vision/documentation/Vision/recognize-tables-within-a-document",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Vision/recognize-tables-within-a-document.json",
      "module": "Vision",
      "modules": [
        "Vision"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Updates",
        "technology-index:Vision"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Recognizing tables within a document"
    },
    {
      "abstract": "Apply Vision algorithms to identify objects in real-time video.",
      "categories": [
        "Vision"
      ],
      "doc_path": "/documentation/Vision/recognizing-objects-in-live-capture",
      "doc_url": "https://developer.apple.com/documentation/Vision/recognizing-objects-in-live-capture",
      "download": {
        "filename": "RecognizingObjectsInLiveCapture.zip",
        "identifier": "4b9f61bcb221/RecognizingObjectsInLiveCapture.zip",
        "url": "https://docs-assets.developer.apple.com/published/4b9f61bcb221/RecognizingObjectsInLiveCapture.zip"
      },
      "id": "vision/recognizing-objects-in-live-capture",
      "identifier": "doc://Vision/documentation/Vision/recognizing-objects-in-live-capture",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Vision/recognizing-objects-in-live-capture.json",
      "module": "Vision",
      "modules": [
        "Vision"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Vision"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.3",
          "name": "Xcode"
        }
      ],
      "title": "Recognizing Objects in Live Capture"
    },
    {
      "abstract": "Use the Vision framework to isolate and apply colors to people in an image.",
      "categories": [
        "Vision"
      ],
      "doc_path": "/documentation/Vision/segmenting-and-colorizing-individuals-from-a-surrounding-scene",
      "doc_url": "https://developer.apple.com/documentation/Vision/segmenting-and-colorizing-individuals-from-a-surrounding-scene",
      "download": {
        "filename": "SegmentingAndColorizingIndividualsFromASurroundingScene.zip",
        "identifier": "fdeca3335032/SegmentingAndColorizingIndividualsFromASurroundingScene.zip",
        "url": "https://docs-assets.developer.apple.com/published/fdeca3335032/SegmentingAndColorizingIndividualsFromASurroundingScene.zip"
      },
      "id": "vision/segmenting-and-colorizing-individuals-from-a-surrounding-scene",
      "identifier": "doc://Vision/documentation/Vision/segmenting-and-colorizing-individuals-from-a-surrounding-scene",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Vision/segmenting-and-colorizing-individuals-from-a-surrounding-scene.json",
      "module": "Vision",
      "modules": [
        "Vision"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Vision"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.1",
          "name": "Xcode"
        }
      ],
      "title": "Segmenting and colorizing individuals from a surrounding scene"
    },
    {
      "abstract": "Select objects or regions in a photo using taps, scribbles, or rectangle selection, and generate a segmentation mask using the iterative segmentation API.",
      "categories": [
        "WWDC26"
      ],
      "doc_path": "/documentation/Vision/segmenting-objects-using-taps-scribbles-or-rectangles",
      "doc_url": "https://developer.apple.com/documentation/Vision/segmenting-objects-using-taps-scribbles-or-rectangles",
      "download": {
        "filename": "SegmentingObjectsUsingTapsScribblesOrRectangles.zip",
        "identifier": "a5070681a498/SegmentingObjectsUsingTapsScribblesOrRectangles.zip",
        "url": "https://docs-assets.developer.apple.com/published/a5070681a498/SegmentingObjectsUsingTapsScribblesOrRectangles.zip"
      },
      "id": "vision/segmenting-objects-using-taps-scribbles-or-rectangles",
      "identifier": "doc://Vision/documentation/Vision/segmenting-objects-using-taps-scribbles-or-rectangles",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Vision/segmenting-objects-using-taps-scribbles-or-rectangles.json",
      "module": "Vision",
      "modules": [
        "Vision"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Vision"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "iPadOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "macOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "visionOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Segmenting objects using taps, scribbles or rectangles"
    },
    {
      "abstract": "Compare face-capture quality in a set of images by using Vision.",
      "categories": [
        "Vision"
      ],
      "doc_path": "/documentation/Vision/selecting-a-selfie-based-on-capture-quality",
      "doc_url": "https://developer.apple.com/documentation/Vision/selecting-a-selfie-based-on-capture-quality",
      "download": {
        "filename": "SelectingASelfieBasedOnCaptureQuality.zip",
        "identifier": "1a22def1b6eb/SelectingASelfieBasedOnCaptureQuality.zip",
        "url": "https://docs-assets.developer.apple.com/published/1a22def1b6eb/SelectingASelfieBasedOnCaptureQuality.zip"
      },
      "id": "vision/selecting-a-selfie-based-on-capture-quality",
      "identifier": "doc://Vision/documentation/Vision/selecting-a-selfie-based-on-capture-quality",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Vision/selecting-a-selfie-based-on-capture-quality.json",
      "module": "Vision",
      "modules": [
        "Vision"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Vision"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.2",
          "name": "Xcode"
        }
      ],
      "title": "Selecting a selfie based on capture quality"
    },
    {
      "abstract": "Apply Vision algorithms to track objects or rectangles throughout a video.",
      "categories": [
        "Vision"
      ],
      "doc_path": "/documentation/Vision/tracking-multiple-objects-or-rectangles-in-video",
      "doc_url": "https://developer.apple.com/documentation/Vision/tracking-multiple-objects-or-rectangles-in-video",
      "download": {
        "filename": "TrackingMultipleObjectsOrRectanglesInVideo.zip",
        "identifier": "913130aaf0ea/TrackingMultipleObjectsOrRectanglesInVideo.zip",
        "url": "https://docs-assets.developer.apple.com/published/913130aaf0ea/TrackingMultipleObjectsOrRectanglesInVideo.zip"
      },
      "id": "vision/tracking-multiple-objects-or-rectangles-in-video",
      "identifier": "doc://Vision/documentation/Vision/tracking-multiple-objects-or-rectangles-in-video",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Vision/tracking-multiple-objects-or-rectangles-in-video.json",
      "module": "Vision",
      "modules": [
        "Vision"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Vision"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.3",
          "name": "Xcode"
        }
      ],
      "title": "Tracking Multiple Objects or Rectangles in Video"
    },
    {
      "abstract": "Detect and track faces from the selfie cam feed in real time.",
      "categories": [
        "Vision"
      ],
      "doc_path": "/documentation/Vision/tracking-the-user-s-face-in-real-time",
      "doc_url": "https://developer.apple.com/documentation/Vision/tracking-the-user-s-face-in-real-time",
      "download": {
        "filename": "TrackingTheUsersFaceInRealTime.zip",
        "identifier": "16781da1bbec/TrackingTheUsersFaceInRealTime.zip",
        "url": "https://docs-assets.developer.apple.com/published/16781da1bbec/TrackingTheUsersFaceInRealTime.zip"
      },
      "id": "vision/tracking-the-user-s-face-in-real-time",
      "identifier": "doc://Vision/documentation/Vision/tracking-the-user-s-face-in-real-time",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Vision/tracking-the-user-s-face-in-real-time.json",
      "module": "Vision",
      "modules": [
        "Vision"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Vision"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.3",
          "name": "Xcode"
        }
      ],
      "title": "Tracking the User’s Face in Real Time"
    },
    {
      "abstract": "Train a flower classifier using Create ML in Swift Playgrounds, and apply the resulting model to real-time image classification using Vision.",
      "categories": [
        "Vision"
      ],
      "doc_path": "/documentation/Vision/training-a-create-ml-model-to-classify-flowers",
      "doc_url": "https://developer.apple.com/documentation/Vision/training-a-create-ml-model-to-classify-flowers",
      "download": {
        "filename": "TrainingACreateMLModelToClassifyFlowers.zip",
        "identifier": "9050e3bd4a2b/TrainingACreateMLModelToClassifyFlowers.zip",
        "url": "https://docs-assets.developer.apple.com/published/9050e3bd4a2b/TrainingACreateMLModelToClassifyFlowers.zip"
      },
      "id": "vision/training-a-create-ml-model-to-classify-flowers",
      "identifier": "doc://Vision/documentation/Vision/training-a-create-ml-model-to-classify-flowers",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Vision/training-a-create-ml-model-to-classify-flowers.json",
      "module": "Vision",
      "modules": [
        "Vision"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Vision"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.3",
          "name": "Xcode"
        }
      ],
      "title": "Training a Create ML Model to Classify Flowers"
    },
    {
      "abstract": "Detect, recognize, and structure text on a business card or receipt using Vision and VisionKit.",
      "categories": [
        "Photos and video"
      ],
      "doc_path": "/documentation/VisionKit/structuring-recognized-text-on-a-document",
      "doc_url": "https://developer.apple.com/documentation/VisionKit/structuring-recognized-text-on-a-document",
      "download": {
        "filename": "StructuringRecognizedTextOnADocument.zip",
        "identifier": "c5c850bf6ab8/StructuringRecognizedTextOnADocument.zip",
        "url": "https://docs-assets.developer.apple.com/published/c5c850bf6ab8/StructuringRecognizedTextOnADocument.zip"
      },
      "id": "visionkit/structuring-recognized-text-on-a-document",
      "identifier": "doc://com.apple.VisionKit/documentation/VisionKit/structuring-recognized-text-on-a-document",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/VisionKit/structuring-recognized-text-on-a-document.json",
      "module": "VisionKit",
      "modules": [
        "VisionKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Vision",
        "technology-index:VisionKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.3",
          "name": "Xcode"
        }
      ],
      "title": "Structuring recognized text on a document"
    },
    {
      "abstract": "Add camera-based features to enterprise apps.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/accessing-the-main-camera",
      "doc_url": "https://developer.apple.com/documentation/visionOS/accessing-the-main-camera",
      "download": {
        "filename": "AccessingTheMainCamera.zip",
        "identifier": "8255574a641d/AccessingTheMainCamera.zip",
        "url": "https://docs-assets.developer.apple.com/published/8255574a641d/AccessingTheMainCamera.zip"
      },
      "id": "visionos/accessing-the-main-camera",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/accessing-the-main-camera",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/accessing-the-main-camera.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Accessing the main camera"
    },
    {
      "abstract": "Create text that expands out of a window using stacked SwiftUI text views.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/adding-a-depth-effect-to-text-in-visionOS",
      "doc_url": "https://developer.apple.com/documentation/visionOS/adding-a-depth-effect-to-text-in-visionOS",
      "download": {
        "filename": "AddingADepthEffectToTextInVisionOS.zip",
        "identifier": "dd2db0b42cec/AddingADepthEffectToTextInVisionOS.zip",
        "url": "https://docs-assets.developer.apple.com/published/dd2db0b42cec/AddingADepthEffectToTextInVisionOS.zip"
      },
      "id": "visionos/adding-a-depth-effect-to-text-in-visionos",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/adding-a-depth-effect-to-text-in-visionOS",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/adding-a-depth-effect-to-text-in-visionOS.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Adding a depth effect to text in visionOS"
    },
    {
      "abstract": "Substitute a person’s hands with custom models in a fully immersive space.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/animating-hand-models-in-visionOS",
      "doc_url": "https://developer.apple.com/documentation/visionOS/animating-hand-models-in-visionOS",
      "download": {
        "filename": "AnimatingHandModelsInVisionOS.zip",
        "identifier": "a613945c96a8/AnimatingHandModelsInVisionOS.zip",
        "url": "https://docs-assets.developer.apple.com/published/a613945c96a8/AnimatingHandModelsInVisionOS.zip"
      },
      "id": "visionos/animating-hand-models-in-visionos",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/animating-hand-models-in-visionOS",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/animating-hand-models-in-visionOS.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Animating hand models in visionOS"
    },
    {
      "abstract": "Add a layer of mesh to objects in the real world, using scene reconstruction in ARKit.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/applying-mesh-to-real-world-surroundings",
      "doc_url": "https://developer.apple.com/documentation/visionOS/applying-mesh-to-real-world-surroundings",
      "download": {
        "filename": "ApplyingMeshToRealWorldSurroundings.zip",
        "identifier": "f97546eebe73/ApplyingMeshToRealWorldSurroundings.zip",
        "url": "https://docs-assets.developer.apple.com/published/f97546eebe73/ApplyingMeshToRealWorldSurroundings.zip"
      },
      "id": "visionos/applying-mesh-to-real-world-surroundings",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/applying-mesh-to-real-world-surroundings",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/applying-mesh-to-real-world-surroundings.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Applying mesh to real-world surroundings"
    },
    {
      "abstract": "Tightly couple a window with an immersive space for persistent controls.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/associating-a-window-with-an-immersive-space",
      "doc_url": "https://developer.apple.com/documentation/visionOS/associating-a-window-with-an-immersive-space",
      "download": {
        "filename": "AssociatingAWindowWithAnImmersiveSpace.zip",
        "identifier": "23edf9072f98/AssociatingAWindowWithAnImmersiveSpace.zip",
        "url": "https://docs-assets.developer.apple.com/published/23edf9072f98/AssociatingAWindowWithAnImmersiveSpace.zip"
      },
      "id": "visionos/associating-a-window-with-an-immersive-space",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/associating-a-window-with-an-immersive-space",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/associating-a-window-with-an-immersive-space.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Associating a window with an immersive space"
    },
    {
      "abstract": "Build a multiplatform app that uses windows, volumes, and animations to create a robot botanist’s greenhouse.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/BOT-anist",
      "doc_url": "https://developer.apple.com/documentation/visionOS/BOT-anist",
      "download": {
        "filename": "BOTAnist.zip",
        "identifier": "2d3da0847265/BOTAnist.zip",
        "url": "https://docs-assets.developer.apple.com/published/2d3da0847265/BOTAnist.zip"
      },
      "id": "visionos/bot-anist",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/BOT-anist",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/BOT-anist.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "BOT-anist"
    },
    {
      "abstract": "Add a deeper level of immersion to media playback in your app with RealityKit and Reality Composer Pro.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/building-an-immersive-media-viewing-experience",
      "doc_url": "https://developer.apple.com/documentation/visionOS/building-an-immersive-media-viewing-experience",
      "download": {
        "filename": "DestinationVideo.zip",
        "identifier": "3248dcf174b4/DestinationVideo.zip",
        "url": "https://docs-assets.developer.apple.com/published/3248dcf174b4/DestinationVideo.zip"
      },
      "id": "visionos/building-an-immersive-media-viewing-experience",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/building-an-immersive-media-viewing-experience",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/building-an-immersive-media-viewing-experience.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Building an immersive media viewing experience"
    },
    {
      "abstract": "Use room tracking in visionOS to provide custom interactions with physical spaces.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/building-local-experiences-with-room-tracking",
      "doc_url": "https://developer.apple.com/documentation/visionOS/building-local-experiences-with-room-tracking",
      "download": {
        "filename": "BuildingLocalExperiencesWithRoomTracking.zip",
        "identifier": "f17410c23eca/BuildingLocalExperiencesWithRoomTracking.zip",
        "url": "https://docs-assets.developer.apple.com/published/f17410c23eca/BuildingLocalExperiencesWithRoomTracking.zip"
      },
      "id": "visionos/building-local-experiences-with-room-tracking",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/building-local-experiences-with-room-tracking",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/building-local-experiences-with-room-tracking.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Building local experiences with room tracking"
    },
    {
      "abstract": "Create a hike planning app using SwiftUI and RealityKit.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/canyon-crosser-building-a-volumetric-hike-planning-app",
      "doc_url": "https://developer.apple.com/documentation/visionOS/canyon-crosser-building-a-volumetric-hike-planning-app",
      "download": {
        "filename": "CanyonCrosser.zip",
        "identifier": "1f9ab812f406/CanyonCrosser.zip",
        "url": "https://docs-assets.developer.apple.com/published/1f9ab812f406/CanyonCrosser.zip"
      },
      "id": "visionos/canyon-crosser-building-a-volumetric-hike-planning-app",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/canyon-crosser-building-a-volumetric-hike-planning-app",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/canyon-crosser-building-a-volumetric-hike-planning-app.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Canyon Crosser: Building a volumetric hike-planning app"
    },
    {
      "abstract": "Create an adventure game using SwiftUI, RealityKit, and Reality Composer Pro 3.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/chaparral-village-building-an-immersive-visionos-adventure-game",
      "doc_url": "https://developer.apple.com/documentation/visionOS/chaparral-village-building-an-immersive-visionos-adventure-game",
      "download": {
        "filename": "ChaparralVillageBuildingAnImmersiveVisionOSAdventureGame.dmg",
        "identifier": "https://developer.apple.com/services-account/download?path=/Developer_Tools/DevPubs_ChaparralVillageBuilding/ChaparralVillageBuildingAnImmersiveVisionOSAdventureGame.dmg",
        "url": "https://developer.apple.com/services-account/download?path=/Developer_Tools/DevPubs_ChaparralVillageBuilding/ChaparralVillageBuildingAnImmersiveVisionOSAdventureGame.dmg"
      },
      "id": "visionos/chaparral-village-building-an-immersive-visionos-adventure-game",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/chaparral-village-building-an-immersive-visionos-adventure-game",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/chaparral-village-building-an-immersive-visionos-adventure-game.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "visionOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Chaparral Village: Building an immersive visionOS adventure game"
    },
    {
      "abstract": "Build an iPadOS companion app to control your visionOS app.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/connecting-ipados-and-visionos-apps-over-the-local-network",
      "doc_url": "https://developer.apple.com/documentation/visionOS/connecting-ipados-and-visionos-apps-over-the-local-network",
      "download": {
        "filename": "ConnectingIPadOSAndVisionOSAppsOverTheLocalNetwork.zip",
        "identifier": "31f58137b320/ConnectingIPadOSAndVisionOSAppsOverTheLocalNetwork.zip",
        "url": "https://docs-assets.developer.apple.com/published/31f58137b320/ConnectingIPadOSAndVisionOSAppsOverTheLocalNetwork.zip"
      },
      "id": "visionos/connecting-ipados-and-visionos-apps-over-the-local-network",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/connecting-ipados-and-visionos-apps-over-the-local-network",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/connecting-ipados-and-visionos-apps-over-the-local-network.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Network",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Connecting iPadOS and visionOS apps over the local network"
    },
    {
      "abstract": "Draw two-dimensional shapes in your visionOS app with SwiftUI shapes or with your custom shapes.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/creating-2d-shapes-in-visionos-with-swiftui",
      "doc_url": "https://developer.apple.com/documentation/visionOS/creating-2d-shapes-in-visionos-with-swiftui",
      "download": {
        "filename": "Creating2DShapesInVisionOSWithSwiftUI.zip",
        "identifier": "5d97d949da4b/Creating2DShapesInVisionOSWithSwiftUI.zip",
        "url": "https://docs-assets.developer.apple.com/published/5d97d949da4b/Creating2DShapesInVisionOSWithSwiftUI.zip"
      },
      "id": "visionos/creating-2d-shapes-in-visionos-with-swiftui",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/creating-2d-shapes-in-visionos-with-swiftui",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/creating-2d-shapes-in-visionos-with-swiftui.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating 2D shapes with SwiftUI"
    },
    {
      "abstract": "Display a horizontal row of three-dimensional shapes in your visionOS app, using predefined mesh and white material.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/creating-3d-entities-with-realitykit",
      "doc_url": "https://developer.apple.com/documentation/visionOS/creating-3d-entities-with-realitykit",
      "download": {
        "filename": "Creating3DEntitiesInVisionOSWithRealityKit.zip",
        "identifier": "eca86063e133/Creating3DEntitiesInVisionOSWithRealityKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/eca86063e133/Creating3DEntitiesInVisionOSWithRealityKit.zip"
      },
      "id": "visionos/creating-3d-entities-with-realitykit",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/creating-3d-entities-with-realitykit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/creating-3d-entities-with-realitykit.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating 3D entities with RealityKit"
    },
    {
      "abstract": "Display and manage multiple SwiftUI windows in your visionOS app.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/creating-a-new-swiftui-window-in-visionos",
      "doc_url": "https://developer.apple.com/documentation/visionOS/creating-a-new-swiftui-window-in-visionos",
      "download": {
        "filename": "CreatingANewSwiftUIWindowViewInVisionOS.zip",
        "identifier": "5375dccbb927/CreatingANewSwiftUIWindowViewInVisionOS.zip",
        "url": "https://docs-assets.developer.apple.com/published/5375dccbb927/CreatingANewSwiftUIWindowViewInVisionOS.zip"
      },
      "id": "visionos/creating-a-new-swiftui-window-in-visionos",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/creating-a-new-swiftui-window-in-visionos",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/creating-a-new-swiftui-window-in-visionos.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating SwiftUI windows in visionOS"
    },
    {
      "abstract": "Implement a painting canvas entity, and update its mesh to represent a stroke.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/creating-a-painting-space-in-visionos",
      "doc_url": "https://developer.apple.com/documentation/visionOS/creating-a-painting-space-in-visionos",
      "download": {
        "filename": "CreatingA3DPaintingSpaceInVisionOS.zip",
        "identifier": "60df4e5a8126/CreatingA3DPaintingSpaceInVisionOS.zip",
        "url": "https://docs-assets.developer.apple.com/published/60df4e5a8126/CreatingA3DPaintingSpaceInVisionOS.zip"
      },
      "id": "visionos/creating-a-painting-space-in-visionos",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/creating-a-painting-space-in-visionos",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/creating-a-painting-space-in-visionos.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating a 3D painting space"
    },
    {
      "abstract": "Display 3D content with a volumetric window that people can move.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/creating-a-volumetric-window-in-visionos",
      "doc_url": "https://developer.apple.com/documentation/visionOS/creating-a-volumetric-window-in-visionos",
      "download": {
        "filename": "CreatingAVolumetricWindowInVisionOS.zip",
        "identifier": "92430dc8f42e/CreatingAVolumetricWindowInVisionOS.zip",
        "url": "https://docs-assets.developer.apple.com/published/92430dc8f42e/CreatingAVolumetricWindowInVisionOS.zip"
      },
      "id": "visionos/creating-a-volumetric-window-in-visionos",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/creating-a-volumetric-window-in-visionos",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/creating-a-volumetric-window-in-visionos.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating 3D models as movable windows"
    },
    {
      "abstract": "Display an interactive car model using gestures in a reality view.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/creating-an-interactable-3d-model-in-visionos",
      "doc_url": "https://developer.apple.com/documentation/visionOS/creating-an-interactable-3d-model-in-visionos",
      "download": {
        "filename": "CreatingA3DModelWithGesturesInVisionOS.zip",
        "identifier": "7b5bc90de8c3/CreatingA3DModelWithGesturesInVisionOS.zip",
        "url": "https://docs-assets.developer.apple.com/published/7b5bc90de8c3/CreatingA3DModelWithGesturesInVisionOS.zip"
      },
      "id": "visionos/creating-an-interactable-3d-model-in-visionos",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/creating-an-interactable-3d-model-in-visionos",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/creating-an-interactable-3d-model-in-visionos.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating an interactive 3D model in visionOS"
    },
    {
      "abstract": "Enhance your visionOS app by adding an immersive space using RealityKit.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/creating-immersive-spaces-in-visionos-with-swiftui",
      "doc_url": "https://developer.apple.com/documentation/visionOS/creating-immersive-spaces-in-visionos-with-swiftui",
      "download": {
        "filename": "CreatingImmersiveSpacesInVisionOSWithSwiftUI.zip",
        "identifier": "66347c531199/CreatingImmersiveSpacesInVisionOSWithSwiftUI.zip",
        "url": "https://docs-assets.developer.apple.com/published/66347c531199/CreatingImmersiveSpacesInVisionOSWithSwiftUI.zip"
      },
      "id": "visionos/creating-immersive-spaces-in-visionos-with-swiftui",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/creating-immersive-spaces-in-visionos-with-swiftui",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/creating-immersive-spaces-in-visionos-with-swiftui.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Creating an immersive space in visionOS"
    },
    {
      "abstract": "Build a video game in Reality Composer Pro without code using Script Graphs.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/designing-no-code-games-in-reality-composer-pro-3",
      "doc_url": "https://developer.apple.com/documentation/visionOS/designing-no-code-games-in-reality-composer-pro-3",
      "download": {
        "filename": "DesigningNoCodeGamesWithRealityComposerPro3.zip",
        "identifier": "3e8c676aeb86/DesigningNoCodeGamesWithRealityComposerPro3.zip",
        "url": "https://docs-assets.developer.apple.com/published/3e8c676aeb86/DesigningNoCodeGamesWithRealityComposerPro3.zip"
      },
      "id": "visionos/designing-no-code-games-in-reality-composer-pro-3",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/designing-no-code-games-in-reality-composer-pro-3",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/designing-no-code-games-in-reality-composer-pro-3.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "visionOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Designing no-code games with Reality Composer Pro 3"
    },
    {
      "abstract": "Leverage SwiftUI to build an immersive media experience in a multiplatform app.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/destination-video",
      "doc_url": "https://developer.apple.com/documentation/visionOS/destination-video",
      "download": {
        "filename": "DestinationVideo.zip",
        "identifier": "3248dcf174b4/DestinationVideo.zip",
        "url": "https://docs-assets.developer.apple.com/published/3248dcf174b4/DestinationVideo.zip"
      },
      "id": "visionos/destination-video",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/destination-video",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/destination-video.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AVFoundation",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "tvOS"
        },
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Destination Video"
    },
    {
      "abstract": "Design scenes for your visionOS app using Reality Composer Pro.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/diorama",
      "doc_url": "https://developer.apple.com/documentation/visionOS/diorama",
      "download": {
        "filename": "Diorama.zip",
        "identifier": "f60567d1cc7d/Diorama.zip",
        "url": "https://docs-assets.developer.apple.com/published/f60567d1cc7d/Diorama.zip"
      },
      "id": "visionos/diorama",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/diorama",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/diorama.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.1",
          "name": "Xcode"
        }
      ],
      "title": "Diorama"
    },
    {
      "abstract": "Implement a portal window that displays a 3D environment and simulates entering a portal by using RealityKit.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/displaying-a-3D-environment-through-a-portal",
      "doc_url": "https://developer.apple.com/documentation/visionOS/displaying-a-3D-environment-through-a-portal",
      "download": {
        "filename": "DisplayingA3DEnvironmentThroughAPortal.zip",
        "identifier": "226956929acc/DisplayingA3DEnvironmentThroughAPortal.zip",
        "url": "https://docs-assets.developer.apple.com/published/226956929acc/DisplayingA3DEnvironmentThroughAPortal.zip"
      },
      "id": "visionos/displaying-a-3d-environment-through-a-portal",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/displaying-a-3D-environment-through-a-portal",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/displaying-a-3D-environment-through-a-portal.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Displaying a 3D environment through a portal"
    },
    {
      "abstract": "Create an entity that tracks and follows head movement in an immersive scene.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/displaying-a-3D-object-that-moves-to-stay-in-a-person's-view",
      "doc_url": "https://developer.apple.com/documentation/visionOS/displaying-a-3D-object-that-moves-to-stay-in-a-person's-view",
      "download": {
        "filename": "DisplayingA3DObjectThatMovesToStayInAPersonsView.zip",
        "identifier": "55e1c3199fc3/DisplayingA3DObjectThatMovesToStayInAPersonsView.zip",
        "url": "https://docs-assets.developer.apple.com/published/55e1c3199fc3/DisplayingA3DObjectThatMovesToStayInAPersonsView.zip"
      },
      "id": "visionos/displaying-a-3d-object-that-moves-to-stay-in-a-person's-view",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/displaying-a-3D-object-that-moves-to-stay-in-a-person's-view",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/displaying-a-3D-object-that-moves-to-stay-in-a-person%27s-view.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Displaying an entity that follows a person’s view"
    },
    {
      "abstract": "Build a stereoscopic image by applying textures to the left and right eye in a shader graph material.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/displaying-a-stereoscopic-image-in-visionos",
      "doc_url": "https://developer.apple.com/documentation/visionOS/displaying-a-stereoscopic-image-in-visionos",
      "download": {
        "filename": "DisplayingAStereoscopicImage.zip",
        "identifier": "b3242f7dab28/DisplayingAStereoscopicImage.zip",
        "url": "https://docs-assets.developer.apple.com/published/b3242f7dab28/DisplayingAStereoscopicImage.zip"
      },
      "id": "visionos/displaying-a-stereoscopic-image-in-visionos",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/displaying-a-stereoscopic-image-in-visionos",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/displaying-a-stereoscopic-image-in-visionos.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Displaying a stereoscopic image"
    },
    {
      "abstract": "Create styled text in a window using SwiftUI.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/displaying-text-in-visionOS",
      "doc_url": "https://developer.apple.com/documentation/visionOS/displaying-text-in-visionOS",
      "download": {
        "filename": "DisplayingTextInVisionOS.zip",
        "identifier": "5587970351ca/DisplayingTextInVisionOS.zip",
        "url": "https://docs-assets.developer.apple.com/published/5587970351ca/DisplayingTextInVisionOS.zip"
      },
      "id": "visionos/displaying-text-in-visionos",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/displaying-text-in-visionOS",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/displaying-text-in-visionOS.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Displaying text in visionOS"
    },
    {
      "abstract": "Show video from devices connected with the Developer Strap in your visionOS app.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/displaying-video-from-connected-devices",
      "doc_url": "https://developer.apple.com/documentation/visionOS/displaying-video-from-connected-devices",
      "download": {
        "filename": "DisplayingVideoFromConnectedDevices.zip",
        "identifier": "8f55dc525fb3/DisplayingVideoFromConnectedDevices.zip",
        "url": "https://docs-assets.developer.apple.com/published/8f55dc525fb3/DisplayingVideoFromConnectedDevices.zip"
      },
      "id": "visionos/displaying-video-from-connected-devices",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/displaying-video-from-connected-devices",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/displaying-video-from-connected-devices.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Displaying video from connected devices"
    },
    {
      "abstract": "Create a spatial stylus drawing experience that balances latency and accuracy for both in-air and on-surface drawing.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/drawing-in-the-air-and-on-surfaces-with-a-spatial-stylus",
      "doc_url": "https://developer.apple.com/documentation/visionOS/drawing-in-the-air-and-on-surfaces-with-a-spatial-stylus",
      "download": {
        "filename": "DrawingInTheAirAndOnSurfacesWithASpatialStylus.zip",
        "identifier": "54b370fde589/DrawingInTheAirAndOnSurfacesWithASpatialStylus.zip",
        "url": "https://docs-assets.developer.apple.com/published/54b370fde589/DrawingInTheAirAndOnSurfacesWithASpatialStylus.zip"
      },
      "id": "visionos/drawing-in-the-air-and-on-surfaces-with-a-spatial-stylus",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/drawing-in-the-air-and-on-surfaces-with-a-spatial-stylus",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/drawing-in-the-air-and-on-surfaces-with-a-spatial-stylus.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Drawing in the air and on surfaces with a spatial stylus"
    },
    {
      "abstract": "Keep controls visible throughout an immersive experience by displaying them in a window or a view attachment.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/embedding-controls-in-an-immersive-space",
      "doc_url": "https://developer.apple.com/documentation/visionOS/embedding-controls-in-an-immersive-space",
      "download": {
        "filename": "EmbeddingControlsInAnImmersiveSpace.zip",
        "identifier": "0e5ebb0287c5/EmbeddingControlsInAnImmersiveSpace.zip",
        "url": "https://docs-assets.developer.apple.com/published/0e5ebb0287c5/EmbeddingControlsInAnImmersiveSpace.zip"
      },
      "id": "visionos/embedding-controls-in-an-immersive-space",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/embedding-controls-in-an-immersive-space",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/embedding-controls-in-an-immersive-space.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Embedding controls in an immersive space"
    },
    {
      "abstract": "Create a more immersive experience by adding video reflections in a custom environment.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/enabling-video-reflections-in-an-immersive-environment",
      "doc_url": "https://developer.apple.com/documentation/visionOS/enabling-video-reflections-in-an-immersive-environment",
      "download": {
        "filename": "DestinationVideo.zip",
        "identifier": "3248dcf174b4/DestinationVideo.zip",
        "url": "https://docs-assets.developer.apple.com/published/3248dcf174b4/DestinationVideo.zip"
      },
      "id": "visionos/enabling-video-reflections-in-an-immersive-environment",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/enabling-video-reflections-in-an-immersive-environment",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/enabling-video-reflections-in-an-immersive-environment.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Enabling video reflections in an immersive environment"
    },
    {
      "abstract": "Find and track real-world objects in visionOS using reference objects you train with Create ML.",
      "categories": [
        "WWDC26",
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/exploring_object_tracking_with_arkit",
      "doc_url": "https://developer.apple.com/documentation/visionOS/exploring_object_tracking_with_arkit",
      "download": {
        "filename": "ExploringObjectTrackingWithARKit.zip",
        "identifier": "d76adf975589/ExploringObjectTrackingWithARKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/d76adf975589/ExploringObjectTrackingWithARKit.zip"
      },
      "id": "visionos/exploring_object_tracking_with_arkit",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/exploring_object_tracking_with_arkit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/exploring_object_tracking_with_arkit.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "visionOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Exploring object tracking with ARKit"
    },
    {
      "abstract": "Use the new Gaussian splat APIs available in RealityKit in visionOS 27.",
      "categories": [
        "WWDC26"
      ],
      "doc_path": "/documentation/visionOS/gaussian-splats-on-visionos",
      "doc_url": "https://developer.apple.com/documentation/visionOS/gaussian-splats-on-visionos",
      "download": {
        "filename": "GaussianSplatsOnVisionOS.zip",
        "identifier": "04b0c96b3e84/GaussianSplatsOnVisionOS.zip",
        "url": "https://docs-assets.developer.apple.com/published/04b0c96b3e84/GaussianSplatsOnVisionOS.zip"
      },
      "id": "visionos/gaussian-splats-on-visionos",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/gaussian-splats-on-visionos",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/gaussian-splats-on-visionos.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "visionOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Gaussian splats on visionOS"
    },
    {
      "abstract": "Display a 3D model that generates procedural textures in a reality view.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/generating-procedural-textures-in-visionos",
      "doc_url": "https://developer.apple.com/documentation/visionOS/generating-procedural-textures-in-visionos",
      "download": {
        "filename": "GeneratingProceduralTexturesInVisionOS.zip",
        "identifier": "d92ea601a132/GeneratingProceduralTexturesInVisionOS.zip",
        "url": "https://docs-assets.developer.apple.com/published/d92ea601a132/GeneratingProceduralTexturesInVisionOS.zip"
      },
      "id": "visionos/generating-procedural-textures-in-visionos",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/generating-procedural-textures-in-visionos",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/generating-procedural-textures-in-visionos.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Generating procedural textures"
    },
    {
      "abstract": "Track scene state across different window types.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/handling-the-window-life-cycle-with-multiple-scenes",
      "doc_url": "https://developer.apple.com/documentation/visionOS/handling-the-window-life-cycle-with-multiple-scenes",
      "download": {
        "filename": "HandlingTheWindowLifeCycleWithMultipleScenes.zip",
        "identifier": "0f79819fa112/HandlingTheWindowLifeCycleWithMultipleScenes.zip",
        "url": "https://docs-assets.developer.apple.com/published/0f79819fa112/HandlingTheWindowLifeCycleWithMultipleScenes.zip"
      },
      "id": "visionos/handling-the-window-life-cycle-with-multiple-scenes",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/handling-the-window-life-cycle-with-multiple-scenes",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/handling-the-window-life-cycle-with-multiple-scenes.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Handling the window life cycle with multiple scenes"
    },
    {
      "abstract": "Leverage a Full Space to create a fun game using ARKit.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/happybeam",
      "doc_url": "https://developer.apple.com/documentation/visionOS/happybeam",
      "download": {
        "filename": "HappyBeam.zip",
        "identifier": "2de9080abe63/HappyBeam.zip",
        "url": "https://docs-assets.developer.apple.com/published/2de9080abe63/HappyBeam.zip"
      },
      "id": "visionos/happybeam",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/happybeam",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/happybeam.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Happy Beam"
    },
    {
      "abstract": "Update the adjustable parameters of a 3D model in visionOS.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/implementing-adjustable-material-in-visionos",
      "doc_url": "https://developer.apple.com/documentation/visionOS/implementing-adjustable-material-in-visionos",
      "download": {
        "filename": "CreatingGlassMaterialFor3DShapesInVisionOS.zip",
        "identifier": "93452ff38109/CreatingGlassMaterialFor3DShapesInVisionOS.zip",
        "url": "https://docs-assets.developer.apple.com/published/93452ff38109/CreatingGlassMaterialFor3DShapesInVisionOS.zip"
      },
      "id": "visionos/implementing-adjustable-material-in-visionos",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/implementing-adjustable-material-in-visionos",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/implementing-adjustable-material-in-visionos.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Implementing adjustable material"
    },
    {
      "abstract": "Enable collaborative spatial experiences by using SharePlay to synchronize 3D content among participants.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/implementing-shareplay-for-immersive-spaces-in-visionos",
      "doc_url": "https://developer.apple.com/documentation/visionOS/implementing-shareplay-for-immersive-spaces-in-visionos",
      "download": {
        "filename": "ImplementingSharePlayForImmersiveSpacesInVisionOS.zip",
        "identifier": "e44eacecbf60/ImplementingSharePlayForImmersiveSpacesInVisionOS.zip",
        "url": "https://docs-assets.developer.apple.com/published/e44eacecbf60/ImplementingSharePlayForImmersiveSpacesInVisionOS.zip"
      },
      "id": "visionos/implementing-shareplay-for-immersive-spaces-in-visionos",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/implementing-shareplay-for-immersive-spaces-in-visionos",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/implementing-shareplay-for-immersive-spaces-in-visionos.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Implementing SharePlay for immersive spaces in visionOS"
    },
    {
      "abstract": "Create an immersive experience by making your app’s content respond to the local shape of the world.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/incorporating-real-world-surroundings-in-an-immersive-experience",
      "doc_url": "https://developer.apple.com/documentation/visionOS/incorporating-real-world-surroundings-in-an-immersive-experience",
      "download": {
        "filename": "SceneReconstructionExample.zip",
        "identifier": "04a6ee5b7e6f/SceneReconstructionExample.zip",
        "url": "https://docs-assets.developer.apple.com/published/04a6ee5b7e6f/SceneReconstructionExample.zip"
      },
      "id": "visionos/incorporating-real-world-surroundings-in-an-immersive-experience",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/incorporating-real-world-surroundings-in-an-immersive-experience",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/incorporating-real-world-surroundings-in-an-immersive-experience.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "1.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "15.1",
          "name": "Xcode"
        }
      ],
      "title": "Incorporating real-world surroundings in an immersive experience"
    },
    {
      "abstract": "Create engaging, hands-free experiences based on barcodes in a person’s surroundings.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/locating-and-decoding-barcodes-in-3d-space",
      "doc_url": "https://developer.apple.com/documentation/visionOS/locating-and-decoding-barcodes-in-3d-space",
      "download": {
        "filename": "LocatingAndDecodingBarcodesIn3DSpace.zip",
        "identifier": "58e0de4d2b6e/LocatingAndDecodingBarcodesIn3DSpace.zip",
        "url": "https://docs-assets.developer.apple.com/published/58e0de4d2b6e/LocatingAndDecodingBarcodesIn3DSpace.zip"
      },
      "id": "visionos/locating-and-decoding-barcodes-in-3d-space",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/locating-and-decoding-barcodes-in-3d-space",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/locating-and-decoding-barcodes-in-3d-space.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Locating and decoding barcodes in 3D space"
    },
    {
      "abstract": "Extend the capabilities of your app by using entities, components, and systems to maintain solid collisions when manipulating entities.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/manipulating-entities-with-solid-collisions",
      "doc_url": "https://developer.apple.com/documentation/visionOS/manipulating-entities-with-solid-collisions",
      "download": {
        "filename": "ManipulateWithSolidCollisions.zip",
        "identifier": "d35f1c75cbf5/ManipulateWithSolidCollisions.zip",
        "url": "https://docs-assets.developer.apple.com/published/d35f1c75cbf5/ManipulateWithSolidCollisions.zip"
      },
      "id": "visionos/manipulating-entities-with-solid-collisions",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/manipulating-entities-with-solid-collisions",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/manipulating-entities-with-solid-collisions.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Manipulating entities with solid collisions"
    },
    {
      "abstract": "Respond to changes in fit and field of view fidelity on Apple Vision Pro by using the Visual Fidelity API.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/monitoring-fit-and-field-of-view-fidelity",
      "doc_url": "https://developer.apple.com/documentation/visionOS/monitoring-fit-and-field-of-view-fidelity",
      "download": {
        "filename": "MonitoringVisualFidelityInRealTime.zip",
        "identifier": "21c29e2078dc/MonitoringVisualFidelityInRealTime.zip",
        "url": "https://docs-assets.developer.apple.com/published/21c29e2078dc/MonitoringVisualFidelityInRealTime.zip"
      },
      "id": "visionos/monitoring-fit-and-field-of-view-fidelity",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/monitoring-fit-and-field-of-view-fidelity",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/monitoring-fit-and-field-of-view-fidelity.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "visionOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Monitoring fit and field of view fidelity"
    },
    {
      "abstract": "Use object tracking in visionOS to attach digital content to real objects to create engaging experiences.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/object-tracking-with-reality-composer-pro-experiences",
      "doc_url": "https://developer.apple.com/documentation/visionOS/object-tracking-with-reality-composer-pro-experiences",
      "download": {
        "filename": "ObjectTrackingWithRealityComposerProExperiences.zip",
        "identifier": "b038d9dc3e39/ObjectTrackingWithRealityComposerProExperiences.zip",
        "url": "https://docs-assets.developer.apple.com/published/b038d9dc3e39/ObjectTrackingWithRealityComposerProExperiences.zip"
      },
      "id": "visionos/object-tracking-with-reality-composer-pro-experiences",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/object-tracking-with-reality-composer-pro-experiences",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/object-tracking-with-reality-composer-pro-experiences.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.2",
          "name": "Xcode"
        }
      ],
      "title": "Object tracking with Reality Composer Pro experiences"
    },
    {
      "abstract": "Increase the realism of an immersive experience by adding entities with invisible materials  real-world objects.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/obscuring-virtual-items-in-a-scene-behind-real-world-items",
      "doc_url": "https://developer.apple.com/documentation/visionOS/obscuring-virtual-items-in-a-scene-behind-real-world-items",
      "download": {
        "filename": "AllowingObjectsToInteractWithRealWorldObjects.zip",
        "identifier": "fdec7d3cd980/AllowingObjectsToInteractWithRealWorldObjects.zip",
        "url": "https://docs-assets.developer.apple.com/published/fdec7d3cd980/AllowingObjectsToInteractWithRealWorldObjects.zip"
      },
      "id": "visionos/obscuring-virtual-items-in-a-scene-behind-real-world-items",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/obscuring-virtual-items-in-a-scene-behind-real-world-items",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/obscuring-virtual-items-in-a-scene-behind-real-world-items.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Obscuring virtual items in a scene behind real-world items"
    },
    {
      "abstract": "Use the latest RealityKit APIs to create a beautiful video game for visionOS.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/petite-asteroids-building-a-volumetric-visionos-game",
      "doc_url": "https://developer.apple.com/documentation/visionOS/petite-asteroids-building-a-volumetric-visionos-game",
      "download": {
        "filename": "PetiteAsteroidsBuildingAVolumetricVisionOSGame.zip",
        "identifier": "e51148b749da/PetiteAsteroidsBuildingAVolumetricVisionOSGame.zip",
        "url": "https://docs-assets.developer.apple.com/published/e51148b749da/PetiteAsteroidsBuildingAVolumetricVisionOSGame.zip"
      },
      "id": "visionos/petite-asteroids-building-a-volumetric-visionos-game",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/petite-asteroids-building-a-volumetric-visionos-game",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/petite-asteroids-building-a-volumetric-visionos-game.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Petite Asteroids: Building a volumetric visionOS game"
    },
    {
      "abstract": "Detect horizontal surfaces like tables and floors, as well as vertical planes like walls and doors.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/placing-content-on-detected-planes",
      "doc_url": "https://developer.apple.com/documentation/visionOS/placing-content-on-detected-planes",
      "download": {
        "filename": "ObjectPlacementExample.zip",
        "identifier": "2a5e8413c520/ObjectPlacementExample.zip",
        "url": "https://docs-assets.developer.apple.com/published/2a5e8413c520/ObjectPlacementExample.zip"
      },
      "id": "visionos/placing-content-on-detected-planes",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/placing-content-on-detected-planes",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/placing-content-on-detected-planes.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Placing content on detected planes"
    },
    {
      "abstract": "Query and react to changes in the position and rotation of Apple Vision Pro.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/placing-entities-using-head-and-device-transform",
      "doc_url": "https://developer.apple.com/documentation/visionOS/placing-entities-using-head-and-device-transform",
      "download": {
        "filename": "PlacingEntitiesUsingHeadAndDeviceTransform.zip",
        "identifier": "87329c74e5cd/PlacingEntitiesUsingHeadAndDeviceTransform.zip",
        "url": "https://docs-assets.developer.apple.com/published/87329c74e5cd/PlacingEntitiesUsingHeadAndDeviceTransform.zip"
      },
      "id": "visionos/placing-entities-using-head-and-device-transform",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/placing-entities-using-head-and-device-transform",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/placing-entities-using-head-and-device-transform.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Placing entities using head and device transform"
    },
    {
      "abstract": "Create an immersive video playback experience with RealityKit.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/playing-immersive-media-with-realitykit",
      "doc_url": "https://developer.apple.com/documentation/visionOS/playing-immersive-media-with-realitykit",
      "download": {
        "filename": "PlayingImmersiveMediaWithRealityKit.zip",
        "identifier": "586cade12fe1/PlayingImmersiveMediaWithRealityKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/586cade12fe1/PlayingImmersiveMediaWithRealityKit.zip"
      },
      "id": "visionos/playing-immersive-media-with-realitykit",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/playing-immersive-media-with-realitykit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/playing-immersive-media-with-realitykit.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Playing immersive media with RealityKit"
    },
    {
      "abstract": "Create and adjust spatial audio in visionOS with RealityKit.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/playing-spatial-audio-in-visionos",
      "doc_url": "https://developer.apple.com/documentation/visionOS/playing-spatial-audio-in-visionos",
      "download": {
        "filename": "PlayingSpatialAudioInVisionOS.zip",
        "identifier": "d80280abbf97/PlayingSpatialAudioInVisionOS.zip",
        "url": "https://docs-assets.developer.apple.com/published/d80280abbf97/PlayingSpatialAudioInVisionOS.zip"
      },
      "id": "visionos/playing-spatial-audio-in-visionos",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/playing-spatial-audio-in-visionos",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/playing-spatial-audio-in-visionos.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Playing spatial audio"
    },
    {
      "abstract": "Use RealityKit to create an interactive ride in visionOS.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/swift-splash",
      "doc_url": "https://developer.apple.com/documentation/visionOS/swift-splash",
      "download": {
        "filename": "SwiftSplash.zip",
        "identifier": "ace0eae5beca/SwiftSplash.zip",
        "url": "https://docs-assets.developer.apple.com/published/ace0eae5beca/SwiftSplash.zip"
      },
      "id": "visionos/swift-splash",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/swift-splash",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/swift-splash.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Swift Splash"
    },
    {
      "abstract": "Use hand-tracking anchors to display a visual representation of hand transforms in visionOS.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/tracking-and-visualizing-hand-movement",
      "doc_url": "https://developer.apple.com/documentation/visionOS/tracking-and-visualizing-hand-movement",
      "download": {
        "filename": "TrackingAndVisualizingHandMovement.zip",
        "identifier": "86a01473ccc4/TrackingAndVisualizingHandMovement.zip",
        "url": "https://docs-assets.developer.apple.com/published/86a01473ccc4/TrackingAndVisualizingHandMovement.zip"
      },
      "id": "visionos/tracking-and-visualizing-hand-movement",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/tracking-and-visualizing-hand-movement",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/tracking-and-visualizing-hand-movement.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "2.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Tracking and visualizing hand movement"
    },
    {
      "abstract": "Retrieve the position and orientation of anchors your app stores in ARKit.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/tracking-points-in-world-space",
      "doc_url": "https://developer.apple.com/documentation/visionOS/tracking-points-in-world-space",
      "download": {
        "filename": "ObjectPlacementExample.zip",
        "identifier": "2a5e8413c520/ObjectPlacementExample.zip",
        "url": "https://docs-assets.developer.apple.com/published/2a5e8413c520/ObjectPlacementExample.zip"
      },
      "id": "visionos/tracking-points-in-world-space",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/tracking-points-in-world-space",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/tracking-points-in-world-space.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Tracking specific points in world space"
    },
    {
      "abstract": "Let people place digital replicas of a generic spatial accessory by tracking the accessory with ARKit.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/working-with-generic-spatial-accessories",
      "doc_url": "https://developer.apple.com/documentation/visionOS/working-with-generic-spatial-accessories",
      "download": {
        "filename": "WorkingWithGenericSpatialAccessories.zip",
        "identifier": "e5aa68cab375/WorkingWithGenericSpatialAccessories.zip",
        "url": "https://docs-assets.developer.apple.com/published/e5aa68cab375/WorkingWithGenericSpatialAccessories.zip"
      },
      "id": "visionos/working-with-generic-spatial-accessories",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/working-with-generic-spatial-accessories",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/working-with-generic-spatial-accessories.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ARKit",
        "technology-index:Sample Code Library",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "visionOS"
        },
        {
          "beta": true,
          "introduced_at": "27.0",
          "name": "Xcode"
        }
      ],
      "title": "Working with generic spatial accessories"
    },
    {
      "abstract": "Use windows, volumes, and immersive spaces to teach people about the Earth.",
      "categories": [
        "visionOS"
      ],
      "doc_path": "/documentation/visionOS/World",
      "doc_url": "https://developer.apple.com/documentation/visionOS/World",
      "download": {
        "filename": "HelloWorld.zip",
        "identifier": "eb5d7fb6e0b9/HelloWorld.zip",
        "url": "https://docs-assets.developer.apple.com/published/eb5d7fb6e0b9/HelloWorld.zip"
      },
      "id": "visionos/world",
      "identifier": "doc://com.apple.visionOS/documentation/visionOS/World",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/visionOS/World.json",
      "module": "visionOS",
      "modules": [
        "visionOS"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:RealityKit",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI",
        "technology-index:Updates",
        "technology-index:visionOS"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Hello World"
    },
    {
      "abstract": "Edit, build, and add example order packages to Wallet.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/WalletOrders/example-order-packages",
      "doc_url": "https://developer.apple.com/documentation/WalletOrders/example-order-packages",
      "download": {
        "filename": "ExampleOrderPackages.zip",
        "identifier": "c05448964db1/ExampleOrderPackages.zip",
        "url": "https://docs-assets.developer.apple.com/published/c05448964db1/ExampleOrderPackages.zip"
      },
      "id": "walletorders/example-order-packages",
      "identifier": "doc://com.apple.walletorders/documentation/WalletOrders/example-order-packages",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/WalletOrders/example-order-packages.json",
      "module": "Wallet Orders",
      "modules": [
        "Wallet Orders"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Wallet Orders"
      ],
      "platforms": [],
      "title": "Example Order Packages"
    },
    {
      "abstract": "Transfer data between a watchOS app and its companion iOS app.",
      "categories": [
        "Watch"
      ],
      "doc_path": "/documentation/WatchConnectivity/transferring-data-with-watch-connectivity",
      "doc_url": "https://developer.apple.com/documentation/WatchConnectivity/transferring-data-with-watch-connectivity",
      "download": {
        "filename": "TransferringDataWithWatchConnectivity.zip",
        "identifier": "50d45f3a1b60/TransferringDataWithWatchConnectivity.zip",
        "url": "https://docs-assets.developer.apple.com/published/50d45f3a1b60/TransferringDataWithWatchConnectivity.zip"
      },
      "id": "watchconnectivity/transferring-data-with-watch-connectivity",
      "identifier": "doc://com.apple.watchconnectivity/documentation/WatchConnectivity/transferring-data-with-watch-connectivity",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/WatchConnectivity/transferring-data-with-watch-connectivity.json",
      "module": "Watch Connectivity",
      "modules": [
        "Watch Connectivity"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Watch Connectivity"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "10.0",
          "name": "watchOS"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Transferring data with Watch Connectivity"
    },
    {
      "abstract": "Keep your complications up-to-date by reading values from a Bluetooth peripheral while your app is running in the background.",
      "categories": [
        "Watch"
      ],
      "doc_path": "/documentation/WatchKit/interacting-with-bluetooth-peripherals-during-background-app-refresh",
      "doc_url": "https://developer.apple.com/documentation/WatchKit/interacting-with-bluetooth-peripherals-during-background-app-refresh",
      "download": {
        "filename": "InteractingWithBluetoothPeripheralsDuringBackgroundAppRefresh.zip",
        "identifier": "33e82fd380ea/InteractingWithBluetoothPeripheralsDuringBackgroundAppRefresh.zip",
        "url": "https://docs-assets.developer.apple.com/published/33e82fd380ea/InteractingWithBluetoothPeripheralsDuringBackgroundAppRefresh.zip"
      },
      "id": "watchkit/interacting-with-bluetooth-peripherals-during-background-app-refresh",
      "identifier": "doc://com.apple.watchkit/documentation/WatchKit/interacting-with-bluetooth-peripherals-during-background-app-refresh",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/WatchKit/interacting-with-bluetooth-peripherals-during-background-app-refresh.json",
      "module": "WatchKit",
      "modules": [
        "WatchKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Updates",
        "technology-index:WatchKit",
        "technology-index:watchOS apps"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "8.0",
          "name": "watchOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "Interacting with Bluetooth peripherals during background app refresh"
    },
    {
      "abstract": "Create a watch app to manage and share a task list and visualize the status with a chart.",
      "categories": [
        "Watch"
      ],
      "doc_path": "/documentation/watchOS-Apps/building-a-productivity-app-for-apple-watch",
      "doc_url": "https://developer.apple.com/documentation/watchOS-Apps/building-a-productivity-app-for-apple-watch",
      "download": {
        "filename": "BuildingAProductivityAppForAppleWatch.zip",
        "identifier": "7a1c1627c8b1/BuildingAProductivityAppForAppleWatch.zip",
        "url": "https://docs-assets.developer.apple.com/published/7a1c1627c8b1/BuildingAProductivityAppForAppleWatch.zip"
      },
      "id": "watchos-apps/building-a-productivity-app-for-apple-watch",
      "identifier": "doc://com.apple.watchOS-Apps/documentation/watchOS-Apps/building-a-productivity-app-for-apple-watch",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/watchOS-Apps/building-a-productivity-app-for-apple-watch.json",
      "module": "watchOS-Apps",
      "modules": [
        "watchOS-Apps"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:watchOS apps"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "9.0",
          "name": "watchOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "Building a productivity app for Apple Watch"
    },
    {
      "abstract": "Learn how to make your watchOS app more accessible.",
      "categories": [
        "Watch"
      ],
      "doc_path": "/documentation/watchOS-Apps/create-accessible-experiences-for-watchos",
      "doc_url": "https://developer.apple.com/documentation/watchOS-Apps/create-accessible-experiences-for-watchos",
      "download": {
        "filename": "CreateAccessibleExperiencesForWatchOS.zip",
        "identifier": "478dc572b58e/CreateAccessibleExperiencesForWatchOS.zip",
        "url": "https://docs-assets.developer.apple.com/published/478dc572b58e/CreateAccessibleExperiencesForWatchOS.zip"
      },
      "id": "watchos-apps/create-accessible-experiences-for-watchos",
      "identifier": "doc://com.apple.watchOS-Apps/documentation/watchOS-Apps/create-accessible-experiences-for-watchos",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/watchOS-Apps/create-accessible-experiences-for-watchos.json",
      "module": "watchOS-Apps",
      "modules": [
        "watchOS-Apps"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:watchOS apps"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "8.0",
          "name": "watchOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Xcode"
        }
      ],
      "title": "Create accessible experiences for watchOS"
    },
    {
      "abstract": "Integrate SwiftUI elements and watch-specific features, and build widgets for the Smart Stack.",
      "categories": [
        "Watch"
      ],
      "doc_path": "/documentation/watchOS-Apps/updating-your-app-and-widgets-for-watchos-10",
      "doc_url": "https://developer.apple.com/documentation/watchOS-Apps/updating-your-app-and-widgets-for-watchos-10",
      "download": {
        "filename": "UpdatingYourAppAndWidgetsForWatchOS10.zip",
        "identifier": "bfbf1e340b52/UpdatingYourAppAndWidgetsForWatchOS10.zip",
        "url": "https://docs-assets.developer.apple.com/published/bfbf1e340b52/UpdatingYourAppAndWidgetsForWatchOS10.zip"
      },
      "id": "watchos-apps/updating-your-app-and-widgets-for-watchos-10",
      "identifier": "doc://com.apple.watchOS-Apps/documentation/watchOS-Apps/updating-your-app-and-widgets-for-watchos-10",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/watchOS-Apps/updating-your-app-and-widgets-for-watchos-10.json",
      "module": "watchOS-Apps",
      "modules": [
        "watchOS-Apps"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Updates",
        "technology-index:watchOS apps"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "17.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "10.0",
          "name": "watchOS"
        },
        {
          "beta": false,
          "introduced_at": "15.0",
          "name": "Xcode"
        }
      ],
      "title": "Updating your app and widgets for watchOS 10"
    },
    {
      "abstract": "Request and display weather data for destination airports in a flight-planning app.",
      "categories": [
        "App services"
      ],
      "doc_path": "/documentation/weatherkit/fetching_weather_forecasts_with_weatherkit",
      "doc_url": "https://developer.apple.com/documentation/weatherkit/fetching_weather_forecasts_with_weatherkit",
      "download": {
        "filename": "FetchingWeatherForecastsWithWeatherKit.zip",
        "identifier": "https://docs-assets.developer.apple.com/published/91e33be0a7/FetchingWeatherForecastsWithWeatherKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/91e33be0a7/FetchingWeatherForecastsWithWeatherKit.zip"
      },
      "id": "weatherkit/fetching_weather_forecasts_with_weatherkit",
      "identifier": "doc://com.apple.documentation/documentation/weatherkit/fetching_weather_forecasts_with_weatherkit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/weatherkit/fetching_weather_forecasts_with_weatherkit.json",
      "module": "WeatherKit",
      "modules": [
        "WeatherKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:WeatherKit"
      ],
      "platforms": [
        {
          "introduced_at": "16.0",
          "name": "iOS"
        },
        {
          "introduced_at": "16.0",
          "name": "iPadOS"
        },
        {
          "introduced_at": "14.0",
          "name": "Xcode"
        }
      ],
      "title": "Fetching weather forecasts with WeatherKit"
    },
    {
      "abstract": "Implement a browser on multiple platforms that loads content, manages navigation history, and saves favorite websites, using WebKit for SwiftUI.",
      "categories": [
        "WWDC26",
        "Web"
      ],
      "doc_path": "/documentation/WebKit/building-a-cross-platform-web-browser",
      "doc_url": "https://developer.apple.com/documentation/WebKit/building-a-cross-platform-web-browser",
      "download": {
        "filename": "BuildingACrossPlatformWebBrowser.zip",
        "identifier": "915b29ff84b0/BuildingACrossPlatformWebBrowser.zip",
        "url": "https://docs-assets.developer.apple.com/published/915b29ff84b0/BuildingACrossPlatformWebBrowser.zip"
      },
      "id": "webkit/building-a-cross-platform-web-browser",
      "identifier": "doc://com.apple.webkit/documentation/WebKit/building-a-cross-platform-web-browser",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/WebKit/building-a-cross-platform-web-browser.json",
      "module": "WebKit",
      "modules": [
        "WebKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:WebKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.4",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.4",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.4",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.4",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.4",
          "name": "visionOS"
        },
        {
          "beta": false,
          "introduced_at": "26.4",
          "name": "Xcode"
        }
      ],
      "title": "Building a cross-platform web browser"
    },
    {
      "abstract": "Implement a simple iPad web browser that can view either the desktop or mobile version of a website.",
      "categories": [
        "Web"
      ],
      "doc_path": "/documentation/WebKit/viewing-desktop-or-mobile-web-content-using-a-web-view",
      "doc_url": "https://developer.apple.com/documentation/WebKit/viewing-desktop-or-mobile-web-content-using-a-web-view",
      "download": {
        "filename": "ViewingDesktopOrMobileWebContentUsingAWebView.zip",
        "identifier": "b7ea913b4ac1/ViewingDesktopOrMobileWebContentUsingAWebView.zip",
        "url": "https://docs-assets.developer.apple.com/published/b7ea913b4ac1/ViewingDesktopOrMobileWebContentUsingAWebView.zip"
      },
      "id": "webkit/viewing-desktop-or-mobile-web-content-using-a-web-view",
      "identifier": "doc://com.apple.webkit/documentation/WebKit/viewing-desktop-or-mobile-web-content-using-a-web-view",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/WebKit/viewing-desktop-or-mobile-web-content-using-a-web-view.json",
      "module": "WebKit",
      "modules": [
        "WebKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:WebKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "13.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "Xcode"
        }
      ],
      "title": "Viewing Desktop or Mobile Web Content Using a Web View"
    },
    {
      "abstract": "Create widgets to show your app’s content on the Home screen, with custom intents for user-customizable settings.",
      "categories": [
        "Graphics"
      ],
      "doc_path": "/documentation/WidgetKit/building-widgets-using-widgetkit-and-swiftui",
      "doc_url": "https://developer.apple.com/documentation/WidgetKit/building-widgets-using-widgetkit-and-swiftui",
      "download": {
        "filename": "BuildingWidgetsUsingWidgetKitAndSwiftUI.zip",
        "identifier": "541ccfac5c8c/BuildingWidgetsUsingWidgetKitAndSwiftUI.zip",
        "url": "https://docs-assets.developer.apple.com/published/541ccfac5c8c/BuildingWidgetsUsingWidgetKitAndSwiftUI.zip"
      },
      "id": "widgetkit/building-widgets-using-widgetkit-and-swiftui",
      "identifier": "doc://com.apple.WidgetKit/documentation/WidgetKit/building-widgets-using-widgetkit-and-swiftui",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/WidgetKit/building-widgets-using-widgetkit-and-swiftui.json",
      "module": "WidgetKit",
      "modules": [
        "WidgetKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:SwiftUI",
        "technology-index:WidgetKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "14.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "13.2",
          "name": "Xcode"
        }
      ],
      "title": "Building Widgets Using WidgetKit and SwiftUI"
    },
    {
      "abstract": "Offer Live Activities, controls, animate data updates, and add interactivity to widgets.",
      "categories": [
        "Graphics"
      ],
      "doc_path": "/documentation/WidgetKit/emoji-rangers-supporting-live-activities-interactivity-and-animations",
      "doc_url": "https://developer.apple.com/documentation/WidgetKit/emoji-rangers-supporting-live-activities-interactivity-and-animations",
      "download": {
        "filename": "EmojiRangersSupportingLiveActivitiesInteractivityAndAnimations.zip",
        "identifier": "8b262812bc2d/EmojiRangersSupportingLiveActivitiesInteractivityAndAnimations.zip",
        "url": "https://docs-assets.developer.apple.com/published/8b262812bc2d/EmojiRangersSupportingLiveActivitiesInteractivityAndAnimations.zip"
      },
      "id": "widgetkit/emoji-rangers-supporting-live-activities-interactivity-and-animations",
      "identifier": "doc://com.apple.WidgetKit/documentation/WidgetKit/emoji-rangers-supporting-live-activities-interactivity-and-animations",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/WidgetKit/emoji-rangers-supporting-live-activities-interactivity-and-animations.json",
      "module": "WidgetKit",
      "modules": [
        "WidgetKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:ActivityKit",
        "technology-index:Sample Code Library",
        "technology-index:Updates",
        "technology-index:WidgetKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "11.0",
          "name": "watchOS"
        },
        {
          "beta": false,
          "introduced_at": "16.2",
          "name": "Xcode"
        }
      ],
      "title": "Emoji Rangers: Supporting Live Activities, interactivity, and animations"
    },
    {
      "abstract": "Communicate with nearby devices over a secure, high-throughput, low-latency connection by using Wi-Fi Aware.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/WiFiAware/Building-peer-to-peer-apps",
      "doc_url": "https://developer.apple.com/documentation/WiFiAware/Building-peer-to-peer-apps",
      "download": {
        "filename": "BuildingPeerToPeerApps.zip",
        "identifier": "2d3427f87ea1/BuildingPeerToPeerApps.zip",
        "url": "https://docs-assets.developer.apple.com/published/2d3427f87ea1/BuildingPeerToPeerApps.zip"
      },
      "id": "wifiaware/building-peer-to-peer-apps",
      "identifier": "doc://com.apple.wifiaware/documentation/WiFiAware/Building-peer-to-peer-apps",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/WiFiAware/Building-peer-to-peer-apps.json",
      "module": "Wi-Fi Aware",
      "modules": [
        "Wi-Fi Aware"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:DeviceDiscoveryUI",
        "technology-index:Sample Code Library",
        "technology-index:Updates",
        "technology-index:Wi-Fi Aware"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Building peer-to-peer apps"
    },
    {
      "abstract": "Use Wi-Fi Infrastructure to automatically share Wi-Fi network credentials after establishing a Bluetooth connection.",
      "categories": [
        "System"
      ],
      "doc_path": "/documentation/WiFiInfrastructure/Sharing-Wi-Fi-network-credentials",
      "doc_url": "https://developer.apple.com/documentation/WiFiInfrastructure/Sharing-Wi-Fi-network-credentials",
      "download": {
        "filename": "SharingWiFiNetworkCredentials.zip",
        "identifier": "506776157302/SharingWiFiNetworkCredentials.zip",
        "url": "https://docs-assets.developer.apple.com/published/506776157302/SharingWiFiNetworkCredentials.zip"
      },
      "id": "wifiinfrastructure/sharing-wi-fi-network-credentials",
      "identifier": "doc://com.apple.wifiinfrastructure/documentation/WiFiInfrastructure/Sharing-Wi-Fi-network-credentials",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/WiFiInfrastructure/Sharing-Wi-Fi-network-credentials.json",
      "module": "Wi-Fi Infrastructure",
      "modules": [
        "Wi-Fi Infrastructure"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Wi-Fi Infrastructure"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.2",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.2",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.2",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.2",
          "name": "Xcode"
        }
      ],
      "title": "Sharing Wi-Fi network credentials"
    },
    {
      "abstract": "Create, preview, and sync workouts for use in the Workout app on Apple Watch.",
      "categories": [
        "Watch"
      ],
      "doc_path": "/documentation/WorkoutKit/customizing-workouts-with-workoutkit",
      "doc_url": "https://developer.apple.com/documentation/WorkoutKit/customizing-workouts-with-workoutkit",
      "download": {
        "filename": "CustomizingWorkoutsWithWorkoutKit.zip",
        "identifier": "26f5bfb855ed/CustomizingWorkoutsWithWorkoutKit.zip",
        "url": "https://docs-assets.developer.apple.com/published/26f5bfb855ed/CustomizingWorkoutsWithWorkoutKit.zip"
      },
      "id": "workoutkit/customizing-workouts-with-workoutkit",
      "identifier": "doc://com.apple.workoutkit/documentation/WorkoutKit/customizing-workouts-with-workoutkit",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/WorkoutKit/customizing-workouts-with-workoutkit.json",
      "module": "WorkoutKit",
      "modules": [
        "WorkoutKit"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:WorkoutKit"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "16.0",
          "name": "Xcode"
        }
      ],
      "title": "Customizing workouts with WorkoutKit"
    },
    {
      "abstract": "Add auto layout constraints to your app to achieve localizable views.",
      "categories": [
        "Developer tools"
      ],
      "doc_path": "/documentation/Xcode/autosizing-views-for-localization-in-ios",
      "doc_url": "https://developer.apple.com/documentation/Xcode/autosizing-views-for-localization-in-ios",
      "download": {
        "filename": "AutosizingViewsForLocalizationInIOS.zip",
        "identifier": "344a90c0a885/AutosizingViewsForLocalizationInIOS.zip",
        "url": "https://docs-assets.developer.apple.com/published/344a90c0a885/AutosizingViewsForLocalizationInIOS.zip"
      },
      "id": "xcode/autosizing-views-for-localization-in-ios",
      "identifier": "doc://com.apple.Xcode/documentation/Xcode/autosizing-views-for-localization-in-ios",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Xcode/autosizing-views-for-localization-in-ios.json",
      "module": "Xcode",
      "modules": [
        "Xcode"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Mac Catalyst",
        "technology-index:Sample Code Library",
        "technology-index:Swift packages",
        "technology-index:UIKit",
        "technology-index:Xcode",
        "technology-index:Xcode Cloud"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Xcode"
        }
      ],
      "title": "Autosizing views for localization in iOS"
    },
    {
      "abstract": "Add alternate app icons to your app, and let people choose which icon to display.",
      "categories": [
        "Developer tools"
      ],
      "doc_path": "/documentation/Xcode/configuring-your-app-to-use-alternate-app-icons",
      "doc_url": "https://developer.apple.com/documentation/Xcode/configuring-your-app-to-use-alternate-app-icons",
      "download": {
        "filename": "ConfiguringYourAppToUseAlternateAppIcons.zip",
        "identifier": "1bbbd245213e/ConfiguringYourAppToUseAlternateAppIcons.zip",
        "url": "https://docs-assets.developer.apple.com/published/1bbbd245213e/ConfiguringYourAppToUseAlternateAppIcons.zip"
      },
      "id": "xcode/configuring-your-app-to-use-alternate-app-icons",
      "identifier": "doc://com.apple.Xcode/documentation/Xcode/configuring-your-app-to-use-alternate-app-icons",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Xcode/configuring-your-app-to-use-alternate-app-icons.json",
      "module": "Xcode",
      "modules": [
        "Xcode"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Swift packages",
        "technology-index:Xcode",
        "technology-index:Xcode Cloud"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "18.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Configuring your app to use alternate app icons"
    },
    {
      "abstract": "Create Custom Modelers with the CLIPS language and learn how the embedded rules engine works.",
      "categories": [
        "Developer tools"
      ],
      "doc_path": "/documentation/Xcode/creating-custom-modelers-for-intelligent-instruments",
      "doc_url": "https://developer.apple.com/documentation/Xcode/creating-custom-modelers-for-intelligent-instruments",
      "download": {
        "filename": "CreatingCustomModelersForIntelligentInstruments.zip",
        "identifier": "58a236c85443/CreatingCustomModelersForIntelligentInstruments.zip",
        "url": "https://docs-assets.developer.apple.com/published/58a236c85443/CreatingCustomModelersForIntelligentInstruments.zip"
      },
      "id": "xcode/creating-custom-modelers-for-intelligent-instruments",
      "identifier": "doc://com.apple.Xcode/documentation/Xcode/creating-custom-modelers-for-intelligent-instruments",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Xcode/creating-custom-modelers-for-intelligent-instruments.json",
      "module": "Xcode",
      "modules": [
        "Xcode"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Swift packages",
        "technology-index:Xcode",
        "technology-index:Xcode Cloud"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "12.2",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "12.2",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "12.2",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "14.2",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "15.1",
          "name": "Xcode"
        }
      ],
      "title": "Creating custom modelers for intelligent instruments"
    },
    {
      "abstract": "This project demonstrates localization-friendly auto layout constraints.",
      "categories": [
        "Developer tools"
      ],
      "doc_path": "/documentation/Xcode/localization-friendly-layouts-in-macos",
      "doc_url": "https://developer.apple.com/documentation/Xcode/localization-friendly-layouts-in-macos",
      "download": {
        "filename": "LocalizationFriendlyLayoutsInMacOS.zip",
        "identifier": "3db0b11a1ce3/LocalizationFriendlyLayoutsInMacOS.zip",
        "url": "https://docs-assets.developer.apple.com/published/3db0b11a1ce3/LocalizationFriendlyLayoutsInMacOS.zip"
      },
      "id": "xcode/localization-friendly-layouts-in-macos",
      "identifier": "doc://com.apple.Xcode/documentation/Xcode/localization-friendly-layouts-in-macos",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Xcode/localization-friendly-layouts-in-macos.json",
      "module": "Xcode",
      "modules": [
        "Xcode"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:AppKit",
        "technology-index:Sample Code Library",
        "technology-index:Swift packages",
        "technology-index:Xcode",
        "technology-index:Xcode Cloud"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "10.14",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "12.0",
          "name": "Xcode"
        }
      ],
      "title": "Localization-friendly layouts in macOS"
    },
    {
      "abstract": "Add localizations to the Landmarks sample code project.",
      "categories": [
        "Developer tools"
      ],
      "doc_path": "/documentation/Xcode/localizing-landmarks",
      "doc_url": "https://developer.apple.com/documentation/Xcode/localizing-landmarks",
      "download": {
        "filename": "LocalizingLandmarks.zip",
        "identifier": "fff31fd77d0b/LocalizingLandmarks.zip",
        "url": "https://docs-assets.developer.apple.com/published/fff31fd77d0b/LocalizingLandmarks.zip"
      },
      "id": "xcode/localizing-landmarks",
      "identifier": "doc://com.apple.Xcode/documentation/Xcode/localizing-landmarks",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Xcode/localizing-landmarks.json",
      "module": "Xcode",
      "modules": [
        "Xcode"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Swift packages",
        "technology-index:Xcode",
        "technology-index:Xcode Cloud"
      ],
      "platforms": [
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "iPadOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Mac Catalyst"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "macOS"
        },
        {
          "beta": false,
          "introduced_at": "26.0",
          "name": "Xcode"
        }
      ],
      "title": "Localizing Landmarks"
    },
    {
      "abstract": "Build DocC documentation for a Swift package that contains a DocC Catalog.",
      "categories": [
        "Developer tools"
      ],
      "doc_path": "/documentation/Xcode/slothcreator-building-docc-documentation-in-xcode",
      "doc_url": "https://developer.apple.com/documentation/Xcode/slothcreator-building-docc-documentation-in-xcode",
      "download": {
        "filename": "SlothCreatorBuildingDocCDocumentationInXcode.zip",
        "identifier": "f8c6b4c6c9eb/SlothCreatorBuildingDocCDocumentationInXcode.zip",
        "url": "https://docs-assets.developer.apple.com/published/f8c6b4c6c9eb/SlothCreatorBuildingDocCDocumentationInXcode.zip"
      },
      "id": "xcode/slothcreator-building-docc-documentation-in-xcode",
      "identifier": "doc://com.apple.Xcode/documentation/Xcode/slothcreator-building-docc-documentation-in-xcode",
      "json_url": "https://developer.apple.com/tutorials/data/documentation/Xcode/slothcreator-building-docc-documentation-in-xcode.json",
      "module": "Xcode",
      "modules": [
        "Xcode"
      ],
      "origins": [
        "sample-code-library",
        "technology-index:Sample Code Library",
        "technology-index:Swift packages",
        "technology-index:Xcode",
        "technology-index:Xcode Cloud"
      ],
      "platforms": [],
      "title": "SlothCreator: Building DocC documentation in Xcode"
    }
  ],
  "schema_version": 1,
  "scope": {
    "catalog_only": false,
    "limit_samples": null,
    "max_index_pages": 20000,
    "modules": []
  },
  "sources": {
    "asset_base_url": "https://docs-assets.developer.apple.com/published",
    "base_url": "https://developer.apple.com",
    "sample_code_library": "https://developer.apple.com/documentation/samplecode",
    "sample_code_library_json": "https://developer.apple.com/tutorials/data/documentation/samplecode.json",
    "technologies": "https://developer.apple.com/documentation/technologies",
    "technologies_json": "https://developer.apple.com/tutorials/data/documentation/technologies.json"
  }
}
