mirror of
https://github.com/YouG-o/YouTube-No-Translation.git
synced 2026-04-25 01:56:01 +03:00
[PR #28] [MERGED] Safari compatibility #118
Labels
No labels
ToDo
bug
enhancement
enhancement
help wanted
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/YouTube-No-Translation#118
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/YouG-o/YouTube-No-Translation/pull/28
Author: @Seva41
Created: 5/25/2025
Status: ✅ Merged
Merged: 5/26/2025
Merged by: @YouG-o
Base:
main← Head:main📝 Commits (5)
3851d37Feat: Basic port for Safari on macOSdff7781Fix: Missing resources from build9533abaRemoved user-specific files and updated manifest for Safari4b1f228Merge pull request #1 from Seva41/safari-extension38e4574Fix: Changed header to AGPL v3.0 license on Swift code📊 Changes
58 files changed (+7169 additions, -0 deletions)
View changed files
📝
.gitignore(+8 -0)➕
manifest.safari.json(+57 -0)➕
safari-extension/YouTube No Translation/YouTube No Translation Extension/Info.plist(+13 -0)➕
safari-extension/YouTube No Translation/YouTube No Translation Extension/Resources/assets/icons/Github-Dark.svg(+4 -0)➕
safari-extension/YouTube No Translation/YouTube No Translation Extension/Resources/assets/icons/icon.png(+0 -0)➕
safari-extension/YouTube No Translation/YouTube No Translation Extension/Resources/assets/icons/ko-fi.png(+0 -0)➕
safari-extension/YouTube No Translation/YouTube No Translation Extension/Resources/assets/images/before-after.jpg(+0 -0)➕
safari-extension/YouTube No Translation/YouTube No Translation Extension/Resources/assets/images/chrome.png(+0 -0)➕
safari-extension/YouTube No Translation/YouTube No Translation Extension/Resources/assets/images/firefox.png(+0 -0)➕
safari-extension/YouTube No Translation/YouTube No Translation Extension/Resources/assets/images/icon.png(+0 -0)➕
safari-extension/YouTube No Translation/YouTube No Translation Extension/Resources/dist/assets/icons/Github-Dark.svg(+4 -0)➕
safari-extension/YouTube No Translation/YouTube No Translation Extension/Resources/dist/assets/icons/icon.png(+0 -0)➕
safari-extension/YouTube No Translation/YouTube No Translation Extension/Resources/dist/assets/icons/ko-fi.png(+0 -0)➕
safari-extension/YouTube No Translation/YouTube No Translation Extension/Resources/dist/background/background.js(+47 -0)➕
safari-extension/YouTube No Translation/YouTube No Translation Extension/Resources/dist/browser-polyfill.js(+1225 -0)➕
safari-extension/YouTube No Translation/YouTube No Translation Extension/Resources/dist/content/content.js(+2169 -0)➕
safari-extension/YouTube No Translation/YouTube No Translation Extension/Resources/dist/content/scripts/audioScript.js(+169 -0)➕
safari-extension/YouTube No Translation/YouTube No Translation Extension/Resources/dist/content/scripts/channelNameScript.js(+84 -0)➕
safari-extension/YouTube No Translation/YouTube No Translation Extension/Resources/dist/content/scripts/descriptionScript.js(+66 -0)➕
safari-extension/YouTube No Translation/YouTube No Translation Extension/Resources/dist/content/scripts/mainTitleScript.js(+87 -0)...and 38 more files
📄 Description
Hey there! Loved your project, so i took a try to port it to Safari on macOS, since i use that browser and there is no alternative yet on the AppStore.
This pull request introduces a Safari web extension for "YouTube No Translation," enabling compatibility with Safari while maintaining functionality for other browsers. The changes include the addition of necessary configuration files, platform-specific resources, and implementation of the extension's core logic. The port was made using the
safari-web-extension-converterutility from Xcode 16.3.Core Functionality and Resources:
SafariWebExtensionHandler.swiftto handle native messages between the browser and the extension (safari-extension/YouTube No Translation/YouTube No Translation Extension/SafariWebExtensionHandler.swift).Main.htmlfor the extension's settings page, including dynamic messages about the extension's state (safari-extension/YouTube No Translation/YouTube No Translation/Resources/Base.lproj/Main.html).Visual and Asset Updates:
AppIcon.appiconsetand other visual assets for macOS, including icons of various sizes (safari-extension/YouTube No Translation/YouTube No Translation/Assets.xcassets/AppIcon.appiconset/Contents.json).AccentColor.colorsetandLargeIcon.imagesetfor UI customization (safari-extension/YouTube No Translation/YouTube No Translation/Assets.xcassets/AccentColor.colorset/Contents.json,safari-extension/YouTube No Translation/YouTube No Translation/Assets.xcassets/LargeIcon.imageset/Contents.json). [1] [2]These changes ensure the extension is fully functional and visually integrated with Safari while preserving its cross-browser compatibility.
Build and Distribution
In order to build for Safari (macOS), the Xcode project (
YouTube No Translation.xcodeproj) should be opened on a macOS device and built from there, attaching the extension to Safari locally. A simple app opens automatically, then inSafari>Settings>Extensionsshould appear YouTube No Translation ready to enable. If it's not there, verify the check onSafari>Settings>Developer>Allow unsigned extensions.The extension was tested on Safari 18.5, using macOS Sequoia 15.5 and worked perfectly.
To build and distribute the extension via the macOS AppStore, an Apple Developer Account (USD$100/year) is required.
iOS/iPadOS Support
Using this same port method, the extension should be also compatible with Safari on iOS and iPadOS. However, this requires to remove Persistent Background Pages as is not supported on these platforms. That change is NOT included in this PR.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.