Skip to content

Latest commit

 

History

History
149 lines (85 loc) · 6.21 KB

README.md

File metadata and controls

149 lines (85 loc) · 6.21 KB

Solidity by Ackee Blockchain Security

Discord Badge Visual Studio Marketplace Badge Follow on X Badge

Solidity for VS Code

Ethereum Solidity local node testing with security features for Visual Studio Code.

Develop, test, and secure Solidity smart contracts directly in Visual Studio Code with real-time security analysis, local node testing, and advanced debugging tools. Solidity (Wake) brings a Remix-like experience to your existing workflow with tools for compilation, deployment, and contract interaction on a local Ethereum network. Catch security risks early with built-in vulnerability detection, call graphs, and contract inheritance visualization without leaving VS Code.

This extension was built by a leading blockchain auditing firm that has worked with Lido, AAVE, Axelar, Safe, LayerZero, and more. It was developed for our professional needs and made open-source for a safer web3.

Benefits:

Test and interact with your smart contracts on an Ethereum local node

Compile and deploy contracts

Compile your contracts and deploy them on a local chain for testing

Compile and deploy contracts

Interact with contracts

Test your deployed contracts by interacting with them using function calls with different inputs

Interact with contracts

Fork mainnet or L2s to interact with onchain contracts

Forking chain and fetching contracts

Native support for proxy contracts

Proxy support

See vulnerabilities from static analysis in real-time

Free detections with leading security tool Wake

Catch potential issues early with real-time static analysis

Real-time detectors

Security Overview in the Sidebar

Get an overall overview of issues in your project

Security overview in the sidebar it

Compilation Errors

See compilation errors highlighted in code

Compilation errors

Best code navigation experience, call-graphs and more

Go to definition

Quickly navigate to any function or variable definition with a click

Go to definition

Find references

Right click to see a context menu, and use it to find all references

Find references

Document Links

Click and jump to linked files and resources

Document links

Hover

Use hover to see instant documentation in your code

Hover

Contract Outline

Navigate big projects with ease using the Contract Outline

Contract outline

Code Lens

Code Lens shows you relevant information like functions selectors and parameter references inside your code

Code Lens

Graphs

Visualise contract inheritance and function control flows with graphs

Graphs

Requirements

The Solidity extension uses the PyPi package eth-wake which requires Python 3.8 or higher. This package is automatically installed via conda by default.

Rosetta is required to be enabled on Apple Silicon Macs.

Credits

juanfranblanco/vscode-solidity: a base of our Solidity grammar

joaompinto/vscode-graphviz: a base of our Graphviz integration

Feedback, help and news

Enjoy the extension? Consider giving it a review!

Get help and give feedback in our Discord

Follow Ackee on Twitter

Known Issues

  • Go to references, number of references and other features do not work correctly with no workspace open

It is always recommended to open a project as a folder (File -> Open folder). Open file should only be used when opening a single file or several files inside the same folder.

  • Analysis does not work when the workspace contains compilation errors

The extension relies on the solc compiler. For this reason, files containing compilation errors and files importing these files cannot be analyzed.