devtools icon indicating copy to clipboard operation
devtools copied to clipboard

Support for Safari Browser

Open rafmjr opened this issue 4 years ago • 46 comments

What problem does this feature solve?

When developing vue applications on remote servers is not always possible to connect with the ngrok tunnel as proposed on the README for the standalone electron app. It is also very inconvenient having to install ngrok and the electron shell just to be able to debug the application.

I believe extensions provide a better user experience as they are directly integrated in the web browser and do not require configuration on the projects or developers machines.

What does the proposed API look like?

Unfortunately I don't have experience developing safari extensions but I'm willing to spend time helping on the development of this feature and learning how to do it if the idea is supported.

rafmjr avatar Jan 04 '20 02:01 rafmjr

Safari 14 supports a new range of JavaScript APIs, along with a new Web Extension app extension type for Safari. This is supposed to make porting existing Chrome and Firefox extensions much easier. It also offers some conversion tools.

The biggest drawback that as they remained App Extensions, they are distributed through the AppStore in the same way previous ones, but with support for JS APIs that are used by Firefox and Chrome extensions.

zoltan-magyar avatar Jun 29 '20 23:06 zoltan-magyar

Suggestion: Create a link to easily add funding to this issue on Issue Hunt.

Once a link is generated for Issue Hunt and people start adding some funding, I'm sure some developer will pick it up in no time!!

mesqueeb avatar Jan 07 '21 05:01 mesqueeb

@mesqueeb I forked this repo, created an issue and added some funding.

https://issuehunt.io/r/rafmjr/vue-devtools/issues/1

rafmjr avatar Jan 07 '21 15:01 rafmjr

Just doubled the existing fund. Let's make this happen— it would be instrumental to my development workflow!

tjkohli avatar Jan 17 '21 15:01 tjkohli

I'm not sure any one can claim the funds if it's funded on a fork. Technically I think the PR closing the issue should then be a PR towards that fork?

There's already over 100 USD on that forked git issue, so would be sad to see it go to vain.

I hope someone of the official Dev team can look into this git issue situation.

mesqueeb avatar Jan 17 '21 22:01 mesqueeb

@mesqueeb I was planning of doing just that. If somebody submits a PR to close the issue, I would then submit a PR to this repository and close the one on the fork once it has been merged here.

However, I do admit it is a little bit awkward and if a maintainer of this repository would create an issue in Issue Hunt, I would close it in favor of that one. I'm open to suggestions for a better solution.

rafmjr avatar Jan 18 '21 00:01 rafmjr

@rafmjr I noticed that v4.1.4 and earlier versions support safari browser, but End safari support from https://github.com/vuejs/vue-devtools/pull/644.

Maybe we should figure out whether the vue team has plans to support the safari browser again.

@Akryum Could you please help answer this question?

ygj6 avatar Feb 05 '21 02:02 ygj6

Did anyone try the CLI converter?

Convert your existing extension to a Safari web extension using Xcode’s command-line tool. https://developer.apple.com/documentation/safariservices/safari_web_extensions/converting_a_web_extension_for_safari

varna avatar Apr 07 '21 08:04 varna

Any updates?

reisnobre avatar Apr 20 '21 16:04 reisnobre

I'm considering adding the devtools to more browsers after 6.0 is released.

Akryum avatar Apr 25 '21 10:04 Akryum

Safari 15 add support to Web Inspector Extention ,Please support Safari

raffeyang avatar Sep 25 '21 07:09 raffeyang

Hi there! Any updates?

theartkod avatar Jan 11 '22 11:01 theartkod

Sadly nope, they claim that the stand alone app should be enough, but for my use case it doesn't work at all... I really would like to have the option to use safari.

Atm I'm just using chrome for running the project and safari for everything else.

reisnobre avatar Jan 11 '22 11:01 reisnobre

I'm considering adding the devtools to more browsers after 6.0 is released.

Have you finish consideration? :) Its almost a year :)

nezaboravi avatar Jan 28 '22 08:01 nezaboravi

I'm considering adding the devtools to more browsers after 6.0 is released.

Have you finish consideration? :) Its almost a year :)

It seems that version 6.0 is still in beta.

trubelik avatar Jan 28 '22 19:01 trubelik

New API: https://developer.apple.com/videos/play/wwdc2022/10100/

iBobik avatar Jun 10 '22 07:06 iBobik

While PR on review you can try my fork. Here is already builded extension app and short guide for manual building. https://github.com/kidaww/devtools/releases/tag/v6.2.0-safari

Works with Safari Technology Preview (Safari 16.0). Manual build possible with Xcode 14 beta 3

vad1ym avatar Jul 07 '22 17:07 vad1ym

Testing right now. I'll keep using it. I was using chrome just for development because of the lack of support. Thanks @kidaww

reisnobre avatar Jul 07 '22 18:07 reisnobre

Testing right now. I'll keep using it. I was using chrome just for development because of the lack of support.

same here

nezaboravi avatar Jul 16 '22 06:07 nezaboravi

Few days using it seems, working well. Just first start was unsure - after enabling I had to close devtools and reload page in correct order.

iBobik avatar Jul 16 '22 10:07 iBobik

@kidaww Here, i need to reenable Allow Unsigned Extensions everytime i turn off safari

nezaboravi avatar Jul 17 '22 03:07 nezaboravi

@kidaww Here, i need to reenable Allow Unsigned Extensions everytime i turn off safari

Hi, you can build the extension with self-signing (personal team). Look the instruction by the link above, bottom section, I've updated it recently.

vad1ym avatar Jul 17 '22 07:07 vad1ym

After page reload Vue devtools usually end in disconnected state. Close and open devtools works. Safari Technology Preview Release 150.

Snímek obrazovky 2022-08-07 v 13 55 02

iBobik avatar Aug 07 '22 11:08 iBobik

Just copy vue dev tools from chrome extension and convert it to mac.

Works fine in safari 16.0

https://developer.apple.com/documentation/safariservices/safari_web_extensions/converting_a_web_extension_for_safari

do4Mother avatar Nov 30 '22 07:11 do4Mother

Just copy vue dev tools from chrome extension and convert it to mac.

Works fine in safari 16.0

https://developer.apple.com/documentation/safariservices/safari_web_extensions/converting_a_web_extension_for_safari

Would be great if you tell us where to find vue dev tools from chrome extension

nezaboravi avatar Jan 15 '23 06:01 nezaboravi

I will try to describe in more detail method provided by do4Mother

  1. Download .zip Chrome extension in any way (e.x. with the extension https://chrome.google.com/webstore/detail/crx-extractordownloader/ajkhmmldknmfjnmeedkbkkojgobmljda)

  2. Unarchive a zip and run command xcrun safari-web-extension-converter ~/Downloads/Vue-js-devtools --macos-only --project-location ~/Documents/VueSafari

Where ~/Downloads/Vue-js-devtools is path to the unarchived FOLDER (not zip file) Where ~/Documents/VueSafari is path to store generated xcode project And --macos-only flag creates project without iOS target, that will be a bit easier to config

  1. After running the command you get new xcode project. It will be opened after creating.

  2. Setup your personal team for both targets. You can skip it, but then you have to click 'Allow unsigned extension' each time you run Safari. telegram-cloud-photo-size-2-5445324658342739567-y

  3. Click Run button or click Product>Run. After build and app start - click 'Quit and open Safari setting' and you see activated Vue Devtools Extension. If you don't - maybe you didn't setup personal team for build from step 4. Try to click Develop>Allow unsigned extensions in the Safari and extension must appear.

vad1ym avatar Feb 18 '23 23:02 vad1ym

@kidaww that worked like a charm! Signed it so that I don't need to always "Allow unsigned extensions"

nickkadutskyi avatar Feb 23 '23 01:02 nickkadutskyi

Thank you for step by step guide and explaining how to download extension

However, i am getting this: xcrun safari-web-extension-converter ~/Downloads/Vue-js-devtools.crx --macos-only --project-location ~/Documents/VueSafari Unable to parse manifest.json at file:///Users/codingwisely/Downloads/Vue-js-devtools.crx

same happens with Vue-js-devtools.zip file

Any suggestions?

nezaboravi avatar Feb 27 '23 14:02 nezaboravi

@nezaboravi I think you downloaded the wrong format of extension. In my cases I downloaded zip archive, then unarchived it and then ran xcrun on that folder. My command was:

xcrun safari-web-extension-converter ~/Downloads/Vue-js-devtools --macos-only --project-location ~/Documents/VueSafari

nickkadutskyi avatar Feb 27 '23 15:02 nickkadutskyi

@nezaboravi I think you downloaded the wrong format of extension. In my cases I downloaded zip archive, then unarchived it and then ran xcrun on that folder. My command was:

xcrun safari-web-extension-converter ~/Downloads/Vue-js-devtools --macos-only --project-location ~/Documents/VueSafari

i actyually tried both of them image

nezaboravi avatar Feb 27 '23 16:02 nezaboravi