{"id":13555908,"url":"https://github.com/mozilla/valence","last_synced_at":"2025-04-03T09:30:33.033Z","repository":{"id":17179881,"uuid":"19947242","full_name":"mozilla/valence","owner":"mozilla","description":"INACTIVE - http://mzl.la/ghe-archive - Firefox Developer Tools protocol adapters (Unmaintained)","archived":true,"fork":false,"pushed_at":"2019-03-29T15:36:11.000Z","size":17036,"stargazers_count":376,"open_issues_count":0,"forks_count":66,"subscribers_count":50,"default_branch":"master","last_synced_at":"2024-10-30T00:43:58.911Z","etag":null,"topics":["inactive","unmaintained"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mozilla.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2014-05-19T15:29:42.000Z","updated_at":"2024-10-25T10:16:01.000Z","dependencies_parsed_at":"2022-09-11T02:22:47.623Z","dependency_job_id":null,"html_url":"https://github.com/mozilla/valence","commit_stats":null,"previous_names":[],"tags_count":19,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mozilla%2Fvalence","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mozilla%2Fvalence/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mozilla%2Fvalence/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mozilla%2Fvalence/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mozilla","download_url":"https://codeload.github.com/mozilla/valence/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246975987,"owners_count":20862997,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["inactive","unmaintained"],"created_at":"2024-08-01T12:03:29.850Z","updated_at":"2025-04-03T09:30:30.736Z","avatar_url":"https://github.com/mozilla.png","language":"JavaScript","funding_links":[],"categories":["JavaScript","others"],"sub_categories":[],"readme":"This project is no longer maintained\n====================================\n\nMozilla no longer maintains this project.  Cross-browser remote debugging is still a priority.  To enable browser/device agnostic inspection and debugging, we intend to make our tools be directly compatible with the Chrome DevTools Protocol.\n\n---\n\nValence\n=======\n\nValence is a Firefox add-on that is installed by default with Firefox Developer Edition. It is a remote debugging protocol adapter that allows you to debug Chrome and Safari (desktop and mobile) from Firefox, using WebIDE.\n\nDocumentation on how to use WebIDE and Valence is available on the [Mozilla Developer Network](https://developer.mozilla.org/en-US/docs/Tools/Valence).\n\nHow to Interact With The Thing\n------------------------------\n\nThere are three ways to interact with this tool right now: WebIDE, some Developer Toolbar commands, or a toolbar button.\n\nWebIDE is the main tool for debugging remote devices and this add-on provides additional runtime options in the Custom section for Chrome and iOS. You can learn more about WebIDE in the [Mozilla Developer Network](https://developer.mozilla.org/docs/Tools/WebIDE).\n\nIf you prefer interacting with a command-line tool, use the commands `chrome`, `android` and `ios` from the Developer Toolbar. These should automatically launch a browser for you and connect appropriately - assuming you've met the installation requirements below.\n\nFor a quick setup when working on the add-on itself, it will add a (weirdly ambiguous) new icon to your browser, once you set the pref `extensions.fxdevtools-adapters@mozilla.org.enableToolbarButton` to `true`. You can toggle its value from `about:config`, or by adding it in a JSON file with preference overrides that you provide to jpm via the `--prefs` option (check out `jpm --help` for the right syntax). When you click it, it will attempt to connect the Firefox DevTools to whatever is on port 9222. For example, if you start an instance of Chrome Canary on port 9222 (use flag `--remote-debugging-port=9222`), it will try and connect to that.\n\n\nInstallation for All Y'all\n------------------\n\nBefore you can build and run the extension, here are a few things you'll need to do:\n\n1. `git clone git@github.com:mozilla/valence.git`\n\n2. Make sure you have an updated copy of Firefox Nightly installed. If you need to install Nightly, you can get it [here](https://nightly.mozilla.org/).\n\n3. Make sure you have node (and subsequently npm) installed. Instructions for that are [here](http://nodejs.org/download/).\n\n4. Install jpm with `npm install -g jpm`. jpm is a node utility for developing browser add-ons.\n\nThen from your extension folder you can use `jpm run -v`, with the`-b` option to use your recent Firefox Nightly, to run a new Firefox process with the extension installed.\n\nNow that you've done that, you can follow the instructions below for each applicable debug target/browser.\n\nFor more detailed building instructions and instructions for building the ios-webkit-debug-proxy binaries, see [building.html](data/building.html).\n\n\nDebugging Chrome on Desktop\n-----------------\n\nClicking the button on the Firefox toolbar will connect to the debug target on port 9222.  To debug Chrome on Desktop, the process must have remote debugging enabled and set to this port.\n\nThe important flag is `--remote-debugging-port=9222`.  There is a page with information on how to [run the Chrome process with these flags](http://www.chromium.org/developers/how-tos/run-chromium-with-flags).\n\nThere are some other flags that can be helpful if you'd like to run this alongside another Chrome profile.  By running with `--no-first-run`, `--no-default-browser-check`, and `--user-data-dir` you can run this process alongside another Chrome profile.\n\nFor example, on OSX, you could run the following command to start a debuggable copy of Chrome:\n\n    \u003e /Applications/Google\\ Chrome.app/Contents/MacOS/Google\\ Chrome --remote-debugging-port=9222 --no-first-run --no-default-browser-check --user-data-dir=$(mktemp -d -t 'chrome-remote_data_dir')\n\nIf you click on the toolbar button and nothing happens, you most likely don't have anything running on port 9222.  Check the [Browser Console](https://developer.mozilla.org/docs/Tools/Browser_Console) to see what has gone wrong.\n\nDebugging Chrome on Android\n-----------------\n\nIn addition to the installation instructions, follow [these instructions](https://developer.chrome.com/devtools/docs/remote-debugging-legacy) to turn on remote debugging and set up adb.\n\nDebugging Safari, Firefox, and other WebViews on iOS\n-------------\n\nIn addition to the installation instructions, you will need to enable developer support on your device. Follow the instructions on [this page](https://developer.apple.com/library/mac/documentation/AppleApplications/Conceptual/Safari_Developer_Guide/GettingStarted/GettingStarted.html) (in the \"To enable Web Inspector on iOS\" section) to get started.  Note: you can also use the iOS simulator if you have Xcode installed.\n\nDebugging Safari, Firefox, and other WebViews on iOS is possible through the use of the following open source libraries that come bundled with this extension:\n\n1. [ios_webkit_debug_proxy](https://github.com/google/ios-webkit-debug-proxy) version 1.4 on both OS X and Linux\n2. [libimobiledevice](https://github.com/libimobiledevice/libimobiledevice) version 1.1.5 on OS X, 1.2.0pre on Linux\n3. [libplist](https://github.com/libimobiledevice/libplist) version 1.10 on OS X, 1.12pre on Linux\n4. [libusbmuxd](https://github.com/libimobiledevice/libusbmuxd) version 1.0.8 on OS X, 1.0.0pre on Linux\n\nOn Windows we are using the [ios-webkit-debug-proxy](https://github.com/google/ios-webkit-debug-proxy) port at commit 20679aaa990b82e7fb43e434e271cce17e327f90. An additional runtime requirement on Windows is to have iTunes installed, or at least the Apple Mobile Device Support and Apple Application Support applications that come with it.\n\nWhy did you start this project?\n-------------------------------\n\nWe realized that debugging individual browsers in their respective vendor silos is painful, frustrating, and at times downright demoralizing. We wanted to make better tools so that web developers are relieved of this anguish (as much as possible). You should test this thing as it becomes more stable, and let us know how we can make the cross-platform debugging experience better.\n\nNotes\n-----\n\nNote that this project should be treated as _ALPHA_ software - implementation is far from finished.\n\nThe UI for interacting with this project will change soon - the commands will likely stick around but the ambiguous button in your browser will probably not. Eventually there will even be nicer buttons than any of this. Dare to dream.\n\nIf you notice that the install or usage instructions should be different, please help us by sending a PR for this README. This project is changing fast and so information here may be out of date.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmozilla%2Fvalence","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmozilla%2Fvalence","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmozilla%2Fvalence/lists"}