Home

Awesome

<img width="200" alt="get in touch with Consensys Diligence" src="https://user-images.githubusercontent.com/2865694/56826101-91dcf380-685b-11e9-937c-af49c2510aa0.png"><br/> <sup> [ 🌐 📩 🔥 ] </sup><br/><br/>

Solidity Visual Developer

An extension that supports developers in writing secure and well understood code

This extension contributes security centric syntax and semantic highlighting, a detailed class outline, specialized views, advanced Solidity code insights and augmentation to Visual Studio Code.


⚠️ Note: Customize this extension to fit your needs! Show/Hide/Enable/Disable features in Preference → Settings → Solidity Visual Developer: solidity-va.*, select one of the customized security-aware color themes in Preferences → Color Themes.

We ❤ feedback → get in touch!


Marketplace: ext tintinweb.solidity-visual-auditor


<img width="1364" alt="theme_light_vs" src="https://user-images.githubusercontent.com/2865694/61187576-6b1ca500-a673-11e9-8770-ff8b47d716ee.png">

vscode-solidity-auditor-interactive-graph

<img width="1024" alt="visual-auditor-new" src="https://user-images.githubusercontent.com/2865694/55153942-f9682c00-5153-11e9-9e88-b3958c134c88.png"> <img width="733" alt="vscode-solidity-auditor-uml" src="https://user-images.githubusercontent.com/2865694/64823226-2bacff00-d5b7-11e9-99e0-6790921a9f20.png">

Features

Semantic highlighting and solidity insights for passive security awareness. Most features are configurable (preferences -> Settings -> Solidity Visual Developer)

Themes (preferences -> Color Theme):

dark_small light_small solarized_small

Syntax Highlighting

Code fragments passively draw your attention to statements that typically <span style="color:#c5f015">reduce risk #c5f015</span> or <span style="color:#f03c15">need your attention #f03c15</span>.

Semantic Highlighting
Review Features
Graph- and Reporting Features
Code Augmentation
Views

Installation

Method 1: Install by going to Visual Studio Market Place and click Install.

Method 2: Bring up the Extension view in VS Code and search for Solidity Visual Developer and click Install

Method 3 (Manual):

  1. Download the latest compiled extension as *.vsix
  2. Fire up Terminal and install the extension by running code --install-extension "solidity-visual-auditor-0.0.x.vsix"
  3. vscode --> preferences --> color scheme --> Solidity Visual Developer Dark

Tour

Scroll down and take the tour.

visual_auditor_new

<details> <summary style='font-size:14pt'><b>Feature:</b> Ethereum Account Address Actions</summary>

Ethereum Account Address Actions

<img width="360" alt="image" src="https://user-images.githubusercontent.com/2865694/85524701-af951c80-b608-11ea-803c-c2587e7732b7.gif"> </details> <details> <summary style='font-size:14pt'><b>Feature:</b> Semantic function argument highlighting</summary>

Semantic function argument highlighting

<img width="722" alt="semantic-arg-dark" src="https://user-images.githubusercontent.com/2865694/55149233-1bf54780-514a-11e9-827e-d0816a9c2ac8.png"> <img width="722" alt="semantic-arg-light" src="https://user-images.githubusercontent.com/2865694/55149264-257eaf80-514a-11e9-8779-8cdd60b9ab22.png"> </details> <details> <summary style='font-size:14pt'><b>Feature:</b> Inline Bookmarks</summary>

Inline Bookmarks: @audit tags

This feature is provided by Inline Bookmarks.

<img width="722" alt="audit-tags" src="https://user-images.githubusercontent.com/2865694/55152445-b3f62f80-5150-11e9-85df-de84023467c0.png"> </details> <details> <summary style='font-size:14pt'><b>Feature:</b> Code Augmentation / Annotations / Hover / Tooltip</summary>

Code Augmentation / Annotations / Hover / Tooltip

<img width="722" alt="code_token_hover" src="https://user-images.githubusercontent.com/2865694/53698880-c34cbc00-3de2-11e9-8356-7fd5427f8469.png"> <img width="713" alt="code_asm_tooltip" src="https://user-images.githubusercontent.com/2865694/53698881-c34cbc00-3de2-11e9-97ae-3b7145430c27.png"> <img width="360" alt="image" src="https://user-images.githubusercontent.com/2865694/86650152-bd707780-bfe2-11ea-819d-a9e3dacb2034.gif"> </details> <details> <summary style='font-size:14pt'><b>Feature:</b> State Variable Highlighting</summary>

State Variable Highlighting

<img width="624" alt="code_statevar" src="https://user-images.githubusercontent.com/2865694/53698888-cfd11480-3de2-11e9-8308-a05fdace95f2.png"> <img width="767" alt="code_shadowed" src="https://user-images.githubusercontent.com/2865694/53698885-cf387e00-3de2-11e9-9e69-5fb26cd7a3a0.png"> <img width="756" alt="code_const" src="https://user-images.githubusercontent.com/2865694/53698886-cf387e00-3de2-11e9-9de6-0ce116e86d20.png"> <img width="624" alt="code_inherited" src="https://user-images.githubusercontent.com/2865694/53698887-cfd11480-3de2-11e9-8374-a022b4fdaa33.png"> </details> <details> <summary style='font-size:14pt'><b>Feature:</b> CodeLenses</summary>

CodeLenses

vscode-solidity-auditor-interactive-graph

vscode-auditor-surya-report

vscode-auditor-unittest

vscode-auditor-ftrace

<img width="733" alt="vscode-solidity-auditor-uml" src="https://user-images.githubusercontent.com/2865694/64823226-2bacff00-d5b7-11e9-99e0-6790921a9f20.png"> <img width="360" alt="sva_light_vscode" src="https://user-images.githubusercontent.com/2865694/64822139-a3c5f580-d5b4-11e9-8ecd-6554f79265d8.png"> </details> <details> <summary style='font-size:14pt'><b>Feature:</b> Outline View</summary>

Outline View

<img width="360" alt="outline_lib" src="https://user-images.githubusercontent.com/2865694/53698893-d1024180-3de2-11e9-8c93-a1ee0076a992.png"> <img width="360" alt="outline_class_event" src="https://user-images.githubusercontent.com/2865694/53698892-d1024180-3de2-11e9-89d0-300a1c57376e.png"> <img width="360" alt="outline_class_2" src="https://user-images.githubusercontent.com/2865694/53698891-d069ab00-3de2-11e9-8155-5f5aa568852c.png"> <img width="360" alt="outline_inherit" src="https://user-images.githubusercontent.com/2865694/53698890-d069ab00-3de2-11e9-8dde-fb524794d1df.png"> <img width="360" alt="outline_extra" src="https://user-images.githubusercontent.com/2865694/53698889-d069ab00-3de2-11e9-88bd-65598a39140c.png"> </details> <details> <summary style='font-size:14pt'><b>Feature:</b> Cockpit View</summary>

Cockpit View

We've been working on a new cockpit view that allows you to navigate large codebases more efficiently. Check out the new  <img width="32" alt="sidebar-logo" src="https://user-images.githubusercontent.com/2865694/78054647-acc8b980-7382-11ea-9542-ee8bcfaae175.png">  icon in the activity bar to your left.

So, what can you do with it?

And there is more to come 🙌 stay tuned!

Note: The cockpit view is fully customizable. You can hide both the sidebar menu or any view in the cockpit that you do not need (right-click → hide).

</details> <details> <summary style='font-size:14pt'><b>BuiltIn:</b> Commands</summary>

Commands

Please refer to the extension's contribution section to show an up-to-date list of commands.

</details> <details> <summary style='font-size:14pt'><b>Theme:</b> Solidity Visual Developer Light (VSCode)</summary>

Theme: Solidity Visual Developer Light (VSCode)

<img width="1364" alt="theme_light_vs" src="https://user-images.githubusercontent.com/2865694/61187576-6b1ca500-a673-11e9-8770-ff8b47d716ee.png"> </details> <details> <summary style='font-size:14pt'><b>Theme:</b> Solidity Visual Developer Dark</summary>

Theme: Solidity Visual Developer Dark

Simple DAO

<img width="981" alt="screenshot 2019-02-09 at 12 30 30" src="https://user-images.githubusercontent.com/2865694/52521879-58deab00-2c7e-11e9-9621-1afc73c918d8.png">

Vulnerable Contract

highlight

</details> <details> <summary style='font-size:14pt'><b>Theme:</b> Solidity Visual Developer Solarized Light</summary>

Theme: Solidity Visual Developer Solarized Light

Simple DAO

<img width="970" alt="screenshot 2019-02-11 at 21 52 11" src="https://user-images.githubusercontent.com/2865694/52592696-5c715e00-2e47-11e9-99f4-32332e308ec3.png"> </details> <details> <summary style='font-size:14pt'><b>Configuration:</b> Settings & Customizations</summary>

Extension Settings

Please refer to the extension's contribution section to show an up-to-date list of settings.

</details>

FAQ

Known Issues

Acknowledgements

Release Notes

Changelog

<!-- vsce package vsce publish -->