<!--
{
  "availability" : [
    "iOS: 27.0.0 -",
    "macOS: 27.0.0 -",
    "iPadOS: 27.0.0 -",
    "visionOS: 27.0.0 -",
    "Xcode: 27.0.0 -"
  ],
  "documentType" : "article",
  "framework" : "SafariServices",
  "identifier" : "/documentation/SafariServices/building-and-testing-a-safari-web-extension",
  "metadataVersion" : "0.1.0",
  "role" : "sampleCode",
  "title" : "Building and testing a Safari web extension"
}
-->

# Building and testing a Safari web extension

Get started with Safari web extensions by creating one from the ground up, using any code editor.

## Overview

> Note: This sample code project is associated with WWDC26 session 216: [Create web extensions for Safari](https://developer.apple.com/videos/play/wwdc2026/216).

### Configure the sample code project without Xcode

1. In Safari, choose Safari > Settings.
2. Click the Advanced tab and select the “Show features for web developers” checkbox.
3. Click the Developer tab.
4. Click the Add Temporary Extension button.
5. Browse to the sample code project’s `Resources` folder and click Select.

### Configure the sample code project with Xcode

1. Perform steps 1–3 from “Configure the sample code project without Xcode” above.
2. Select the “Allow unsigned extensions” checkbox.
3. In Xcode, select the Shiny OnTrack target.
4. Click the Signing & Capabilities tab.
5. For the Signing Certificate option, choose Sign to Run Locally. (Leave Team set to None.)
6. Select the Shiny OnTrack Extension target, and repeat steps 4 and 5.

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)