dufoli / Salesforce-Inspector-Advanced

Chrome extension to add a metadata layout on top of the standard Salesforce UI to improve the productivity and joy of Salesforce configuration, development, and integration.
https://chromewebstore.google.com/detail/salesforce-inspector-adva/dbfimaflmomgldabcphgolbeoamjogji
MIT License
11 stars 2 forks source link
apex chrome-extension salesforce

Salesforce inspector advanced

GitHub release Chrome Web Store Installs Chrome Web Store Rating GitHub stars GitHub contributors PRs Welcome

Chrome and Firefox extension to add a metadata layout on top of the standard Salesforce UI to improve the productivity and joy of Salesforce configuration, development, and integration work.

We all know and love Salesforce Inspector: As the great Søren Krabbe did not have the time to maintain it anymore. Thomas Prouvot decided to take over and fork the original project but I do not share the same vision of him.

My goal are :

So I decided to fork on a new project in a more collaborative way.

The goal of this project is to focus on improving key features for administrator: export, import and inspect. Then add new features to make life easier and avoid API call. In order to rich this goal, I have take a closer look to the full backlog of original project and from collegues, friends who work on salesforce but I need feedback from community.

Roadmap

[!IMPORTANT] Roadmap is here : https://github.com/dufoli/Salesforce-Inspector-Advanced/issues/5

Documentation

[!NOTE] User guide for using the extension.

view - Documentation

New features compared to SF Inspector Reloaded

Security and Privacy

The Salesforce Inspector browser extension/plugin communicates directly between the user's web browser and the Salesforce servers. No data is sent to other parties and no data is persisted outside of Salesforce servers after the user leaves the Salesforce Inspector pages. The Inspector communicates via the official Salesforce webservice APIs on behalf of the currently logged in user. This means the Inspector will be capable of accessing nothing but the data and features the user has been granted access to in Salesforce.

All Salesforce API calls from the Inspector re-uses the access token/session used by the browser to access Salesforce. To acquire this access token the Salesforce Inspector requires permission to read browser cookie information for Salesforce domains.

To validate the accuracy of this description, inspect the source code, monitor the network traffic in your browser or take my word.

Use Salesforce Inspector with a Connected App

Follow steps described in how-to documentation. Note: you must complete these steps to use the extension in orgs where "API Access Control" is enabled.

Installation

Browser Stores

Local Installation

  1. Download or clone the repo.
  2. Checkout the master branch.
  3. Open chrome://extensions/.
  4. Enable Developer mode.
  5. Click Load unpacked.
  6. Select the addon subdirectory of this repository.

Troubleshooting

Contributions

Contributions are welcome!

To submit a PR, please create a branch from master branch. This branch will be taged when the new version is published on web store.

Make sure to update CHANGES.md file by describing the improvement / bugfix you realised.

In order to make sure everyone who reads documentation is aware of your improvement, you can update the 'how-to' page to document / expose this new functionality.

Linting : to assure indentation, formatting and best practices coherence, please install ESLint extension.

Development

  1. Install Node.js with npm
  2. npm install

Chrome

  1. npm run chrome-dev-build
  2. Open chrome://extensions/.
  3. Enable Developer mode.
  4. Click Load unpacked.
  5. Select the addon subdirectory of this repository.

Firefox

  1. npm run firefox-dev-build
  2. In Firefox, open about:debugging.
  3. Click Load Temporary Add-on….
  4. Select the file addon/manifest.json.

Unit tests

  1. Set up an org (e.g. a Developer Edition) and apply the following customizations:
    1. Everything described in metadata in test/. Push to org with sf deploy metadata -d test/ -o [your-test-org-alias] or legacy sfdx force:source:deploy -p test/ -u [your-test-org-alias].
    2. Make sure your user language is set to English.
    3. Ensure Allow users to relate a contact to multiple accounts is enabled (Setup → Account Settings).
    4. Ensure the org has no namespace prefix (Setup → Package Manager).
    5. Assign Permission Set SfInspector to your user.
  2. Navigate to one of the extension pages and replace the file name with test-framework.html, for example chrome-extension://example/test-framework.html?host=example.my.salesforce.com.
  3. Wait until "Salesforce Inspector unit test finished successfully" is shown.
  4. If the test fails, open your browser's developer tools console to see error messages.

Linting

  1. npm run eslint

Design Principles

(we don't live up to all of them. pull requests welcome)

About

By Olivier Dufour forked from Thomas Prouvot who forked from Søren Krabbe and Jesper Kristensen


Olivier Dufour

github linkedin

Guillaume Dufour

github linkedin

License

MIT