-
Notifications
You must be signed in to change notification settings - Fork 4
Open
Labels
enhancementNew feature or requestNew feature or requesthacktoberfesthelp wantedExtra attention is neededExtra attention is neededquestionFurther information is requestedFurther information is requested
Description
Description
Currently, Contract Forge relies on external tools like ResVault and ResContract for deploying and executing smart contracts on ResilientDB. We want to build our own integrated deployment and execution engine directly within Contract Forge, eliminating the need for external dependencies and providing a seamless end-to-end experience.
Current Workflow
Right now, users must:
- Generate contracts in Contract Forge
- Download the generated Solidity and JSON files
- Use ResVault browser extension to connect to ResilientDB mainnet
- Manually upload and deploy contracts through ResVault
- Use ResContract for contract execution and interaction
Proposed Solution
Build a native deployment engine that:
- Connects directly to ResilientDB networks (mainnet, testnet, local)
- Handles contract compilation and deployment
- Provides contract interaction interface
- Manages wallet connections and transactions
- Offers real-time deployment status and logs
- Includes contract management dashboard
Technical Requirements
- Files to create:
src/services/deploymentEngine.ts,src/components/DeploymentInterface.tsx,src/services/walletManager.ts - Files to modify:
src/services/Chatbot.tsx,src/App.tsx - Skills needed: Advanced TypeScript, ResilientDB API, Blockchain Integration, Web3, Transaction Management
- Difficulty: Advanced
Key Features to Implement
- Direct ResilientDB network connectivity
- Wallet connection and management
- Contract compilation service
- Deployment transaction handling
- Contract interaction interface
- Transaction history and logs
- Network switching (mainnet/testnet/local)
- Gas estimation and optimization
- Error handling and rollback mechanisms
Technical Challenges
- Understanding ResilientDB's contract deployment API
- Managing wallet connections securely
- Handling transaction states and confirmations
- Implementing proper error handling for blockchain operations
- Building a user-friendly interface for complex blockchain operations
Getting Started
- Fork the repository
- Create a feature branch:
git checkout -b feature/deployment-engine - Research ResilientDB deployment APIs and documentation
- Design the deployment engine architecture
- Implement core deployment functionality
- Build the user interface components
- Test with different contract types and networks
- Submit a pull request
Resources
Important Note
This is a complex feature that requires deep understanding of ResilientDB's architecture and blockchain deployment processes. If you're interested in contributing to this feature, please reach out for discussion and collaboration.
Contact: bpsanand@ucdavis.edu
Labels
enhancement advanced hacktoberfest help wanted
Metadata
Metadata
Assignees
Labels
enhancementNew feature or requestNew feature or requesthacktoberfesthelp wantedExtra attention is neededExtra attention is neededquestionFurther information is requestedFurther information is requested