Lightweight Smart Contract IDE
Comprehensive intuitive integrated development environment tailored for load smart contract from various blockchain and repositories
Solide is an open-source Solidity Integrated Development Environment (IDE) and Knowledge Hub designed to empower developers, educators, and blockchain enthusiasts in their journey of smart contract development and exploration. This repository serves as the home for the Solide IDE.
Solide tries distinguishes itself from similar online IDEs, notably the Remix IDE from Ethereum, by positioning itself as more than just a IDE tool. While both Solide and Remix serve as online IDEs, Solide takes a unique approach by prioritizing accessible learning and fostering an interactive environment for both developers and non-developers interested in smart contract exploration. Solide is designed to be lightweight and seamlessly integratable, offering flexibility in deployment across various environments, tutorials, and demonstrations. The innovative aspect of Solide lies in its expertise in creating an interactive learning environment from any Github Repository or various chains. By embedding the IDE in any web-based application, Solide consolidates educational content and tutorials within the development environment, enhancing the learning journey. However, Solide goes beyond having IDE functionalities, rather also a dedicated space for blockchain and protocols. As Solide continues to expand and grow its collection of smart contracts, it maintains its commitment to being a unique and comprehensive solution that stands out in the realm of online IDEs.
- EVM Programming: See the EVM Programming documentation for more information.
To experience Solide, visit our Doc. You can also check out the Solide IDE and Knowledge Hub at solide-dapp.vercel.app.
Explore these contract hubs and interactive demos:
- Chainlink Token on Ethereum
- Aave Pool on Ethereum
- Aave Pool Source on GitHub
- TokenPaymaster.sol from @account-abstraction/contracts
- Aspect IDE
To run Solide locally, follow these steps:
First, clone the Solide repository to your local machine using Git:
git clone https://github.com/solide-project/solide
Navigate into the cloned repository directory and install the required npm packages:
cd solide
npm install
Next, install the support smart contracts for loading smart contract dependencies and remappings:
cd public/_contracts
npm install --legacy-peer-deps
npm run start
Create a .env.local
file in the root directory of the project and use the following template to fill in the required variables:
ETHERSCAN_API_KEY=
POLYSCAN_API_KEY=
OPTIMISTICSCAN_API_KEY=
FTMSCAN_API_KEY=
ARBISCAN_API_KEY=
NOVAARBISCAN_API_KEY=
BSCSCAN_API_KEY=
BASESCAN_API_KEY=
LINEASCAN_API_KEY=
MOONBEAM_API_KEY=
MOONRIVER_API_KEY=
CELOSCAN_API_KEY=
GNOSISSCAN_API_KEY=
CRONOSSCAN_API_KEY=
SCROLLSCAN_API_KEY=
BTTCSCAN_API_KEY=
WEMIXSCAN_API_KEY=
BLASTSCAN_API_KEY=
FRAXSCAN_API_KEY=
ZKEVM_POLYSCAN_API_KEY=
UNICHAIN_API_KEY=
GITHUB_API_KEY=
SIGNER_WALLET=
TRON_WALLET=
- Explorers API Keys: Fill in the respective API keys for explorers like Etherscan, Polyscan, etc., which are required for loading contracts on selected chains.
- Github API Key: Optional but necessary when the rate limit for GitHub API requests is reached
- Solidity DB Service: To use this service, request a TRON address to be added to the Solidity Registry and set
TRON_WALLET
as the private key to store smart contract information. Email solide-project@proton.me for the request.
After configuring the environment variables, start the Solide IDE:
npm start
This command will launch the Solide IDE in your default web browser.
We welcome contributions from the community to enhance Solide further. If you have suggestions, bug reports, or want to contribute code, please follow our Contribution Guidelines.
Join the Solide community for discussions, support, and collaboration. Visit our Discord channel (Coming Soon) to connect with fellow developers and enthusiasts.
Solide is released under the MIT License. Feel free to use, modify, and distribute Solide for your projects.
Note: Solide is a community-driven project aimed at fostering openness, collaboration, and innovation in the blockchain development domain. Your feedback and contributions are highly valued. Let's build the future of smart contract development together!
Support us by starring this Repository and following us on X! 😊