Solidity is statically typed, supports inheritance, libraries and complex user-defined types among other features.
As you will see, it is possible to create contracts for voting, crowdfunding, blind auctions, multi-signature wallets and more.
The best way to try out Solidity right now is using the Browser-Based Compiler (it can take a while to load, please be patient).
Available Solidity Integrations¶
- Browser-Based Compiler
Browser-based IDE with integrated compiler and Solidity runtime environment without server-side components.
- Ethereum Studio
Specialized web IDE that also provides shell access to a complete Ethereum environment.
- Visual Studio Extension
Solidity plugin for Microsoft Visual Studio that includes the Solidity compiler.
- Package for SublimeText — Solidity language syntax
Solidity syntax highlighting for SublimeText editor.
- Atom Ethereum interface
Plugin for the Atom editor that features syntax highlighting, compilation and a runtime environment (requires backend node).
- Atom Solidity Linter
Plugin for the Atom editor that provides Solidity linting.
- Visual Studio Code extension
Solidity plugin for Microsoft Visual Studio Code that includes syntax highlighting and the Solidity compiler.
- Emacs Solidity
Plugin for the Emacs editor providing syntax highlighting and compilation error reporting.
- Vim Solidity
Plugin for the Vim editor providing syntax highlighting.
- Vim Syntastic
Plugin for the Vim editor providing compile checking.
- Mix IDE
Qt based IDE for designing, debugging and testing solidity smart contracts.
Package and deployment manager for Solidity.
- Solidity REPL
Try Solidity instantly with a command-line Solidity console.
Visualize Solidity control flow and highlight potential security vulnerabilities.
EVM Disassembler that performs static analysis on the bytecode to provide a higher level of abstraction than raw EVM operations.
Third-Party Solidity Parsers and Grammars¶
The last and most extensive section will cover all aspects of Solidity in depth.
See also Russian version (русский перевод).
- Introduction to Smart Contracts
- Installing Solidity
- Solidity by Example
- Solidity in Depth
- Security Considerations
- Style Guide
- Common Patterns
- Frequently Asked Questions