https://github.com/apache/incubator-resilientdb-resvault
ResVault is a chrome extension that serves as a wallet for ResilientDB.
https://github.com/apache/incubator-resilientdb-resvault
blockchain blockchain-wallet chrome extension extension-chrome wallet
Last synced: 8 months ago
JSON representation
ResVault is a chrome extension that serves as a wallet for ResilientDB.
- Host: GitHub
- URL: https://github.com/apache/incubator-resilientdb-resvault
- Owner: apache
- License: apache-2.0
- Created: 2023-01-24T10:36:49.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-11-29T08:01:17.000Z (over 1 year ago)
- Last Synced: 2025-01-30T10:06:04.948Z (over 1 year ago)
- Topics: blockchain, blockchain-wallet, chrome, extension, extension-chrome, wallet
- Language: JavaScript
- Homepage: https://resilientdb.com
- Size: 4.01 MB
- Stars: 4
- Watchers: 11
- Forks: 5
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
#
## About
ResVault is a Chrome extension that serves as a comprehensive wallet for [ResilientDB](https://resilientdb.com). ResilientDB is a High Throughput Yielding Permissioned Blockchain Fabric founded by [ExpoLab](https://expolab.org/) at [UC Davis](https://www.ucdavis.edu/) in 2018. ResilientDB advocates a system-centric design by adopting a multi-threaded architecture that encompasses deep pipelines. Further, ResilientDB separates the ordering of client transactions from their execution, which allows it to process messages out-of-order.
## Features
### Core Wallet Functionality
- **Create Account** - Generate new wallet accounts with secure key management
- **Delete Account** - Remove accounts with proper cleanup
- **Login/Logout** - Secure authentication system
- **Submit Transactions** - Send transactions to ResilientDB network
- **Transaction Logging** - Complete transaction history and audit trail
- **User Profiles** - Manage multiple user identities
- **Multi-account Support** - Handle multiple wallet accounts simultaneously
### Smart Contract Integration (v1.2.0)
- **Contract Deployment** - Deploy Solidity smart contracts directly from the wallet
- **Address Ownership** - Contracts are deployed using your wallet address for proper ownership
- **GraphQL Integration** - Seamless communication with ResilientDB smart contract service
- **Solidity Compilation** - Automatic compilation of Solidity contracts before deployment
- **Enhanced Error Handling** - Improved debugging and error reporting for contract operations
- **Network Flexibility** - Connect to mainnet or your local ResilientDB server
### Security & Performance
- **Secure Key Management** - Ed25519 key pairs with proper encryption
- **Transaction Validation** - Built-in validation for all operations
- **Network Connectivity** - Support for custom ResilientDB network endpoints
- **Real-time Updates** - Live transaction status and balance updates
**Pending Features**:
- [ ] Password improvement
- [ ] Transaction details view
- [ ] View all transactions
- [ ] Contract execution and interaction
- [ ] Contract interaction history
- [ ] Gas estimation and optimization
## Installation
### Via GitHub release
Open [chrome://extensions/](chrome://extensions/) in Google Chrome, toggle Developer mode on:
- Click on Load unpacked
- Select the build folder that you downloaded from the GitHub releases.
### Via Chrome Web Store
**🎉 Now Available on Chrome Web Store!**
[](https://chromewebstore.google.com/detail/resvault/ejlihnefafcgfajaomeeogdhdhhajamf)
**[Install ResVault from Chrome Web Store](https://chromewebstore.google.com/detail/resvault/ejlihnefafcgfajaomeeogdhdhhajamf)**
## Build
**NodeJS is required.**
Open `terminal` and execute:
```shell
git clone https://github.com/ResilientApp/ResVault.git
cd ResVault
npm install
npm run build
```
## Smart Contract Usage
### Deploying Contracts
1. Navigate to the **Contract** tab in ResVault
2. Enter your ResilientDB server URL:
- **Mainnet**: Use the production ResilientDB endpoint
- **Local Development**: Use your local server (e.g., `http://localhost:8400`)
- **Custom Server**: Use any ResilientDB instance (e.g., `http://your-server:8400`)
3. Paste your Solidity contract code
4. Provide constructor arguments if needed
5. Click **Deploy** - the contract will be deployed using your wallet address
## Example Usage
#### Demo Video
Coming Soon
## Links
- [Website](https://resilientdb.com)
- [Chrome Web Store](https://chromewebstore.google.com/detail/resvault/ejlihnefafcgfajaomeeogdhdhhajamf) - Install ResVault
- [GitHub Repository](https://github.com/ResilientApp/ResVault) - Source Code
## Contributing
Before creating an issue, please ensure that it hasn't already been reported/suggested.
The issue tracker is only for bug reports and enhancement suggestions. If you have a question, please reach out to [apratim@expolab.org](apratim@expolab.org) instead of opening an issue – you will get redirected there anyway.
If you wish to contribute to the ResVault codebase or documentation, feel free to fork the repository and submit a pull request.
## Help
If you don't understand something in the documentation, you are experiencing problems, or you just need a gentle
nudge in the right direction, please don't hesitate to reach out to [apratim@expolab.org](apratim@expolab.org).
