vatsal057/chrome-to-safari — explained in plain English
Analysis updated 2026-05-18
Convert a Chrome Web Store extension link directly into a signed Safari extension
Turn a local unpacked Chrome extension folder into a Safari app
Keep an unsigned extension enabled in Safari without re-approving it after every restart
Re-sign an extension when its free Apple certificate expires
| vatsal057/chrome-to-safari | dai-ski/lyra | lageev/focusmic | |
|---|---|---|---|
| Stars | 19 | 19 | 19 |
| Language | Swift | Swift | Swift |
| Setup difficulty | moderate | moderate | easy |
| Complexity | 3/5 | 2/5 | 2/5 |
| Audience | developer | general | general |
Figures from each repo's GitHub metadata at analysis time.
Requires the full Xcode app (not just Command Line Tools) and a one-time free Apple Development certificate.
chrome-to-safari is a macOS tool that turns a Chrome browser extension into a signed Safari extension, without needing a paid Apple Developer account. Safari can run Chrome style extensions, but unsigned ones get disabled every time Safari restarts, forcing you to re-enable them each time in the Develop menu. This tool fixes that by signing the extension with a free Apple ID, so once you turn it on in Safari it stays on for good. Getting started takes two steps. First you create a free signing certificate through Xcode by signing in with your Apple ID, no paid membership required. Then you either open the included app with a UI, where you can drop in an unpacked extension folder or paste a Chrome Web Store link and click Convert, or you use the command line version and point it at a folder or a store link directly. Behind the scenes the tool downloads the extension if you gave it a store link, reads its manifest file to figure out a name, converts it using Apple's own safari-web-extension-converter, fixes a known bug where the converter creates mismatched bundle identifiers, builds the project with Xcode's build tool using your free certificate, verifies the resulting signature, and installs the finished app into Applications before launching it and Safari together. It also cleans up the temporary build files it created unless you ask it to keep them. There are real limits worth knowing. A development signed app only works on the Mac that built it, so you cannot hand the finished app to someone else, they would need to run the script themselves. Not every Chrome extension feature exists in Safari, and the conversion step will warn about anything unsupported. Free certificates expire after about a year and need re-signing. The project requires macOS with the full Xcode app installed, not just the command line tools. It is released under the MIT license, and its own privacy policy states that nothing is collected or transmitted.
A macOS command line tool and app that converts Chrome extensions into Safari extensions signed with a free Apple ID, so they stay enabled permanently.
Mainly Swift. The stack also includes Swift, Xcode, xcodebuild.
MIT license: use, copy, modify, and distribute freely, provided as is with no warranty.
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.